Commit 24d41a1
Changed files (9)
build/3rd-party-licenses
@@ -70,7 +70,7 @@ glob-parent@5.1.2
gulpjs/glob-parent
ISC
-globby@15.0.0
+globby@16.0.0
Sindre Sorhus <sindresorhus@gmail.com>
sindresorhus/globby
MIT
@@ -85,6 +85,11 @@ is-glob@4.0.3
micromatch/is-glob
MIT
+is-path-inside@4.0.0
+ Sindre Sorhus <sindresorhus@gmail.com>
+ sindresorhus/is-path-inside
+ MIT
+
isexe@3.1.1
Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)
https://github.com/isaacs/isexe
@@ -115,11 +120,6 @@ node-fetch-native@1.6.7
unjs/node-fetch-native
MIT
-path-type@6.0.0
- Sindre Sorhus <sindresorhus@gmail.com>
- sindresorhus/path-type
- MIT
-
picomatch@2.3.1
Jon Schlinkert (https://github.com/jonschlinkert)
micromatch/picomatch
@@ -135,12 +135,12 @@ to-regex-range@5.0.1
micromatch/to-regex-range
MIT
-unicorn-magic@0.3.0
+unicorn-magic@0.4.0
Sindre Sorhus <sindresorhus@gmail.com>
sindresorhus/unicorn-magic
MIT
-which@5.0.0
+which@6.0.0
GitHub Inc.
git+https://github.com/npm/node-which.git
ISC
build/index.cjs
@@ -61,10 +61,10 @@ var versions = {
dotenv: "0.2.3",
fetch: "1.6.7",
fs: "11.3.2",
- glob: "15.0.0",
+ glob: "16.0.0",
minimist: "1.2.8",
ps: "1.0.0",
- which: "5.0.0",
+ which: "6.0.0",
yaml: "2.8.1"
};
build/vendor-extra.cjs
@@ -90,7 +90,7 @@ var require_path = __commonJS({
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.convertPosixPathToPattern = exports2.convertWindowsPathToPattern = exports2.convertPathToPattern = exports2.escapePosixPath = exports2.escapeWindowsPath = exports2.escape = exports2.removeLeadingDotSegment = exports2.makeAbsolute = exports2.unixify = void 0;
var os = require("os");
- var path3 = require("path");
+ var path5 = require("path");
var IS_WINDOWS_PLATFORM = os.platform() === "win32";
var LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2;
var POSIX_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g;
@@ -102,7 +102,7 @@ var require_path = __commonJS({
}
exports2.unixify = unixify;
function makeAbsolute(cwd, filepath) {
- return path3.resolve(cwd, filepath);
+ return path5.resolve(cwd, filepath);
}
exports2.makeAbsolute = makeAbsolute;
function removeLeadingDotSegment(entry) {
@@ -1401,7 +1401,7 @@ var require_braces = __commonJS({
var require_constants2 = __commonJS({
"node_modules/picomatch/lib/constants.js"(exports2, module2) {
"use strict";
- var path3 = require("path");
+ var path5 = require("path");
var WIN_SLASH = "\\\\/";
var WIN_NO_SLASH = `[^${WIN_SLASH}]`;
var DOT_LITERAL = "\\.";
@@ -1570,7 +1570,7 @@ var require_constants2 = __commonJS({
/* | */
CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279,
/* \uFEFF */
- SEP: path3.sep,
+ SEP: path5.sep,
/**
* Create EXTGLOB_CHARS
*/
@@ -1597,7 +1597,7 @@ var require_constants2 = __commonJS({
var require_utils2 = __commonJS({
"node_modules/picomatch/lib/utils.js"(exports2) {
"use strict";
- var path3 = require("path");
+ var path5 = require("path");
var win32 = process.platform === "win32";
var {
REGEX_BACKSLASH,
@@ -1626,7 +1626,7 @@ var require_utils2 = __commonJS({
if (options && typeof options.windows === "boolean") {
return options.windows;
}
- return win32 === true || path3.sep === "\\";
+ return win32 === true || path5.sep === "\\";
};
exports2.escapeLast = (input, char, lastIdx) => {
const idx = input.lastIndexOf(char, lastIdx);
@@ -2761,7 +2761,7 @@ var require_parse2 = __commonJS({
var require_picomatch = __commonJS({
"node_modules/picomatch/lib/picomatch.js"(exports2, module2) {
"use strict";
- var path3 = require("path");
+ var path5 = require("path");
var scan = require_scan();
var parse4 = require_parse2();
var utils = require_utils2();
@@ -2846,7 +2846,7 @@ var require_picomatch = __commonJS({
};
picomatch.matchBase = (input, glob2, options, posix = utils.isWindows(options)) => {
const regex = glob2 instanceof RegExp ? glob2 : picomatch.makeRe(glob2, options);
- return regex.test(path3.basename(input));
+ return regex.test(path5.basename(input));
};
picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str);
picomatch.parse = (pattern, options) => {
@@ -3073,7 +3073,7 @@ var require_pattern = __commonJS({
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.isAbsolute = exports2.partitionAbsoluteAndRelative = exports2.removeDuplicateSlashes = 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 path3 = require("path");
+ var path5 = require("path");
var globParent = require_glob_parent();
var micromatch = require_micromatch();
var GLOBSTAR = "**";
@@ -3168,7 +3168,7 @@ var require_pattern = __commonJS({
}
exports2.endsWithSlashGlobStar = endsWithSlashGlobStar;
function isAffectDepthOfReadingPattern(pattern) {
- const basename = path3.basename(pattern);
+ const basename = path5.basename(pattern);
return endsWithSlashGlobStar(pattern) || isStaticPattern(basename);
}
exports2.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern;
@@ -3226,7 +3226,7 @@ var require_pattern = __commonJS({
}
exports2.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative;
function isAbsolute(pattern) {
- return path3.isAbsolute(pattern);
+ return path5.isAbsolute(pattern);
}
exports2.isAbsolute = isAbsolute;
}
@@ -3403,8 +3403,8 @@ var require_utils3 = __commonJS({
exports2.errno = errno;
var fs6 = require_fs();
exports2.fs = fs6;
- var path3 = require_path();
- exports2.path = path3;
+ var path5 = require_path();
+ exports2.path = path5;
var pattern = require_pattern();
exports2.pattern = pattern;
var stream = require_stream();
@@ -3516,8 +3516,8 @@ var require_async = __commonJS({
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.read = void 0;
- function read(path3, settings, callback) {
- settings.fs.lstat(path3, (lstatError, lstat) => {
+ function read(path5, settings, callback) {
+ settings.fs.lstat(path5, (lstatError, lstat) => {
if (lstatError !== null) {
callFailureCallback(callback, lstatError);
return;
@@ -3526,7 +3526,7 @@ var require_async = __commonJS({
callSuccessCallback(callback, lstat);
return;
}
- settings.fs.stat(path3, (statError, stat) => {
+ settings.fs.stat(path5, (statError, stat) => {
if (statError !== null) {
if (settings.throwErrorOnBrokenSymbolicLink) {
callFailureCallback(callback, statError);
@@ -3558,13 +3558,13 @@ var require_sync = __commonJS({
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.read = void 0;
- function read(path3, settings) {
- const lstat = settings.fs.lstatSync(path3);
+ function read(path5, settings) {
+ const lstat = settings.fs.lstatSync(path5);
if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) {
return lstat;
}
try {
- const stat = settings.fs.statSync(path3);
+ const stat = settings.fs.statSync(path5);
if (settings.markSymbolicLink) {
stat.isSymbolicLink = () => true;
}
@@ -3635,17 +3635,17 @@ var require_out = __commonJS({
var sync = require_sync();
var settings_1 = require_settings();
exports2.Settings = settings_1.default;
- function stat(path3, optionsOrSettingsOrCallback, callback) {
+ function stat(path5, optionsOrSettingsOrCallback, callback) {
if (typeof optionsOrSettingsOrCallback === "function") {
- async.read(path3, getSettings(), optionsOrSettingsOrCallback);
+ async.read(path5, getSettings(), optionsOrSettingsOrCallback);
return;
}
- async.read(path3, getSettings(optionsOrSettingsOrCallback), callback);
+ async.read(path5, getSettings(optionsOrSettingsOrCallback), callback);
}
exports2.stat = stat;
- function statSync(path3, optionsOrSettings) {
+ function statSync(path5, optionsOrSettings) {
const settings = getSettings(optionsOrSettings);
- return sync.read(path3, settings);
+ return sync.read(path5, settings);
}
exports2.statSync = statSync;
function getSettings(settingsOrOptions = {}) {
@@ -3863,16 +3863,16 @@ var require_async2 = __commonJS({
return;
}
const tasks = names.map((name) => {
- const path3 = common.joinPathSegments(directory, name, settings.pathSegmentSeparator);
+ const path5 = common.joinPathSegments(directory, name, settings.pathSegmentSeparator);
return (done) => {
- fsStat.stat(path3, settings.fsStatSettings, (error, stats) => {
+ fsStat.stat(path5, settings.fsStatSettings, (error, stats) => {
if (error !== null) {
done(error);
return;
}
const entry = {
name,
- path: path3,
+ path: path5,
dirent: utils.fs.createDirentFromStats(name, stats)
};
if (settings.stats) {
@@ -3990,7 +3990,7 @@ var require_settings2 = __commonJS({
"node_modules/@nodelib/fs.scandir/out/settings.js"(exports2) {
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
- var path3 = require("path");
+ var path5 = require("path");
var fsStat = require_out();
var fs6 = require_fs4();
var Settings = class {
@@ -3998,7 +3998,7 @@ var require_settings2 = __commonJS({
this._options = _options;
this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false);
this.fs = fs6.createFileSystemAdapter(this._options.fs);
- this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path3.sep);
+ this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path5.sep);
this.stats = this._getValue(this._options.stats, false);
this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true);
this.fsStatSettings = new fsStat.Settings({
@@ -4025,17 +4025,17 @@ var require_out2 = __commonJS({
var sync = require_sync2();
var settings_1 = require_settings2();
exports2.Settings = settings_1.default;
- function scandir(path3, optionsOrSettingsOrCallback, callback) {
+ function scandir(path5, optionsOrSettingsOrCallback, callback) {
if (typeof optionsOrSettingsOrCallback === "function") {
- async.read(path3, getSettings(), optionsOrSettingsOrCallback);
+ async.read(path5, getSettings(), optionsOrSettingsOrCallback);
return;
}
- async.read(path3, getSettings(optionsOrSettingsOrCallback), callback);
+ async.read(path5, getSettings(optionsOrSettingsOrCallback), callback);
}
exports2.scandir = scandir;
- function scandirSync(path3, optionsOrSettings) {
+ function scandirSync(path5, optionsOrSettings) {
const settings = getSettings(optionsOrSettings);
- return sync.read(path3, settings);
+ return sync.read(path5, settings);
}
exports2.scandirSync = scandirSync;
function getSettings(settingsOrOptions = {}) {
@@ -4659,7 +4659,7 @@ var require_settings3 = __commonJS({
"node_modules/@nodelib/fs.walk/out/settings.js"(exports2) {
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
- var path3 = require("path");
+ var path5 = require("path");
var fsScandir = require_out2();
var Settings = class {
constructor(_options = {}) {
@@ -4669,7 +4669,7 @@ var require_settings3 = __commonJS({
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, path3.sep);
+ this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path5.sep);
this.fsScandirSettings = new fsScandir.Settings({
followSymbolicLinks: this._options.followSymbolicLinks,
fs: this._options.fs,
@@ -4731,7 +4731,7 @@ var require_reader2 = __commonJS({
"node_modules/fast-glob/out/readers/reader.js"(exports2) {
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
- var path3 = require("path");
+ var path5 = require("path");
var fsStat = require_out();
var utils = require_utils3();
var Reader = class {
@@ -4744,7 +4744,7 @@ var require_reader2 = __commonJS({
});
}
_getFullEntryPath(filepath) {
- return path3.resolve(this._settings.cwd, filepath);
+ return path5.resolve(this._settings.cwd, filepath);
}
_makeEntry(stats, pattern) {
const entry = {
@@ -5162,7 +5162,7 @@ var require_provider = __commonJS({
"node_modules/fast-glob/out/providers/provider.js"(exports2) {
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
- var path3 = require("path");
+ var path5 = require("path");
var deep_1 = require_deep();
var entry_1 = require_entry();
var error_1 = require_error();
@@ -5176,7 +5176,7 @@ var require_provider = __commonJS({
this.entryTransformer = new entry_2.default(this._settings);
}
_getRootDirectory(task) {
- return path3.resolve(this._settings.cwd, task.base);
+ return path5.resolve(this._settings.cwd, task.base);
}
_getReaderOptions(task) {
const basePath = task.base === "." ? "" : task.base;
@@ -5814,7 +5814,7 @@ var require_ignore = __commonJS({
// path matching.
// - check `string` either `MODE_IGNORE` or `MODE_CHECK_IGNORE`
// @returns {TestResult} true if a file is ignored
- test(path3, checkUnignored, mode) {
+ test(path5, checkUnignored, mode) {
let ignored = false;
let unignored = false;
let matchedRule;
@@ -5823,7 +5823,7 @@ var require_ignore = __commonJS({
if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) {
return;
}
- const matched = rule[mode].test(path3);
+ const matched = rule[mode].test(path5);
if (!matched) {
return;
}
@@ -5844,17 +5844,17 @@ var require_ignore = __commonJS({
var throwError = (message, Ctor) => {
throw new Ctor(message);
};
- var checkPath = (path3, originalPath, doThrow) => {
- if (!isString(path3)) {
+ var checkPath = (path5, originalPath, doThrow) => {
+ if (!isString(path5)) {
return doThrow(
`path must be a string, but got \`${originalPath}\``,
TypeError
);
}
- if (!path3) {
+ if (!path5) {
return doThrow(`path must not be empty`, TypeError);
}
- if (checkPath.isNotRelative(path3)) {
+ if (checkPath.isNotRelative(path5)) {
const r2 = "`path.relative()`d";
return doThrow(
`path should be a ${r2} string, but got "${originalPath}"`,
@@ -5863,7 +5863,7 @@ var require_ignore = __commonJS({
}
return true;
};
- var isNotRelative = (path3) => REGEX_TEST_INVALID_PATH.test(path3);
+ var isNotRelative = (path5) => REGEX_TEST_INVALID_PATH.test(path5);
checkPath.isNotRelative = isNotRelative;
checkPath.convert = (p2) => p2;
var Ignore = class {
@@ -5893,19 +5893,19 @@ var require_ignore = __commonJS({
}
// @returns {TestResult}
_test(originalPath, cache, checkUnignored, slices) {
- const path3 = originalPath && checkPath.convert(originalPath);
+ const path5 = originalPath && checkPath.convert(originalPath);
checkPath(
- path3,
+ path5,
originalPath,
this._strictPathCheck ? throwError : RETURN_FALSE
);
- return this._t(path3, cache, checkUnignored, slices);
+ return this._t(path5, cache, checkUnignored, slices);
}
- checkIgnore(path3) {
- if (!REGEX_TEST_TRAILING_SLASH.test(path3)) {
- return this.test(path3);
+ checkIgnore(path5) {
+ if (!REGEX_TEST_TRAILING_SLASH.test(path5)) {
+ return this.test(path5);
}
- const slices = path3.split(SLASH).filter(Boolean);
+ const slices = path5.split(SLASH).filter(Boolean);
slices.pop();
if (slices.length) {
const parent = this._t(
@@ -5918,18 +5918,18 @@ var require_ignore = __commonJS({
return parent;
}
}
- return this._rules.test(path3, false, MODE_CHECK_IGNORE);
+ return this._rules.test(path5, false, MODE_CHECK_IGNORE);
}
- _t(path3, cache, checkUnignored, slices) {
- if (path3 in cache) {
- return cache[path3];
+ _t(path5, cache, checkUnignored, slices) {
+ if (path5 in cache) {
+ return cache[path5];
}
if (!slices) {
- slices = path3.split(SLASH).filter(Boolean);
+ slices = path5.split(SLASH).filter(Boolean);
}
slices.pop();
if (!slices.length) {
- return cache[path3] = this._rules.test(path3, checkUnignored, MODE_IGNORE);
+ return cache[path5] = this._rules.test(path5, checkUnignored, MODE_IGNORE);
}
const parent = this._t(
slices.join(SLASH) + SLASH,
@@ -5937,29 +5937,29 @@ var require_ignore = __commonJS({
checkUnignored,
slices
);
- return cache[path3] = parent.ignored ? parent : this._rules.test(path3, checkUnignored, MODE_IGNORE);
+ return cache[path5] = parent.ignored ? parent : this._rules.test(path5, checkUnignored, MODE_IGNORE);
}
- ignores(path3) {
- return this._test(path3, this._ignoreCache, false).ignored;
+ ignores(path5) {
+ return this._test(path5, this._ignoreCache, false).ignored;
}
createFilter() {
- return (path3) => !this.ignores(path3);
+ return (path5) => !this.ignores(path5);
}
filter(paths) {
return makeArray(paths).filter(this.createFilter());
}
// @returns {TestResult}
- test(path3) {
- return this._test(path3, this._testCache, true);
+ test(path5) {
+ return this._test(path5, this._testCache, true);
}
};
var factory = (options) => new Ignore(options);
- var isPathValid = (path3) => checkPath(path3 && checkPath.convert(path3), path3, RETURN_FALSE);
+ var isPathValid = (path5) => checkPath(path5 && checkPath.convert(path5), path5, RETURN_FALSE);
var setupWindows = () => {
const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/");
checkPath.convert = makePosix;
const REGEX_TEST_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i;
- checkPath.isNotRelative = (path3) => REGEX_TEST_WINDOWS_PATH_ABSOLUTE.test(path3) || isNotRelative(path3);
+ checkPath.isNotRelative = (path5) => REGEX_TEST_WINDOWS_PATH_ABSOLUTE.test(path5) || isNotRelative(path5);
};
if (
// Detect `process` so that it can run in browsers.
@@ -6055,14 +6055,14 @@ var require_polyfills = __commonJS({
fs6.fstatSync = statFixSync(fs6.fstatSync);
fs6.lstatSync = statFixSync(fs6.lstatSync);
if (fs6.chmod && !fs6.lchmod) {
- fs6.lchmod = function(path3, mode, cb) {
+ fs6.lchmod = function(path5, mode, cb) {
if (cb) process.nextTick(cb);
};
fs6.lchmodSync = function() {
};
}
if (fs6.chown && !fs6.lchown) {
- fs6.lchown = function(path3, uid, gid, cb) {
+ fs6.lchown = function(path5, uid, gid, cb) {
if (cb) process.nextTick(cb);
};
fs6.lchownSync = function() {
@@ -6129,9 +6129,9 @@ var require_polyfills = __commonJS({
};
})(fs6.readSync);
function patchLchmod(fs7) {
- fs7.lchmod = function(path3, mode, callback) {
+ fs7.lchmod = function(path5, mode, callback) {
fs7.open(
- path3,
+ path5,
constants.O_WRONLY | constants.O_SYMLINK,
mode,
function(err, fd) {
@@ -6147,8 +6147,8 @@ var require_polyfills = __commonJS({
}
);
};
- fs7.lchmodSync = function(path3, mode) {
- var fd = fs7.openSync(path3, constants.O_WRONLY | constants.O_SYMLINK, mode);
+ fs7.lchmodSync = function(path5, mode) {
+ var fd = fs7.openSync(path5, constants.O_WRONLY | constants.O_SYMLINK, mode);
var threw = true;
var ret;
try {
@@ -6169,8 +6169,8 @@ var require_polyfills = __commonJS({
}
function patchLutimes(fs7) {
if (constants.hasOwnProperty("O_SYMLINK") && fs7.futimes) {
- fs7.lutimes = function(path3, at, mt2, cb) {
- fs7.open(path3, constants.O_SYMLINK, function(er, fd) {
+ fs7.lutimes = function(path5, at, mt2, cb) {
+ fs7.open(path5, constants.O_SYMLINK, function(er, fd) {
if (er) {
if (cb) cb(er);
return;
@@ -6182,8 +6182,8 @@ var require_polyfills = __commonJS({
});
});
};
- fs7.lutimesSync = function(path3, at, mt2) {
- var fd = fs7.openSync(path3, constants.O_SYMLINK);
+ fs7.lutimesSync = function(path5, at, mt2) {
+ var fd = fs7.openSync(path5, constants.O_SYMLINK);
var ret;
var threw = true;
try {
@@ -6302,11 +6302,11 @@ var require_legacy_streams = __commonJS({
ReadStream,
WriteStream
};
- function ReadStream(path3, options) {
- if (!(this instanceof ReadStream)) return new ReadStream(path3, options);
+ function ReadStream(path5, options) {
+ if (!(this instanceof ReadStream)) return new ReadStream(path5, options);
Stream.call(this);
var self2 = this;
- this.path = path3;
+ this.path = path5;
this.fd = null;
this.readable = true;
this.paused = false;
@@ -6351,10 +6351,10 @@ var require_legacy_streams = __commonJS({
self2._read();
});
}
- function WriteStream(path3, options) {
- if (!(this instanceof WriteStream)) return new WriteStream(path3, options);
+ function WriteStream(path5, options) {
+ if (!(this instanceof WriteStream)) return new WriteStream(path5, options);
Stream.call(this);
- this.path = path3;
+ this.path = path5;
this.fd = null;
this.writable = true;
this.flags = "w";
@@ -6498,14 +6498,14 @@ var require_graceful_fs = __commonJS({
fs7.createWriteStream = createWriteStream;
var fs$readFile = fs7.readFile;
fs7.readFile = readFile;
- function readFile(path3, options, cb) {
+ function readFile(path5, options, cb) {
if (typeof options === "function")
cb = options, options = null;
- return go$readFile(path3, options, cb);
- function go$readFile(path4, options2, cb2, startTime) {
- return fs$readFile(path4, options2, function(err) {
+ return go$readFile(path5, options, cb);
+ function go$readFile(path6, options2, cb2, startTime) {
+ return fs$readFile(path6, options2, function(err) {
if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
- enqueue([go$readFile, [path4, options2, cb2], err, startTime || Date.now(), Date.now()]);
+ enqueue([go$readFile, [path6, options2, cb2], err, startTime || Date.now(), Date.now()]);
else {
if (typeof cb2 === "function")
cb2.apply(this, arguments);
@@ -6515,14 +6515,14 @@ var require_graceful_fs = __commonJS({
}
var fs$writeFile = fs7.writeFile;
fs7.writeFile = writeFile;
- function writeFile(path3, data, options, cb) {
+ function writeFile(path5, data, options, cb) {
if (typeof options === "function")
cb = options, options = null;
- return go$writeFile(path3, data, options, cb);
- function go$writeFile(path4, data2, options2, cb2, startTime) {
- return fs$writeFile(path4, data2, options2, function(err) {
+ return go$writeFile(path5, data, options, cb);
+ function go$writeFile(path6, data2, options2, cb2, startTime) {
+ return fs$writeFile(path6, data2, options2, function(err) {
if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
- enqueue([go$writeFile, [path4, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+ enqueue([go$writeFile, [path6, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
else {
if (typeof cb2 === "function")
cb2.apply(this, arguments);
@@ -6533,14 +6533,14 @@ var require_graceful_fs = __commonJS({
var fs$appendFile = fs7.appendFile;
if (fs$appendFile)
fs7.appendFile = appendFile;
- function appendFile(path3, data, options, cb) {
+ function appendFile(path5, data, options, cb) {
if (typeof options === "function")
cb = options, options = null;
- return go$appendFile(path3, data, options, cb);
- function go$appendFile(path4, data2, options2, cb2, startTime) {
- return fs$appendFile(path4, data2, options2, function(err) {
+ return go$appendFile(path5, data, options, cb);
+ function go$appendFile(path6, data2, options2, cb2, startTime) {
+ return fs$appendFile(path6, data2, options2, function(err) {
if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
- enqueue([go$appendFile, [path4, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+ enqueue([go$appendFile, [path6, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
else {
if (typeof cb2 === "function")
cb2.apply(this, arguments);
@@ -6571,31 +6571,31 @@ var require_graceful_fs = __commonJS({
var fs$readdir = fs7.readdir;
fs7.readdir = readdir;
var noReaddirOptionVersions = /^v[0-5]\./;
- function readdir(path3, options, cb) {
+ function readdir(path5, options, cb) {
if (typeof options === "function")
cb = options, options = null;
- var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path4, options2, cb2, startTime) {
- return fs$readdir(path4, fs$readdirCallback(
- path4,
+ var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path6, options2, cb2, startTime) {
+ return fs$readdir(path6, fs$readdirCallback(
+ path6,
options2,
cb2,
startTime
));
- } : function go$readdir2(path4, options2, cb2, startTime) {
- return fs$readdir(path4, options2, fs$readdirCallback(
- path4,
+ } : function go$readdir2(path6, options2, cb2, startTime) {
+ return fs$readdir(path6, options2, fs$readdirCallback(
+ path6,
options2,
cb2,
startTime
));
};
- return go$readdir(path3, options, cb);
- function fs$readdirCallback(path4, options2, cb2, startTime) {
+ return go$readdir(path5, options, cb);
+ function fs$readdirCallback(path6, options2, cb2, startTime) {
return function(err, files) {
if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
enqueue([
go$readdir,
- [path4, options2, cb2],
+ [path6, options2, cb2],
err,
startTime || Date.now(),
Date.now()
@@ -6666,7 +6666,7 @@ var require_graceful_fs = __commonJS({
enumerable: true,
configurable: true
});
- function ReadStream(path3, options) {
+ function ReadStream(path5, options) {
if (this instanceof ReadStream)
return fs$ReadStream.apply(this, arguments), this;
else
@@ -6686,7 +6686,7 @@ var require_graceful_fs = __commonJS({
}
});
}
- function WriteStream(path3, options) {
+ function WriteStream(path5, options) {
if (this instanceof WriteStream)
return fs$WriteStream.apply(this, arguments), this;
else
@@ -6704,22 +6704,22 @@ var require_graceful_fs = __commonJS({
}
});
}
- function createReadStream(path3, options) {
- return new fs7.ReadStream(path3, options);
+ function createReadStream(path5, options) {
+ return new fs7.ReadStream(path5, options);
}
- function createWriteStream(path3, options) {
- return new fs7.WriteStream(path3, options);
+ function createWriteStream(path5, options) {
+ return new fs7.WriteStream(path5, options);
}
var fs$open = fs7.open;
fs7.open = open;
- function open(path3, flags, mode, cb) {
+ function open(path5, flags, mode, cb) {
if (typeof mode === "function")
cb = mode, mode = null;
- return go$open(path3, flags, mode, cb);
- function go$open(path4, flags2, mode2, cb2, startTime) {
- return fs$open(path4, flags2, mode2, function(err, fd) {
+ return go$open(path5, flags, mode, cb);
+ function go$open(path6, flags2, mode2, cb2, startTime) {
+ return fs$open(path6, flags2, mode2, function(err, fd) {
if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
- enqueue([go$open, [path4, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
+ enqueue([go$open, [path6, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
else {
if (typeof cb2 === "function")
cb2.apply(this, arguments);
@@ -6902,10 +6902,10 @@ var require_fs5 = __commonJS({
var require_utils5 = __commonJS({
"node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
"use strict";
- var path3 = require("path");
+ var path5 = require("path");
module2.exports.checkPath = function checkPath(pth) {
if (process.platform === "win32") {
- const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path3.parse(pth).root, ""));
+ const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path5.parse(pth).root, ""));
if (pathHasInvalidWinCharacters) {
const error = new Error(`Path contains invalid characters: ${pth}`);
error.code = "EINVAL";
@@ -6969,8 +6969,8 @@ var require_path_exists = __commonJS({
"use strict";
var u = require_universalify().fromPromise;
var fs6 = require_fs5();
- function pathExists(path3) {
- return fs6.access(path3).then(() => true).catch(() => false);
+ function pathExists(path5) {
+ return fs6.access(path5).then(() => true).catch(() => false);
}
module2.exports = {
pathExists: u(pathExists),
@@ -6985,9 +6985,9 @@ var require_utimes = __commonJS({
"use strict";
var fs6 = require_fs5();
var u = require_universalify().fromPromise;
- function utimesMillis(path3, atime, mtime) {
+ function utimesMillis(path5, atime, mtime) {
return __async(this, null, function* () {
- const fd = yield fs6.open(path3, "r+");
+ const fd = yield fs6.open(path5, "r+");
let closeErr = null;
try {
yield fs6.futimes(fd, atime, mtime);
@@ -7003,8 +7003,8 @@ var require_utimes = __commonJS({
}
});
}
- function utimesMillisSync(path3, atime, mtime) {
- const fd = fs6.openSync(path3, "r+");
+ function utimesMillisSync(path5, atime, mtime) {
+ const fd = fs6.openSync(path5, "r+");
fs6.futimesSync(fd, atime, mtime);
return fs6.closeSync(fd);
}
@@ -7020,7 +7020,7 @@ var require_stat = __commonJS({
"node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
"use strict";
var fs6 = require_fs5();
- var path3 = require("path");
+ var path5 = require("path");
var u = require_universalify().fromPromise;
function getStats(src, dest, opts) {
const statFunc = opts.dereference ? (file) => fs6.stat(file, { bigint: true }) : (file) => fs6.lstat(file, { bigint: true });
@@ -7049,8 +7049,8 @@ var require_stat = __commonJS({
const { srcStat, destStat } = yield getStats(src, dest, opts);
if (destStat) {
if (areIdentical(srcStat, destStat)) {
- const srcBaseName = path3.basename(src);
- const destBaseName = path3.basename(dest);
+ const srcBaseName = path5.basename(src);
+ const destBaseName = path5.basename(dest);
if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
return { srcStat, destStat, isChangingCase: true };
}
@@ -7073,8 +7073,8 @@ var require_stat = __commonJS({
const { srcStat, destStat } = getStatsSync(src, dest, opts);
if (destStat) {
if (areIdentical(srcStat, destStat)) {
- const srcBaseName = path3.basename(src);
- const destBaseName = path3.basename(dest);
+ const srcBaseName = path5.basename(src);
+ const destBaseName = path5.basename(dest);
if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
return { srcStat, destStat, isChangingCase: true };
}
@@ -7094,9 +7094,9 @@ var require_stat = __commonJS({
}
function checkParentPaths(src, srcStat, dest, funcName) {
return __async(this, null, function* () {
- const srcParent = path3.resolve(path3.dirname(src));
- const destParent = path3.resolve(path3.dirname(dest));
- if (destParent === srcParent || destParent === path3.parse(destParent).root) return;
+ const srcParent = path5.resolve(path5.dirname(src));
+ const destParent = path5.resolve(path5.dirname(dest));
+ if (destParent === srcParent || destParent === path5.parse(destParent).root) return;
let destStat;
try {
destStat = yield fs6.stat(destParent, { bigint: true });
@@ -7111,9 +7111,9 @@ var require_stat = __commonJS({
});
}
function checkParentPathsSync(src, srcStat, dest, funcName) {
- const srcParent = path3.resolve(path3.dirname(src));
- const destParent = path3.resolve(path3.dirname(dest));
- if (destParent === srcParent || destParent === path3.parse(destParent).root) return;
+ const srcParent = path5.resolve(path5.dirname(src));
+ const destParent = path5.resolve(path5.dirname(dest));
+ if (destParent === srcParent || destParent === path5.parse(destParent).root) return;
let destStat;
try {
destStat = fs6.statSync(destParent, { bigint: true });
@@ -7130,8 +7130,8 @@ var require_stat = __commonJS({
return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
}
function isSrcSubdir(src, dest) {
- const srcArr = path3.resolve(src).split(path3.sep).filter((i) => i);
- const destArr = path3.resolve(dest).split(path3.sep).filter((i) => i);
+ const srcArr = path5.resolve(src).split(path5.sep).filter((i) => i);
+ const destArr = path5.resolve(dest).split(path5.sep).filter((i) => i);
return srcArr.every((cur, i) => destArr[i] === cur);
}
function errMsg(src, dest, funcName) {
@@ -7198,7 +7198,7 @@ var require_copy = __commonJS({
"node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
"use strict";
var fs6 = require_fs5();
- var path3 = require("path");
+ var path5 = require("path");
var { mkdirs } = require_mkdirs();
var { pathExists } = require_path_exists();
var { utimesMillis } = require_utimes();
@@ -7222,7 +7222,7 @@ var require_copy = __commonJS({
yield stat.checkParentPaths(src, srcStat, dest, "copy");
const include = yield runFilter(src, dest, opts);
if (!include) return;
- const destParent = path3.dirname(dest);
+ const destParent = path5.dirname(dest);
const dirExists = yield pathExists(destParent);
if (!dirExists) {
yield mkdirs(destParent);
@@ -7285,8 +7285,8 @@ var require_copy = __commonJS({
yield fs6.mkdir(dest);
}
yield asyncIteratorConcurrentProcess(yield fs6.opendir(src), (item) => __async(null, null, function* () {
- const srcItem = path3.join(src, item.name);
- const destItem = path3.join(dest, item.name);
+ const srcItem = path5.join(src, item.name);
+ const destItem = path5.join(dest, item.name);
const include = yield runFilter(srcItem, destItem, opts);
if (include) {
const { destStat: destStat2 } = yield stat.checkPaths(srcItem, destItem, "copy", opts);
@@ -7302,7 +7302,7 @@ var require_copy = __commonJS({
return __async(this, null, function* () {
let resolvedSrc = yield fs6.readlink(src);
if (opts.dereference) {
- resolvedSrc = path3.resolve(process.cwd(), resolvedSrc);
+ resolvedSrc = path5.resolve(process.cwd(), resolvedSrc);
}
if (!destStat) {
return fs6.symlink(resolvedSrc, dest);
@@ -7315,7 +7315,7 @@ var require_copy = __commonJS({
throw e;
}
if (opts.dereference) {
- resolvedDest = path3.resolve(process.cwd(), resolvedDest);
+ resolvedDest = path5.resolve(process.cwd(), resolvedDest);
}
if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
@@ -7336,7 +7336,7 @@ var require_copy_sync = __commonJS({
"node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
"use strict";
var fs6 = require_graceful_fs();
- var path3 = require("path");
+ var path5 = require("path");
var mkdirsSync = require_mkdirs().mkdirsSync;
var utimesMillisSync = require_utimes().utimesMillisSync;
var stat = require_stat();
@@ -7357,7 +7357,7 @@ var require_copy_sync = __commonJS({
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 = path3.dirname(dest);
+ const destParent = path5.dirname(dest);
if (!fs6.existsSync(destParent)) mkdirsSync(destParent);
return getStats(destStat, src, dest, opts);
}
@@ -7426,8 +7426,8 @@ var require_copy_sync = __commonJS({
}
}
function copyDirItem(item, src, dest, opts) {
- const srcItem = path3.join(src, item);
- const destItem = path3.join(dest, item);
+ const srcItem = path5.join(src, item);
+ const destItem = path5.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);
@@ -7435,7 +7435,7 @@ var require_copy_sync = __commonJS({
function onLink(destStat, src, dest, opts) {
let resolvedSrc = fs6.readlinkSync(src);
if (opts.dereference) {
- resolvedSrc = path3.resolve(process.cwd(), resolvedSrc);
+ resolvedSrc = path5.resolve(process.cwd(), resolvedSrc);
}
if (!destStat) {
return fs6.symlinkSync(resolvedSrc, dest);
@@ -7448,7 +7448,7 @@ var require_copy_sync = __commonJS({
throw err;
}
if (opts.dereference) {
- resolvedDest = path3.resolve(process.cwd(), resolvedDest);
+ resolvedDest = path5.resolve(process.cwd(), resolvedDest);
}
if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
@@ -7485,11 +7485,11 @@ var require_remove = __commonJS({
"use strict";
var fs6 = require_graceful_fs();
var u = require_universalify().fromCallback;
- function remove(path3, callback) {
- fs6.rm(path3, { recursive: true, force: true }, callback);
+ function remove(path5, callback) {
+ fs6.rm(path5, { recursive: true, force: true }, callback);
}
- function removeSync(path3) {
- fs6.rmSync(path3, { recursive: true, force: true });
+ function removeSync(path5) {
+ fs6.rmSync(path5, { recursive: true, force: true });
}
module2.exports = {
remove: u(remove),
@@ -7504,7 +7504,7 @@ var require_empty = __commonJS({
"use strict";
var u = require_universalify().fromPromise;
var fs6 = require_fs5();
- var path3 = require("path");
+ var path5 = require("path");
var mkdir = require_mkdirs();
var remove = require_remove();
var emptyDir = u(function emptyDir2(dir) {
@@ -7515,7 +7515,7 @@ var require_empty = __commonJS({
} catch (e) {
return mkdir.mkdirs(dir);
}
- return Promise.all(items.map((item) => remove.remove(path3.join(dir, item))));
+ return Promise.all(items.map((item) => remove.remove(path5.join(dir, item))));
});
});
function emptyDirSync(dir) {
@@ -7526,7 +7526,7 @@ var require_empty = __commonJS({
return mkdir.mkdirsSync(dir);
}
items.forEach((item) => {
- item = path3.join(dir, item);
+ item = path5.join(dir, item);
remove.removeSync(item);
});
}
@@ -7544,7 +7544,7 @@ var require_file = __commonJS({
"node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
"use strict";
var u = require_universalify().fromPromise;
- var path3 = require("path");
+ var path5 = require("path");
var fs6 = require_fs5();
var mkdir = require_mkdirs();
function createFile(file) {
@@ -7555,7 +7555,7 @@ var require_file = __commonJS({
} catch (e) {
}
if (stats && stats.isFile()) return;
- const dir = path3.dirname(file);
+ const dir = path5.dirname(file);
let dirStats = null;
try {
dirStats = yield fs6.stat(dir);
@@ -7582,7 +7582,7 @@ var require_file = __commonJS({
} catch (e) {
}
if (stats && stats.isFile()) return;
- const dir = path3.dirname(file);
+ const dir = path5.dirname(file);
try {
if (!fs6.statSync(dir).isDirectory()) {
fs6.readdirSync(dir);
@@ -7605,7 +7605,7 @@ var require_link = __commonJS({
"node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
"use strict";
var u = require_universalify().fromPromise;
- var path3 = require("path");
+ var path5 = require("path");
var fs6 = require_fs5();
var mkdir = require_mkdirs();
var { pathExists } = require_path_exists();
@@ -7625,7 +7625,7 @@ var require_link = __commonJS({
throw err;
}
if (dstStat && areIdentical(srcStat, dstStat)) return;
- const dir = path3.dirname(dstpath);
+ const dir = path5.dirname(dstpath);
const dirExists = yield pathExists(dir);
if (!dirExists) {
yield mkdir.mkdirs(dir);
@@ -7646,7 +7646,7 @@ var require_link = __commonJS({
err.message = err.message.replace("lstat", "ensureLink");
throw err;
}
- const dir = path3.dirname(dstpath);
+ const dir = path5.dirname(dstpath);
const dirExists = fs6.existsSync(dir);
if (dirExists) return fs6.linkSync(srcpath, dstpath);
mkdir.mkdirsSync(dir);
@@ -7663,13 +7663,13 @@ var require_link = __commonJS({
var require_symlink_paths = __commonJS({
"node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
"use strict";
- var path3 = require("path");
+ var path5 = require("path");
var fs6 = require_fs5();
var { pathExists } = require_path_exists();
var u = require_universalify().fromPromise;
function symlinkPaths(srcpath, dstpath) {
return __async(this, null, function* () {
- if (path3.isAbsolute(srcpath)) {
+ if (path5.isAbsolute(srcpath)) {
try {
yield fs6.lstat(srcpath);
} catch (err) {
@@ -7681,8 +7681,8 @@ var require_symlink_paths = __commonJS({
toDst: srcpath
};
}
- const dstdir = path3.dirname(dstpath);
- const relativeToDst = path3.join(dstdir, srcpath);
+ const dstdir = path5.dirname(dstpath);
+ const relativeToDst = path5.join(dstdir, srcpath);
const exists = yield pathExists(relativeToDst);
if (exists) {
return {
@@ -7698,12 +7698,12 @@ var require_symlink_paths = __commonJS({
}
return {
toCwd: srcpath,
- toDst: path3.relative(dstdir, srcpath)
+ toDst: path5.relative(dstdir, srcpath)
};
});
}
function symlinkPathsSync(srcpath, dstpath) {
- if (path3.isAbsolute(srcpath)) {
+ if (path5.isAbsolute(srcpath)) {
const exists2 = fs6.existsSync(srcpath);
if (!exists2) throw new Error("absolute srcpath does not exist");
return {
@@ -7711,8 +7711,8 @@ var require_symlink_paths = __commonJS({
toDst: srcpath
};
}
- const dstdir = path3.dirname(dstpath);
- const relativeToDst = path3.join(dstdir, srcpath);
+ const dstdir = path5.dirname(dstpath);
+ const relativeToDst = path5.join(dstdir, srcpath);
const exists = fs6.existsSync(relativeToDst);
if (exists) {
return {
@@ -7724,7 +7724,7 @@ var require_symlink_paths = __commonJS({
if (!srcExists) throw new Error("relative srcpath does not exist");
return {
toCwd: srcpath,
- toDst: path3.relative(dstdir, srcpath)
+ toDst: path5.relative(dstdir, srcpath)
};
}
module2.exports = {
@@ -7774,7 +7774,7 @@ var require_symlink = __commonJS({
"node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
"use strict";
var u = require_universalify().fromPromise;
- var path3 = require("path");
+ var path5 = require("path");
var fs6 = require_fs5();
var { mkdirs, mkdirsSync } = require_mkdirs();
var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
@@ -7798,7 +7798,7 @@ var require_symlink = __commonJS({
const relative = yield symlinkPaths(srcpath, dstpath);
srcpath = relative.toDst;
const toType = yield symlinkType(relative.toCwd, type);
- const dir = path3.dirname(dstpath);
+ const dir = path5.dirname(dstpath);
if (!(yield pathExists(dir))) {
yield mkdirs(dir);
}
@@ -7819,7 +7819,7 @@ var require_symlink = __commonJS({
const relative = symlinkPathsSync(srcpath, dstpath);
srcpath = relative.toDst;
type = symlinkTypeSync(relative.toCwd, type);
- const dir = path3.dirname(dstpath);
+ const dir = path5.dirname(dstpath);
const exists = fs6.existsSync(dir);
if (exists) return fs6.symlinkSync(srcpath, dstpath, type);
mkdirsSync(dir);
@@ -7975,12 +7975,12 @@ var require_output_file = __commonJS({
"use strict";
var u = require_universalify().fromPromise;
var fs6 = require_fs5();
- var path3 = require("path");
+ var path5 = require("path");
var mkdir = require_mkdirs();
var pathExists = require_path_exists().pathExists;
function outputFile(file, data, encoding = "utf-8") {
return __async(this, null, function* () {
- const dir = path3.dirname(file);
+ const dir = path5.dirname(file);
if (!(yield pathExists(dir))) {
yield mkdir.mkdirs(dir);
}
@@ -7988,7 +7988,7 @@ var require_output_file = __commonJS({
});
}
function outputFileSync(file, ...args) {
- const dir = path3.dirname(file);
+ const dir = path5.dirname(file);
if (!fs6.existsSync(dir)) {
mkdir.mkdirsSync(dir);
}
@@ -8054,7 +8054,7 @@ var require_move = __commonJS({
"node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
"use strict";
var fs6 = require_fs5();
- var path3 = require("path");
+ var path5 = require("path");
var { copy } = require_copy2();
var { remove } = require_remove();
var { mkdirp } = require_mkdirs();
@@ -8065,8 +8065,8 @@ var require_move = __commonJS({
const overwrite = opts.overwrite || opts.clobber || false;
const { srcStat, isChangingCase = false } = yield stat.checkPaths(src, dest, "move", opts);
yield stat.checkParentPaths(src, srcStat, dest, "move");
- const destParent = path3.dirname(dest);
- const parsedParentPath = path3.parse(destParent);
+ const destParent = path5.dirname(dest);
+ const parsedParentPath = path5.parse(destParent);
if (parsedParentPath.root !== destParent) {
yield mkdirp(destParent);
}
@@ -8112,7 +8112,7 @@ var require_move_sync = __commonJS({
"node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
"use strict";
var fs6 = require_graceful_fs();
- var path3 = require("path");
+ var path5 = require("path");
var copySync = require_copy2().copySync;
var removeSync = require_remove().removeSync;
var mkdirpSync = require_mkdirs().mkdirpSync;
@@ -8122,12 +8122,12 @@ var require_move_sync = __commonJS({
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(path3.dirname(dest));
+ if (!isParentRoot(dest)) mkdirpSync(path5.dirname(dest));
return doRename(src, dest, overwrite, isChangingCase);
}
function isParentRoot(dest) {
- const parent = path3.dirname(dest);
- const parsedPath = path3.parse(parent);
+ const parent = path5.dirname(dest);
+ const parsedPath = path5.parse(parent);
return parsedPath.root === parent;
}
function doRename(src, dest, overwrite, isChangingCase) {
@@ -8185,14 +8185,14 @@ var require_create_require = __commonJS({
"node_modules/create-require/create-require.js"(exports2, module2) {
"use strict";
var nativeModule = require("module");
- var path3 = require("path");
+ var path5 = require("path");
var fs6 = require("fs");
function createRequire2(filename) {
if (!filename) {
filename = process.cwd();
}
if (isDir(filename)) {
- filename = path3.join(filename, "index.js");
+ filename = path5.join(filename, "index.js");
}
if (nativeModule.createRequire) {
return nativeModule.createRequire(filename);
@@ -8205,13 +8205,13 @@ var require_create_require = __commonJS({
function _createRequire2(filename) {
const mod = new nativeModule.Module(filename, null);
mod.filename = filename;
- mod.paths = nativeModule.Module._nodeModulePaths(path3.dirname(filename));
+ mod.paths = nativeModule.Module._nodeModulePaths(path5.dirname(filename));
mod._compile("module.exports = require;", filename);
return mod.exports;
}
- function isDir(path4) {
+ function isDir(path6) {
try {
- const stat = fs6.lstatSync(path4);
+ const stat = fs6.lstatSync(path6);
return stat.isDirectory();
} catch (e) {
return false;
@@ -11278,7 +11278,7 @@ function Ui() {
var _a2, _b2, _c, _d;
!((_b2 = (_a2 = globalThis.process) == null ? void 0 : _a2.versions) == null ? void 0 : _b2.node) && !((_d = (_c = globalThis.process) == null ? void 0 : _c.env) == null ? void 0 : _d.DISABLE_NODE_FETCH_NATIVE_WARN || true) && console.warn("[node-fetch-native] Node.js compatible build of `node-fetch-native` is being used in a non-Node.js environment. Please make sure you are using proper export conditions or report this issue to https://github.com/unjs/node-fetch-native. You can set `process.env.DISABLE_NODE_FETCH_NATIVE_WARN` to disable this warning.");
}
-var import_node_http, import_node_https, import_node_zlib, import_node_stream3, import_node_buffer, import_node_util2, import_node_url2, import_node_net, import_node_fs4, import_node_path3, Os, fi, n2, ci, O, be, X, ve, zt, bt, Cr, ze, It, Ft, mt, ee, yt, He, Ve, gt, pi, kt, xs, bi, mi, yi, gi, ut, Vs, qn, Wt, Qs, Ys, _i, Gs, Si, On, Ue, br, Un, ft, xn, G, mr, wi, yr, Ks, Js, Xs, el, H, Nn, xe, In, tl, Ri, rl, nl, gr, Fn, Pr, ye, il, jn, se, Ne, le, al, Ci, sl, $2, qt, dl, vr, dt, hl, Hn, _r, Ln, Pi, bl, ml, $n, yl, gl, _l, Sl, vi, Ei, Er, Sr, wl, Bi, Dn, zi, Ii, Fi, wr, Vn, pt, Tr, Mn, $i, ql, Ol, Mi;
+var import_node_http, import_node_https, import_node_zlib, import_node_stream3, import_node_buffer, import_node_util3, import_node_url2, import_node_net, import_node_fs4, import_node_path5, Os, fi, n2, ci, O, be, X, ve, zt, bt, Cr, ze, It, Ft, mt, ee, yt, He, Ve, gt, pi, kt, xs, bi, mi, yi, gi, ut, Vs, qn, Wt, Qs, Ys, _i, Gs, Si, On, Ue, br, Un, ft, xn, G, mr, wi, yr, Ks, Js, Xs, el, H, Nn, xe, In, tl, Ri, rl, nl, gr, Fn, Pr, ye, il, jn, se, Ne, le, al, Ci, sl, $2, qt, dl, vr, dt, hl, Hn, _r, Ln, Pi, bl, ml, $n, yl, gl, _l, Sl, vi, Ei, Er, Sr, wl, Bi, Dn, zi, Ii, Fi, wr, Vn, pt, Tr, Mn, $i, ql, Ol, Mi;
var init_node = __esm({
"node_modules/node-fetch-native/dist/node.mjs"() {
"use strict";
@@ -11287,12 +11287,12 @@ var init_node = __esm({
import_node_zlib = __toESM(require("zlib"), 1);
import_node_stream3 = __toESM(require("stream"), 1);
import_node_buffer = require("buffer");
- import_node_util2 = require("util");
+ import_node_util3 = require("util");
init_node_fetch_native_DfbY2q_x();
import_node_url2 = require("url");
import_node_net = require("net");
import_node_fs4 = require("fs");
- import_node_path3 = require("path");
+ import_node_path5 = require("path");
Os = Object.defineProperty;
fi = (i) => {
throw TypeError(i);
@@ -11536,12 +11536,12 @@ var init_node = __esm({
const a = new URL(o3).protocol, f2 = new URL(i).protocol;
return a === f2;
}, "isSameProtocol");
- el = (0, import_node_util2.promisify)(import_node_stream3.default.pipeline);
+ el = (0, import_node_util3.promisify)(import_node_stream3.default.pipeline);
H = Symbol("Body internals");
Nn = class Nn2 {
constructor(o3, { size: a = 0 } = {}) {
let f2 = null;
- o3 === null ? o3 = null : wi(o3) ? o3 = import_node_buffer.Buffer.from(o3.toString()) : yr(o3) || import_node_buffer.Buffer.isBuffer(o3) || (import_node_util2.types.isAnyArrayBuffer(o3) ? o3 = import_node_buffer.Buffer.from(o3) : ArrayBuffer.isView(o3) ? o3 = import_node_buffer.Buffer.from(o3.buffer, o3.byteOffset, o3.byteLength) : o3 instanceof import_node_stream3.default || (o3 instanceof br ? (o3 = Zs(o3), f2 = o3.type.split("=")[1]) : o3 = import_node_buffer.Buffer.from(String(o3))));
+ o3 === null ? o3 = null : wi(o3) ? o3 = import_node_buffer.Buffer.from(o3.toString()) : yr(o3) || import_node_buffer.Buffer.isBuffer(o3) || (import_node_util3.types.isAnyArrayBuffer(o3) ? o3 = import_node_buffer.Buffer.from(o3) : ArrayBuffer.isView(o3) ? o3 = import_node_buffer.Buffer.from(o3.buffer, o3.byteOffset, o3.byteLength) : o3 instanceof import_node_stream3.default || (o3 instanceof br ? (o3 = Zs(o3), f2 = o3.type.split("=")[1]) : o3 = import_node_buffer.Buffer.from(String(o3))));
let l = o3;
import_node_buffer.Buffer.isBuffer(o3) ? l = import_node_stream3.default.Readable.from(o3) : yr(o3) && (l = import_node_stream3.default.Readable.from(o3.stream())), this[H] = { body: o3, stream: l, boundary: f2, disturbed: false, error: null }, this.size = a, o3 instanceof import_node_stream3.default && o3.on("error", (p2) => {
const h2 = p2 instanceof ft ? p2 : new G(`Invalid response body while trying to fetch ${this.url}: ${p2.message}`, "system", p2);
@@ -11596,7 +11596,7 @@ var init_node = __esm({
};
n2(Nn, "Body");
xe = Nn;
- xe.prototype.buffer = (0, import_node_util2.deprecate)(xe.prototype.buffer, "Please use 'response.arrayBuffer()' instead of 'response.buffer()'", "node-fetch#buffer"), Object.defineProperties(xe.prototype, { body: { enumerable: true }, bodyUsed: { enumerable: true }, arrayBuffer: { enumerable: true }, blob: { enumerable: true }, json: { enumerable: true }, text: { enumerable: true }, data: { get: (0, import_node_util2.deprecate)(() => {
+ xe.prototype.buffer = (0, import_node_util3.deprecate)(xe.prototype.buffer, "Please use 'response.arrayBuffer()' instead of 'response.buffer()'", "node-fetch#buffer"), Object.defineProperties(xe.prototype, { body: { enumerable: true }, bodyUsed: { enumerable: true }, arrayBuffer: { enumerable: true }, blob: { enumerable: true }, json: { enumerable: true }, text: { enumerable: true }, data: { get: (0, import_node_util3.deprecate)(() => {
}, "data doesn't exist, use json(), text(), arrayBuffer(), or body instead", "https://github.com/node-fetch/node-fetch/issues/1000 (response)") } });
n2(zn, "consumeBody");
In = n2((i, o3) => {
@@ -11604,8 +11604,8 @@ var init_node = __esm({
if (i.bodyUsed) throw new Error("cannot clone body after it is used");
return l instanceof import_node_stream3.default && typeof l.getBoundary != "function" && (a = new import_node_stream3.PassThrough({ highWaterMark: o3 }), f2 = new import_node_stream3.PassThrough({ highWaterMark: o3 }), l.pipe(a), l.pipe(f2), i[H].stream = a, l = f2), l;
}, "clone");
- tl = (0, import_node_util2.deprecate)((i) => i.getBoundary(), "form-data doesn't follow the spec and requires special treatment. Use alternative package", "https://github.com/node-fetch/node-fetch/issues/1167");
- Ri = n2((i, o3) => i === null ? null : typeof i == "string" ? "text/plain;charset=UTF-8" : wi(i) ? "application/x-www-form-urlencoded;charset=UTF-8" : yr(i) ? i.type || null : import_node_buffer.Buffer.isBuffer(i) || import_node_util2.types.isAnyArrayBuffer(i) || ArrayBuffer.isView(i) ? null : i instanceof br ? `multipart/form-data; boundary=${o3[H].boundary}` : i && typeof i.getBoundary == "function" ? `multipart/form-data;boundary=${tl(i)}` : i instanceof import_node_stream3.default ? null : "text/plain;charset=UTF-8", "extractContentType");
+ tl = (0, import_node_util3.deprecate)((i) => i.getBoundary(), "form-data doesn't follow the spec and requires special treatment. Use alternative package", "https://github.com/node-fetch/node-fetch/issues/1167");
+ Ri = n2((i, o3) => i === null ? null : typeof i == "string" ? "text/plain;charset=UTF-8" : wi(i) ? "application/x-www-form-urlencoded;charset=UTF-8" : yr(i) ? i.type || null : import_node_buffer.Buffer.isBuffer(i) || import_node_util3.types.isAnyArrayBuffer(i) || ArrayBuffer.isView(i) ? null : i instanceof br ? `multipart/form-data; boundary=${o3[H].boundary}` : i && typeof i.getBoundary == "function" ? `multipart/form-data;boundary=${tl(i)}` : i instanceof import_node_stream3.default ? null : "text/plain;charset=UTF-8", "extractContentType");
rl = n2((i) => {
const { body: o3 } = i[H];
return o3 === null ? 0 : yr(o3) ? o3.size : import_node_buffer.Buffer.isBuffer(o3) ? o3.length : o3 && typeof o3.getLengthSync == "function" && o3.hasKnownLength && o3.hasKnownLength() ? o3.getLengthSync() : null;
@@ -11631,13 +11631,13 @@ var init_node = __esm({
if (o3 instanceof Pr2) {
const f2 = o3.raw();
for (const [l, p2] of Object.entries(f2)) a.push(...p2.map((h2) => [l, h2]));
- } else if (o3 != null) if (typeof o3 == "object" && !import_node_util2.types.isBoxedPrimitive(o3)) {
+ } else if (o3 != null) if (typeof o3 == "object" && !import_node_util3.types.isBoxedPrimitive(o3)) {
const f2 = o3[Symbol.iterator];
if (f2 == null) a.push(...Object.entries(o3));
else {
if (typeof f2 != "function") throw new TypeError("Header pairs must be iterable");
a = [...o3].map((l) => {
- if (typeof l != "object" || import_node_util2.types.isBoxedPrimitive(l)) throw new TypeError("Each header pair must be an iterable object");
+ if (typeof l != "object" || import_node_util3.types.isBoxedPrimitive(l)) throw new TypeError("Each header pair must be an iterable object");
return [...l];
}).map((l) => {
if (l.length !== 2) throw new TypeError("Each header pair must be a name/value tuple");
@@ -11775,7 +11775,7 @@ var init_node = __esm({
n2(cl, "parseReferrerPolicyFromHeader");
$2 = Symbol("Request internals");
qt = n2((i) => typeof i == "object" && typeof i[$2] == "object", "isRequest");
- dl = (0, import_node_util2.deprecate)(() => {
+ dl = (0, import_node_util3.deprecate)(() => {
}, ".data is not a valid RequestInit property, use .body instead", "https://github.com/node-fetch/node-fetch/issues/1000 (request)");
vr = class vr2 extends xe {
constructor(o3, a = {}) {
@@ -11866,7 +11866,7 @@ var init_node = __esm({
_l = n2((i, o3) => $n(i).then((a) => Ei(a, i, o3)), "fileFrom");
Sl = n2((i, o3) => Ei((0, import_node_fs4.statSync)(i), i, o3), "fileFromSync");
vi = n2((i, o3, a = "") => new ut([new Sr({ path: o3, size: i.size, lastModified: i.mtimeMs, start: 0 })], { type: a }), "fromBlob");
- Ei = n2((i, o3, a = "") => new qn([new Sr({ path: o3, size: i.size, lastModified: i.mtimeMs, start: 0 })], (0, import_node_path3.basename)(o3), { type: a, lastModified: i.mtimeMs }), "fromFile");
+ Ei = n2((i, o3, a = "") => new qn([new Sr({ path: o3, size: i.size, lastModified: i.mtimeMs, start: 0 })], (0, import_node_path5.basename)(o3), { type: a, lastModified: i.mtimeMs }), "fromFile");
Er = class Er2 {
constructor(o3) {
be(this, He);
@@ -12288,7 +12288,7 @@ module.exports = __toCommonJS(vendor_extra_exports);
// node_modules/globby/index.js
var import_node_process2 = __toESM(require("process"), 1);
var import_node_fs3 = __toESM(require("fs"), 1);
-var import_node_path2 = __toESM(require("path"), 1);
+var import_node_path4 = __toESM(require("path"), 1);
var import_node_stream2 = require("stream");
// node_modules/@sindresorhus/merge-streams/index.js
@@ -12536,45 +12536,6 @@ var PASSTHROUGH_LISTENERS_PER_STREAM = 1;
// node_modules/globby/index.js
var import_fast_glob2 = __toESM(require_out4(), 1);
-// node_modules/path-type/index.js
-var import_node_fs = __toESM(require("fs"), 1);
-var import_promises2 = __toESM(require("fs").promises, 1);
-function isType(fsStatType, statsMethodName, filePath) {
- return __async(this, null, function* () {
- if (typeof filePath !== "string") {
- throw new TypeError(`Expected a string, got ${typeof filePath}`);
- }
- try {
- const stats = yield import_promises2.default[fsStatType](filePath);
- return stats[statsMethodName]();
- } catch (error) {
- if (error.code === "ENOENT") {
- return false;
- }
- throw error;
- }
- });
-}
-function isTypeSync(fsStatType, statsMethodName, filePath) {
- if (typeof filePath !== "string") {
- throw new TypeError(`Expected a string, got ${typeof filePath}`);
- }
- try {
- return import_node_fs.default[fsStatType](filePath)[statsMethodName]();
- } catch (error) {
- if (error.code === "ENOENT") {
- return false;
- }
- throw error;
- }
-}
-var isFile = isType.bind(void 0, "stat", "isFile");
-var isDirectory = isType.bind(void 0, "stat", "isDirectory");
-var isSymlink = isType.bind(void 0, "lstat", "isSymbolicLink");
-var isFileSync = isTypeSync.bind(void 0, "statSync", "isFile");
-var isDirectorySync = isTypeSync.bind(void 0, "statSync", "isDirectory");
-var isSymlinkSync = isTypeSync.bind(void 0, "lstatSync", "isSymbolicLink");
-
// node_modules/unicorn-magic/node.js
var import_node_util = require("util");
var import_node_child_process = require("child_process");
@@ -12588,22 +12549,207 @@ var TEN_MEGABYTES_IN_BYTES = 10 * 1024 * 1024;
// node_modules/globby/ignore.js
var import_node_process = __toESM(require("process"), 1);
var import_node_fs2 = __toESM(require("fs"), 1);
-var import_promises3 = __toESM(require("fs").promises, 1);
-var import_node_path = __toESM(require("path"), 1);
+var import_promises2 = __toESM(require("fs").promises, 1);
+var import_node_path3 = __toESM(require("path"), 1);
var import_fast_glob = __toESM(require_out4(), 1);
var import_ignore = __toESM(require_ignore(), 1);
+// node_modules/is-path-inside/index.js
+var import_node_path = __toESM(require("path"), 1);
+function isPathInside(childPath, parentPath) {
+ const relation = import_node_path.default.relative(parentPath, childPath);
+ return Boolean(
+ relation && relation !== ".." && !relation.startsWith(`..${import_node_path.default.sep}`) && relation !== import_node_path.default.resolve(childPath)
+ );
+}
+
// node_modules/slash/index.js
-function slash(path3) {
- const isExtendedLengthPath = path3.startsWith("\\\\?\\");
+function slash(path5) {
+ const isExtendedLengthPath = path5.startsWith("\\\\?\\");
if (isExtendedLengthPath) {
- return path3;
+ return path5;
}
- return path3.replace(/\\/g, "/");
+ return path5.replace(/\\/g, "/");
}
// node_modules/globby/utilities.js
+var import_node_fs = __toESM(require("fs"), 1);
+var import_node_path2 = __toESM(require("path"), 1);
+var import_node_util2 = require("util");
var isNegativePattern = (pattern) => pattern[0] === "!";
+var bindFsMethod = (object, methodName) => {
+ const method = object == null ? void 0 : object[methodName];
+ return typeof method === "function" ? method.bind(object) : void 0;
+};
+var promisifyFsMethod = (object, methodName) => {
+ const method = object == null ? void 0 : object[methodName];
+ if (typeof method !== "function") {
+ return void 0;
+ }
+ return (0, import_node_util2.promisify)(method.bind(object));
+};
+var normalizeDirectoryPatternForFastGlob = (pattern) => {
+ if (!pattern.endsWith("/")) {
+ return pattern;
+ }
+ const trimmedPattern = pattern.replace(/\/+$/u, "");
+ if (!trimmedPattern) {
+ return "/**";
+ }
+ if (trimmedPattern === "**") {
+ return "**/**";
+ }
+ const hasLeadingSlash = trimmedPattern.startsWith("/");
+ const patternBody = hasLeadingSlash ? trimmedPattern.slice(1) : trimmedPattern;
+ const hasInnerSlash = patternBody.includes("/");
+ const needsRecursivePrefix = !hasLeadingSlash && !hasInnerSlash && !trimmedPattern.startsWith("**/");
+ const recursivePrefix = needsRecursivePrefix ? "**/" : "";
+ return `${recursivePrefix}${trimmedPattern}/**`;
+};
+var getParentDirectoryPrefix = (pattern) => {
+ const normalizedPattern = isNegativePattern(pattern) ? pattern.slice(1) : pattern;
+ const match = normalizedPattern.match(/^(\.\.\/)+/);
+ return match ? match[0] : "";
+};
+var adjustIgnorePatternsForParentDirectories = (patterns, ignorePatterns) => {
+ if (patterns.length === 0 || ignorePatterns.length === 0) {
+ return ignorePatterns;
+ }
+ const parentPrefixes = patterns.map((pattern) => getParentDirectoryPrefix(pattern));
+ const firstPrefix = parentPrefixes[0];
+ if (!firstPrefix) {
+ return ignorePatterns;
+ }
+ const allSamePrefix = parentPrefixes.every((prefix) => prefix === firstPrefix);
+ if (!allSamePrefix) {
+ return ignorePatterns;
+ }
+ return ignorePatterns.map((pattern) => {
+ if (pattern.startsWith("**/") && !pattern.startsWith("../")) {
+ return firstPrefix + pattern;
+ }
+ return pattern;
+ });
+};
+var getAsyncStatMethod = (fsImplementation) => {
+ var _a2;
+ return (_a2 = bindFsMethod(fsImplementation == null ? void 0 : fsImplementation.promises, "stat")) != null ? _a2 : bindFsMethod(import_node_fs.default.promises, "stat");
+};
+var getStatSyncMethod = (fsImplementation) => {
+ if (fsImplementation) {
+ return bindFsMethod(fsImplementation, "statSync");
+ }
+ return bindFsMethod(import_node_fs.default, "statSync");
+};
+var pathHasGitDirectory = (stats) => {
+ var _a2, _b2;
+ return Boolean(((_a2 = stats == null ? void 0 : stats.isDirectory) == null ? void 0 : _a2.call(stats)) || ((_b2 = stats == null ? void 0 : stats.isFile) == null ? void 0 : _b2.call(stats)));
+};
+var buildPathChain = (startPath, rootPath) => {
+ const chain = [];
+ let currentPath = startPath;
+ chain.push(currentPath);
+ while (currentPath !== rootPath) {
+ const parentPath = import_node_path2.default.dirname(currentPath);
+ if (parentPath === currentPath) {
+ break;
+ }
+ currentPath = parentPath;
+ chain.push(currentPath);
+ }
+ return chain;
+};
+var findGitRootInChain = (paths, statMethod) => __async(null, null, function* () {
+ for (const directory of paths) {
+ const gitPath = import_node_path2.default.join(directory, ".git");
+ try {
+ const stats = yield statMethod(gitPath);
+ if (pathHasGitDirectory(stats)) {
+ return directory;
+ }
+ } catch (e) {
+ }
+ }
+ return void 0;
+});
+var findGitRootSyncUncached = (cwd, fsImplementation) => {
+ const statSyncMethod = getStatSyncMethod(fsImplementation);
+ if (!statSyncMethod) {
+ return void 0;
+ }
+ const currentPath = import_node_path2.default.resolve(cwd);
+ const { root } = import_node_path2.default.parse(currentPath);
+ const chain = buildPathChain(currentPath, root);
+ for (const directory of chain) {
+ const gitPath = import_node_path2.default.join(directory, ".git");
+ try {
+ const stats = statSyncMethod(gitPath);
+ if (pathHasGitDirectory(stats)) {
+ return directory;
+ }
+ } catch (e) {
+ }
+ }
+ return void 0;
+};
+var findGitRootSync = (cwd, fsImplementation) => {
+ if (typeof cwd !== "string") {
+ throw new TypeError("cwd must be a string");
+ }
+ return findGitRootSyncUncached(cwd, fsImplementation);
+};
+var findGitRootAsyncUncached = (cwd, fsImplementation) => __async(null, null, function* () {
+ const statMethod = getAsyncStatMethod(fsImplementation);
+ if (!statMethod) {
+ return findGitRootSync(cwd, fsImplementation);
+ }
+ const currentPath = import_node_path2.default.resolve(cwd);
+ const { root } = import_node_path2.default.parse(currentPath);
+ const chain = buildPathChain(currentPath, root);
+ return findGitRootInChain(chain, statMethod);
+});
+var findGitRoot = (cwd, fsImplementation) => __async(null, null, function* () {
+ if (typeof cwd !== "string") {
+ throw new TypeError("cwd must be a string");
+ }
+ return findGitRootAsyncUncached(cwd, fsImplementation);
+});
+var isWithinGitRoot = (gitRoot, cwd) => {
+ const resolvedGitRoot = import_node_path2.default.resolve(gitRoot);
+ const resolvedCwd = import_node_path2.default.resolve(cwd);
+ return resolvedCwd === resolvedGitRoot || isPathInside(resolvedCwd, resolvedGitRoot);
+};
+var getParentGitignorePaths = (gitRoot, cwd) => {
+ if (gitRoot && typeof gitRoot !== "string") {
+ throw new TypeError("gitRoot must be a string or undefined");
+ }
+ if (typeof cwd !== "string") {
+ throw new TypeError("cwd must be a string");
+ }
+ if (!gitRoot) {
+ return [];
+ }
+ if (!isWithinGitRoot(gitRoot, cwd)) {
+ return [];
+ }
+ const chain = buildPathChain(import_node_path2.default.resolve(cwd), import_node_path2.default.resolve(gitRoot));
+ return [...chain].reverse().map((directory) => import_node_path2.default.join(directory, ".gitignore"));
+};
+var convertPatternsForFastGlob = (patterns, usingGitRoot, normalizeDirectoryPatternForFastGlob2) => {
+ if (usingGitRoot) {
+ return [];
+ }
+ const result = [];
+ let hasNegations = false;
+ for (const pattern of patterns) {
+ if (isNegativePattern(pattern)) {
+ hasNegations = true;
+ break;
+ }
+ result.push(normalizeDirectoryPatternForFastGlob2(pattern));
+ }
+ return hasNegations ? [] : result;
+};
// node_modules/globby/ignore.js
var defaultIgnoredDirectories = [
@@ -12617,6 +12763,81 @@ var ignoreFilesGlobOptions = {
dot: true
};
var GITIGNORE_FILES_PATTERN = "**/.gitignore";
+var getReadFileMethod = (fsImplementation) => {
+ var _a2, _b2;
+ return (_b2 = (_a2 = bindFsMethod(fsImplementation == null ? void 0 : fsImplementation.promises, "readFile")) != null ? _a2 : bindFsMethod(import_promises2.default, "readFile")) != null ? _b2 : promisifyFsMethod(fsImplementation, "readFile");
+};
+var getReadFileSyncMethod = (fsImplementation) => {
+ var _a2;
+ return (_a2 = bindFsMethod(fsImplementation, "readFileSync")) != null ? _a2 : bindFsMethod(import_node_fs2.default, "readFileSync");
+};
+var shouldSkipIgnoreFileError = (error, suppressErrors) => {
+ if (!error) {
+ return Boolean(suppressErrors);
+ }
+ if (error.code === "ENOENT" || error.code === "ENOTDIR") {
+ return true;
+ }
+ return Boolean(suppressErrors);
+};
+var createIgnoreFileReadError = (filePath, error) => {
+ if (error instanceof Error) {
+ error.message = `Failed to read ignore file at ${filePath}: ${error.message}`;
+ return error;
+ }
+ return new Error(`Failed to read ignore file at ${filePath}: ${String(error)}`);
+};
+var processIgnoreFileCore = (filePath, readMethod, suppressErrors) => {
+ try {
+ const content = readMethod(filePath, "utf8");
+ return { filePath, content };
+ } catch (error) {
+ if (shouldSkipIgnoreFileError(error, suppressErrors)) {
+ return void 0;
+ }
+ throw createIgnoreFileReadError(filePath, error);
+ }
+};
+var readIgnoreFilesSafely = (paths, readFileMethod, suppressErrors) => __async(null, null, function* () {
+ const fileResults = yield Promise.all(paths.map((filePath) => __async(null, null, function* () {
+ try {
+ const content = yield readFileMethod(filePath, "utf8");
+ return { filePath, content };
+ } catch (error) {
+ if (shouldSkipIgnoreFileError(error, suppressErrors)) {
+ return void 0;
+ }
+ throw createIgnoreFileReadError(filePath, error);
+ }
+ })));
+ return fileResults.filter(Boolean);
+});
+var readIgnoreFilesSafelySync = (paths, readFileSyncMethod, suppressErrors) => paths.map((filePath) => processIgnoreFileCore(filePath, readFileSyncMethod, suppressErrors)).filter(Boolean);
+var dedupePaths = (paths) => {
+ const seen = /* @__PURE__ */ new Set();
+ return paths.filter((filePath) => {
+ if (seen.has(filePath)) {
+ return false;
+ }
+ seen.add(filePath);
+ return true;
+ });
+};
+var globIgnoreFiles = (globFunction, patterns, normalizedOptions) => globFunction(patterns, __spreadValues(__spreadValues({}, normalizedOptions), ignoreFilesGlobOptions));
+var getParentIgnorePaths = (gitRoot, normalizedOptions) => gitRoot ? getParentGitignorePaths(gitRoot, normalizedOptions.cwd) : [];
+var combineIgnoreFilePaths = (gitRoot, normalizedOptions, childPaths) => dedupePaths([
+ ...getParentIgnorePaths(gitRoot, normalizedOptions),
+ ...childPaths
+]);
+var buildIgnoreResult = (files, normalizedOptions, gitRoot) => {
+ const baseDir = gitRoot || normalizedOptions.cwd;
+ const patterns = getPatternsFromIgnoreFiles(files, baseDir);
+ return {
+ patterns,
+ predicate: createIgnorePredicate(patterns, normalizedOptions.cwd, baseDir),
+ usingGitRoot: Boolean(gitRoot && gitRoot !== normalizedOptions.cwd)
+ };
+};
var applyBaseToPattern = (pattern, base) => {
if (!base) {
return pattern;
@@ -12627,25 +12848,25 @@ var applyBaseToPattern = (pattern, base) => {
const hasNonTrailingSlash = slashIndex !== -1 && slashIndex !== cleanPattern.length - 1;
let result;
if (!hasNonTrailingSlash) {
- result = import_node_path.default.posix.join(base, "**", cleanPattern);
+ result = import_node_path3.default.posix.join(base, "**", cleanPattern);
} else if (cleanPattern.startsWith("/")) {
- result = import_node_path.default.posix.join(base, cleanPattern.slice(1));
+ result = import_node_path3.default.posix.join(base, cleanPattern.slice(1));
} else {
- result = import_node_path.default.posix.join(base, cleanPattern);
+ result = import_node_path3.default.posix.join(base, cleanPattern);
}
return isNegative ? "!" + result : result;
};
var parseIgnoreFile = (file, cwd) => {
- const base = slash(import_node_path.default.relative(cwd, import_node_path.default.dirname(file.filePath)));
+ const base = slash(import_node_path3.default.relative(cwd, import_node_path3.default.dirname(file.filePath)));
return file.content.split(/\r?\n/).filter((line) => line && !line.startsWith("#")).map((pattern) => applyBaseToPattern(pattern, base));
};
var toRelativePath = (fileOrDirectory, cwd) => {
- cwd = slash(cwd);
- if (import_node_path.default.isAbsolute(fileOrDirectory)) {
- if (slash(fileOrDirectory).startsWith(cwd)) {
- return import_node_path.default.relative(cwd, fileOrDirectory);
+ if (import_node_path3.default.isAbsolute(fileOrDirectory)) {
+ const relativePath = import_node_path3.default.relative(cwd, fileOrDirectory);
+ if (relativePath && !isPathInside(fileOrDirectory, cwd)) {
+ return void 0;
}
- throw new Error(`Path ${fileOrDirectory} is not in cwd ${cwd}`);
+ return relativePath;
}
if (fileOrDirectory.startsWith("./")) {
return fileOrDirectory.slice(2);
@@ -12655,56 +12876,81 @@ var toRelativePath = (fileOrDirectory, cwd) => {
}
return fileOrDirectory;
};
-var getIsIgnoredPredicate = (files, cwd) => {
- const patterns = files.flatMap((file) => parseIgnoreFile(file, cwd));
+var createIgnorePredicate = (patterns, cwd, baseDir) => {
const ignores = (0, import_ignore.default)().add(patterns);
+ const resolvedCwd = import_node_path3.default.normalize(import_node_path3.default.resolve(cwd));
+ const resolvedBaseDir = import_node_path3.default.normalize(import_node_path3.default.resolve(baseDir));
return (fileOrDirectory) => {
fileOrDirectory = toPath(fileOrDirectory);
- fileOrDirectory = toRelativePath(fileOrDirectory, cwd);
- if (fileOrDirectory === void 0) {
+ const normalizedPath = import_node_path3.default.normalize(import_node_path3.default.resolve(fileOrDirectory));
+ if (normalizedPath === resolvedCwd) {
return false;
}
- return fileOrDirectory ? ignores.ignores(slash(fileOrDirectory)) : false;
+ const relativePath = toRelativePath(fileOrDirectory, resolvedBaseDir);
+ if (relativePath === void 0) {
+ return false;
+ }
+ return relativePath ? ignores.ignores(slash(relativePath)) : false;
};
};
var normalizeOptions = (options = {}) => {
- var _a2, _b2;
+ var _a2, _b2, _c, _d;
+ const ignoreOption = options.ignore ? Array.isArray(options.ignore) ? options.ignore : [options.ignore] : [];
+ const cwd = (_a2 = toPath(options.cwd)) != null ? _a2 : import_node_process.default.cwd();
+ const deep = typeof options.deep === "number" ? Math.max(0, options.deep) + 1 : Number.POSITIVE_INFINITY;
return {
- cwd: (_a2 = toPath(options.cwd)) != null ? _a2 : import_node_process.default.cwd(),
- suppressErrors: Boolean(options.suppressErrors),
- deep: typeof options.deep === "number" ? options.deep : Number.POSITIVE_INFINITY,
- ignore: [...(_b2 = options.ignore) != null ? _b2 : [], ...defaultIgnoredDirectories]
+ cwd,
+ suppressErrors: (_b2 = options.suppressErrors) != null ? _b2 : false,
+ deep,
+ ignore: [...ignoreOption, ...defaultIgnoredDirectories],
+ followSymbolicLinks: (_c = options.followSymbolicLinks) != null ? _c : true,
+ concurrency: options.concurrency,
+ throwErrorOnBrokenSymbolicLink: (_d = options.throwErrorOnBrokenSymbolicLink) != null ? _d : false,
+ fs: options.fs
};
};
+var collectIgnoreFileArtifactsAsync = (patterns, options, includeParentIgnoreFiles) => __async(null, null, function* () {
+ const normalizedOptions = normalizeOptions(options);
+ const childPaths = yield globIgnoreFiles(import_fast_glob.default, patterns, normalizedOptions);
+ const gitRoot = includeParentIgnoreFiles ? yield findGitRoot(normalizedOptions.cwd, normalizedOptions.fs) : void 0;
+ const allPaths = combineIgnoreFilePaths(gitRoot, normalizedOptions, childPaths);
+ const readFileMethod = getReadFileMethod(normalizedOptions.fs);
+ const files = yield readIgnoreFilesSafely(allPaths, readFileMethod, normalizedOptions.suppressErrors);
+ return { files, normalizedOptions, gitRoot };
+});
+var collectIgnoreFileArtifactsSync = (patterns, options, includeParentIgnoreFiles) => {
+ const normalizedOptions = normalizeOptions(options);
+ const childPaths = globIgnoreFiles(import_fast_glob.default.sync, patterns, normalizedOptions);
+ const gitRoot = includeParentIgnoreFiles ? findGitRootSync(normalizedOptions.cwd, normalizedOptions.fs) : void 0;
+ const allPaths = combineIgnoreFilePaths(gitRoot, normalizedOptions, childPaths);
+ const readFileSyncMethod = getReadFileSyncMethod(normalizedOptions.fs);
+ const files = readIgnoreFilesSafelySync(allPaths, readFileSyncMethod, normalizedOptions.suppressErrors);
+ return { files, normalizedOptions, gitRoot };
+};
var isIgnoredByIgnoreFiles = (patterns, options) => __async(null, null, function* () {
- const { cwd, suppressErrors, deep, ignore } = normalizeOptions(options);
- const paths = yield (0, import_fast_glob.default)(patterns, __spreadValues({
- cwd,
- suppressErrors,
- deep,
- ignore
- }, ignoreFilesGlobOptions));
- const files = yield Promise.all(paths.map((filePath) => __async(null, null, function* () {
- return {
- filePath,
- content: yield import_promises3.default.readFile(filePath, "utf8")
- };
- })));
- return getIsIgnoredPredicate(files, cwd);
+ const { files, normalizedOptions, gitRoot } = yield collectIgnoreFileArtifactsAsync(patterns, options, false);
+ return buildIgnoreResult(files, normalizedOptions, gitRoot).predicate;
});
var isIgnoredByIgnoreFilesSync = (patterns, options) => {
- const { cwd, suppressErrors, deep, ignore } = normalizeOptions(options);
- const paths = import_fast_glob.default.sync(patterns, __spreadValues({
- cwd,
- suppressErrors,
- deep,
- ignore
- }, ignoreFilesGlobOptions));
- const files = paths.map((filePath) => ({
- filePath,
- content: import_node_fs2.default.readFileSync(filePath, "utf8")
- }));
- return getIsIgnoredPredicate(files, cwd);
+ const { files, normalizedOptions, gitRoot } = collectIgnoreFileArtifactsSync(patterns, options, false);
+ return buildIgnoreResult(files, normalizedOptions, gitRoot).predicate;
+};
+var getPatternsFromIgnoreFiles = (files, baseDir) => files.flatMap((file) => parseIgnoreFile(file, baseDir));
+var getIgnorePatternsAndPredicate = (patterns, options, includeParentIgnoreFiles = false) => __async(null, null, function* () {
+ const { files, normalizedOptions, gitRoot } = yield collectIgnoreFileArtifactsAsync(
+ patterns,
+ options,
+ includeParentIgnoreFiles
+ );
+ return buildIgnoreResult(files, normalizedOptions, gitRoot);
+});
+var getIgnorePatternsAndPredicateSync = (patterns, options, includeParentIgnoreFiles = false) => {
+ const { files, normalizedOptions, gitRoot } = collectIgnoreFileArtifactsSync(
+ patterns,
+ options,
+ includeParentIgnoreFiles
+ );
+ return buildIgnoreResult(files, normalizedOptions, gitRoot);
};
var isGitIgnored = (options) => isIgnoredByIgnoreFiles(GITIGNORE_FILES_PATTERN, options);
var isGitIgnoredSync = (options) => isIgnoredByIgnoreFilesSync(GITIGNORE_FILES_PATTERN, options);
@@ -12715,9 +12961,33 @@ var assertPatternsInput = (patterns) => {
throw new TypeError("Patterns must be a string or an array of strings");
}
};
+var getStatMethod = (fsImplementation) => {
+ var _a2, _b2;
+ return (_b2 = (_a2 = bindFsMethod(fsImplementation == null ? void 0 : fsImplementation.promises, "stat")) != null ? _a2 : bindFsMethod(import_node_fs3.default.promises, "stat")) != null ? _b2 : promisifyFsMethod(fsImplementation, "stat");
+};
+var getStatSyncMethod2 = (fsImplementation) => {
+ var _a2;
+ return (_a2 = bindFsMethod(fsImplementation, "statSync")) != null ? _a2 : bindFsMethod(import_node_fs3.default, "statSync");
+};
+var isDirectory = (path5, fsImplementation) => __async(null, null, function* () {
+ try {
+ const stats = yield getStatMethod(fsImplementation)(path5);
+ return stats.isDirectory();
+ } catch (e) {
+ return false;
+ }
+});
+var isDirectorySync = (path5, fsImplementation) => {
+ try {
+ const stats = getStatSyncMethod2(fsImplementation)(path5);
+ return stats.isDirectory();
+ } catch (e) {
+ return false;
+ }
+};
var normalizePathForDirectoryGlob = (filePath, cwd) => {
- const path3 = isNegativePattern(filePath) ? filePath.slice(1) : filePath;
- return import_node_path2.default.isAbsolute(path3) ? path3 : import_node_path2.default.join(cwd, path3);
+ const path5 = isNegativePattern(filePath) ? filePath.slice(1) : filePath;
+ return import_node_path4.default.isAbsolute(path5) ? path5 : import_node_path4.default.join(cwd, path5);
};
var shouldExpandGlobstarDirectory = (pattern) => {
const match = pattern == null ? void 0 : pattern.match(/\*\*\/([^/]+)$/);
@@ -12726,17 +12996,18 @@ var shouldExpandGlobstarDirectory = (pattern) => {
}
const dirname = match[1];
const hasWildcards = /[*?[\]{}]/.test(dirname);
- const hasExtension = import_node_path2.default.extname(dirname) && !dirname.startsWith(".");
+ const hasExtension = import_node_path4.default.extname(dirname) && !dirname.startsWith(".");
return !hasWildcards && !hasExtension;
};
var getDirectoryGlob = ({ directoryPath, files, extensions }) => {
const extensionGlob = (extensions == null ? void 0 : extensions.length) > 0 ? `.${extensions.length > 1 ? `{${extensions.join(",")}}` : extensions[0]}` : "";
- return files ? files.map((file) => import_node_path2.default.posix.join(directoryPath, `**/${import_node_path2.default.extname(file) ? file : `${file}${extensionGlob}`}`)) : [import_node_path2.default.posix.join(directoryPath, `**${extensionGlob ? `/*${extensionGlob}` : ""}`)];
+ return files ? files.map((file) => import_node_path4.default.posix.join(directoryPath, `**/${import_node_path4.default.extname(file) ? file : `${file}${extensionGlob}`}`)) : [import_node_path4.default.posix.join(directoryPath, `**${extensionGlob ? `/*${extensionGlob}` : ""}`)];
};
var directoryToGlob = (_0, ..._1) => __async(null, [_0, ..._1], function* (directoryPaths, {
cwd = import_node_process2.default.cwd(),
files,
- extensions
+ extensions,
+ fs: fsImplementation
} = {}) {
const globs = yield Promise.all(directoryPaths.map((directoryPath) => __async(null, null, function* () {
const checkPattern = isNegativePattern(directoryPath) ? directoryPath.slice(1) : directoryPath;
@@ -12744,49 +13015,51 @@ var directoryToGlob = (_0, ..._1) => __async(null, [_0, ..._1], function* (direc
return getDirectoryGlob({ directoryPath, files, extensions });
}
const pathToCheck = normalizePathForDirectoryGlob(directoryPath, cwd);
- return (yield isDirectory(pathToCheck)) ? getDirectoryGlob({ directoryPath, files, extensions }) : directoryPath;
+ return (yield isDirectory(pathToCheck, fsImplementation)) ? getDirectoryGlob({ directoryPath, files, extensions }) : directoryPath;
})));
return globs.flat();
});
var directoryToGlobSync = (directoryPaths, {
cwd = import_node_process2.default.cwd(),
files,
- extensions
+ extensions,
+ fs: fsImplementation
} = {}) => directoryPaths.flatMap((directoryPath) => {
const checkPattern = isNegativePattern(directoryPath) ? directoryPath.slice(1) : directoryPath;
if (shouldExpandGlobstarDirectory(checkPattern)) {
return getDirectoryGlob({ directoryPath, files, extensions });
}
const pathToCheck = normalizePathForDirectoryGlob(directoryPath, cwd);
- return isDirectorySync(pathToCheck) ? getDirectoryGlob({ directoryPath, files, extensions }) : directoryPath;
+ return isDirectorySync(pathToCheck, fsImplementation) ? getDirectoryGlob({ directoryPath, files, extensions }) : directoryPath;
});
var toPatternsArray = (patterns) => {
patterns = [...new Set([patterns].flat())];
assertPatternsInput(patterns);
return patterns;
};
-var checkCwdOption = (cwd) => {
- if (!cwd) {
+var checkCwdOption = (cwd, fsImplementation = import_node_fs3.default) => {
+ if (!cwd || !fsImplementation.statSync) {
return;
}
- let stat;
+ let stats;
try {
- stat = import_node_fs3.default.statSync(cwd);
+ stats = fsImplementation.statSync(cwd);
} catch (e) {
return;
}
- if (!stat.isDirectory()) {
- throw new Error("The `cwd` option must be a path to a directory");
+ if (!stats.isDirectory()) {
+ throw new Error(`The \`cwd\` option must be a path to a directory, got: ${cwd}`);
}
};
var normalizeOptions2 = (options = {}) => {
- var _a2, _b2;
+ var _a2;
+ const ignore = options.ignore ? Array.isArray(options.ignore) ? options.ignore : [options.ignore] : [];
options = __spreadProps(__spreadValues({}, options), {
- ignore: (_a2 = options.ignore) != null ? _a2 : [],
- expandDirectories: (_b2 = options.expandDirectories) != null ? _b2 : true,
+ ignore,
+ expandDirectories: (_a2 = options.expandDirectories) != null ? _a2 : true,
cwd: toPath(options.cwd)
});
- checkCwdOption(options.cwd);
+ checkCwdOption(options.cwd, options.fs);
return options;
};
var normalizeArguments = (function_) => (patterns, options) => __async(null, null, function* () {
@@ -12801,28 +13074,76 @@ var getIgnoreFilesPatterns = (options) => {
}
return patterns;
};
-var getFilter = (options) => __async(null, null, function* () {
+var applyIgnoreFilesAndGetFilter = (options) => __async(null, null, function* () {
const ignoreFilesPatterns = getIgnoreFilesPatterns(options);
- return createFilterFunction(ignoreFilesPatterns.length > 0 && (yield isIgnoredByIgnoreFiles(ignoreFilesPatterns, options)));
+ if (ignoreFilesPatterns.length === 0) {
+ return {
+ options,
+ filter: createFilterFunction(false, options.cwd)
+ };
+ }
+ const includeParentIgnoreFiles = options.gitignore === true;
+ const { patterns, predicate, usingGitRoot } = yield getIgnorePatternsAndPredicate(ignoreFilesPatterns, options, includeParentIgnoreFiles);
+ const patternsForFastGlob = convertPatternsForFastGlob(patterns, usingGitRoot, normalizeDirectoryPatternForFastGlob);
+ const modifiedOptions = __spreadProps(__spreadValues({}, options), {
+ ignore: [...options.ignore, ...patternsForFastGlob]
+ });
+ return {
+ options: modifiedOptions,
+ filter: createFilterFunction(predicate, options.cwd)
+ };
});
-var getFilterSync = (options) => {
+var applyIgnoreFilesAndGetFilterSync = (options) => {
const ignoreFilesPatterns = getIgnoreFilesPatterns(options);
- return createFilterFunction(ignoreFilesPatterns.length > 0 && isIgnoredByIgnoreFilesSync(ignoreFilesPatterns, options));
+ if (ignoreFilesPatterns.length === 0) {
+ return {
+ options,
+ filter: createFilterFunction(false, options.cwd)
+ };
+ }
+ const includeParentIgnoreFiles = options.gitignore === true;
+ const { patterns, predicate, usingGitRoot } = getIgnorePatternsAndPredicateSync(ignoreFilesPatterns, options, includeParentIgnoreFiles);
+ const patternsForFastGlob = convertPatternsForFastGlob(patterns, usingGitRoot, normalizeDirectoryPatternForFastGlob);
+ const modifiedOptions = __spreadProps(__spreadValues({}, options), {
+ ignore: [...options.ignore, ...patternsForFastGlob]
+ });
+ return {
+ options: modifiedOptions,
+ filter: createFilterFunction(predicate, options.cwd)
+ };
};
-var createFilterFunction = (isIgnored) => {
+var createFilterFunction = (isIgnored, cwd) => {
const seen = /* @__PURE__ */ new Set();
+ const basePath = cwd || import_node_process2.default.cwd();
+ const pathCache = /* @__PURE__ */ new Map();
return (fastGlobResult) => {
var _a2;
- const pathKey = import_node_path2.default.normalize((_a2 = fastGlobResult.path) != null ? _a2 : fastGlobResult);
- if (seen.has(pathKey) || isIgnored && isIgnored(pathKey)) {
+ const pathKey = import_node_path4.default.normalize((_a2 = fastGlobResult.path) != null ? _a2 : fastGlobResult);
+ if (seen.has(pathKey)) {
return false;
}
+ if (isIgnored) {
+ let absolutePath = pathCache.get(pathKey);
+ if (absolutePath === void 0) {
+ absolutePath = import_node_path4.default.isAbsolute(pathKey) ? pathKey : import_node_path4.default.resolve(basePath, pathKey);
+ pathCache.set(pathKey, absolutePath);
+ if (pathCache.size > 1e4) {
+ pathCache.clear();
+ }
+ }
+ if (isIgnored(absolutePath)) {
+ return false;
+ }
+ }
seen.add(pathKey);
return true;
};
};
var unionFastGlobResults = (results, filter) => results.flat().filter((fastGlobResult) => filter(fastGlobResult));
var convertNegativePatterns = (patterns, options) => {
+ if (patterns.length > 0 && patterns.every((pattern) => isNegativePattern(pattern))) {
+ patterns = ["**/*", ...patterns];
+ }
const tasks = [];
while (patterns.length > 0) {
const index = patterns.findIndex((pattern) => isNegativePattern(pattern));
@@ -12849,14 +13170,22 @@ var convertNegativePatterns = (patterns, options) => {
}
return tasks;
};
+var applyParentDirectoryIgnoreAdjustments = (tasks) => tasks.map((task) => ({
+ patterns: task.patterns,
+ options: __spreadProps(__spreadValues({}, task.options), {
+ ignore: adjustIgnorePatternsForParentDirectories(task.patterns, task.options.ignore)
+ })
+}));
var normalizeExpandDirectoriesOption = (options, cwd) => __spreadValues(__spreadValues({}, cwd ? { cwd } : {}), Array.isArray(options) ? { files: options } : options);
var generateTasks = (patterns, options) => __async(null, null, function* () {
const globTasks = convertNegativePatterns(patterns, options);
- const { cwd, expandDirectories } = options;
+ const { cwd, expandDirectories, fs: fsImplementation } = options;
if (!expandDirectories) {
- return globTasks;
+ return applyParentDirectoryIgnoreAdjustments(globTasks);
}
- const directoryToGlobOptions = normalizeExpandDirectoriesOption(expandDirectories, cwd);
+ const directoryToGlobOptions = __spreadProps(__spreadValues({}, normalizeExpandDirectoriesOption(expandDirectories, cwd)), {
+ fs: fsImplementation
+ });
return Promise.all(globTasks.map((task) => __async(null, null, function* () {
let { patterns: patterns2, options: options2 } = task;
[
@@ -12864,45 +13193,44 @@ var generateTasks = (patterns, options) => __async(null, null, function* () {
options2.ignore
] = yield Promise.all([
directoryToGlob(patterns2, directoryToGlobOptions),
- directoryToGlob(options2.ignore, { cwd })
+ directoryToGlob(options2.ignore, { cwd, fs: fsImplementation })
]);
+ options2.ignore = adjustIgnorePatternsForParentDirectories(patterns2, options2.ignore);
return { patterns: patterns2, options: options2 };
})));
});
var generateTasksSync = (patterns, options) => {
const globTasks = convertNegativePatterns(patterns, options);
- const { cwd, expandDirectories } = options;
+ const { cwd, expandDirectories, fs: fsImplementation } = options;
if (!expandDirectories) {
- return globTasks;
+ return applyParentDirectoryIgnoreAdjustments(globTasks);
}
- const directoryToGlobSyncOptions = normalizeExpandDirectoriesOption(expandDirectories, cwd);
+ const directoryToGlobSyncOptions = __spreadProps(__spreadValues({}, normalizeExpandDirectoriesOption(expandDirectories, cwd)), {
+ fs: fsImplementation
+ });
return globTasks.map((task) => {
let { patterns: patterns2, options: options2 } = task;
patterns2 = directoryToGlobSync(patterns2, directoryToGlobSyncOptions);
- options2.ignore = directoryToGlobSync(options2.ignore, { cwd });
+ options2.ignore = directoryToGlobSync(options2.ignore, { cwd, fs: fsImplementation });
+ options2.ignore = adjustIgnorePatternsForParentDirectories(patterns2, options2.ignore);
return { patterns: patterns2, options: options2 };
});
};
var globby = normalizeArguments((patterns, options) => __async(null, null, function* () {
- const [
- tasks,
- filter
- ] = yield Promise.all([
- generateTasks(patterns, options),
- getFilter(options)
- ]);
+ const { options: modifiedOptions, filter } = yield applyIgnoreFilesAndGetFilter(options);
+ const tasks = yield generateTasks(patterns, modifiedOptions);
const results = yield Promise.all(tasks.map((task) => (0, import_fast_glob2.default)(task.patterns, task.options)));
return unionFastGlobResults(results, filter);
}));
var globbySync = normalizeArgumentsSync((patterns, options) => {
- const tasks = generateTasksSync(patterns, options);
- const filter = getFilterSync(options);
+ const { options: modifiedOptions, filter } = applyIgnoreFilesAndGetFilterSync(options);
+ const tasks = generateTasksSync(patterns, modifiedOptions);
const results = tasks.map((task) => import_fast_glob2.default.sync(task.patterns, task.options));
return unionFastGlobResults(results, filter);
});
var globbyStream = normalizeArgumentsSync((patterns, options) => {
- const tasks = generateTasksSync(patterns, options);
- const filter = getFilterSync(options);
+ const { options: modifiedOptions, filter } = applyIgnoreFilesAndGetFilterSync(options);
+ const tasks = generateTasksSync(patterns, modifiedOptions);
const streams = tasks.map((task) => import_fast_glob2.default.stream(task.patterns, task.options));
if (streams.length === 0) {
return import_node_stream2.Readable.from([]);
@@ -13036,17 +13364,17 @@ function visit(node, visitor) {
visit.BREAK = BREAK;
visit.SKIP = SKIP;
visit.REMOVE = REMOVE;
-function visit_(key, node, visitor, path3) {
- const ctrl = callVisitor(key, node, visitor, path3);
+function visit_(key, node, visitor, path5) {
+ const ctrl = callVisitor(key, node, visitor, path5);
if (isNode(ctrl) || isPair(ctrl)) {
- replaceNode(key, path3, ctrl);
- return visit_(key, ctrl, visitor, path3);
+ replaceNode(key, path5, ctrl);
+ return visit_(key, ctrl, visitor, path5);
}
if (typeof ctrl !== "symbol") {
if (isCollection(node)) {
- path3 = Object.freeze(path3.concat(node));
+ path5 = Object.freeze(path5.concat(node));
for (let i = 0; i < node.items.length; ++i) {
- const ci2 = visit_(i, node.items[i], visitor, path3);
+ const ci2 = visit_(i, node.items[i], visitor, path5);
if (typeof ci2 === "number")
i = ci2 - 1;
else if (ci2 === BREAK)
@@ -13057,13 +13385,13 @@ function visit_(key, node, visitor, path3) {
}
}
} else if (isPair(node)) {
- path3 = Object.freeze(path3.concat(node));
- const ck = visit_("key", node.key, visitor, path3);
+ path5 = Object.freeze(path5.concat(node));
+ const ck = visit_("key", node.key, visitor, path5);
if (ck === BREAK)
return BREAK;
else if (ck === REMOVE)
node.key = null;
- const cv = visit_("value", node.value, visitor, path3);
+ const cv = visit_("value", node.value, visitor, path5);
if (cv === BREAK)
return BREAK;
else if (cv === REMOVE)
@@ -13086,18 +13414,18 @@ function visitAsync(node, visitor) {
visitAsync.BREAK = BREAK;
visitAsync.SKIP = SKIP;
visitAsync.REMOVE = REMOVE;
-function visitAsync_(key, node, visitor, path3) {
+function visitAsync_(key, node, visitor, path5) {
return __async(this, null, function* () {
- const ctrl = yield callVisitor(key, node, visitor, path3);
+ const ctrl = yield callVisitor(key, node, visitor, path5);
if (isNode(ctrl) || isPair(ctrl)) {
- replaceNode(key, path3, ctrl);
- return visitAsync_(key, ctrl, visitor, path3);
+ replaceNode(key, path5, ctrl);
+ return visitAsync_(key, ctrl, visitor, path5);
}
if (typeof ctrl !== "symbol") {
if (isCollection(node)) {
- path3 = Object.freeze(path3.concat(node));
+ path5 = Object.freeze(path5.concat(node));
for (let i = 0; i < node.items.length; ++i) {
- const ci2 = yield visitAsync_(i, node.items[i], visitor, path3);
+ const ci2 = yield visitAsync_(i, node.items[i], visitor, path5);
if (typeof ci2 === "number")
i = ci2 - 1;
else if (ci2 === BREAK)
@@ -13108,13 +13436,13 @@ function visitAsync_(key, node, visitor, path3) {
}
}
} else if (isPair(node)) {
- path3 = Object.freeze(path3.concat(node));
- const ck = yield visitAsync_("key", node.key, visitor, path3);
+ path5 = Object.freeze(path5.concat(node));
+ const ck = yield visitAsync_("key", node.key, visitor, path5);
if (ck === BREAK)
return BREAK;
else if (ck === REMOVE)
node.key = null;
- const cv = yield visitAsync_("value", node.value, visitor, path3);
+ const cv = yield visitAsync_("value", node.value, visitor, path5);
if (cv === BREAK)
return BREAK;
else if (cv === REMOVE)
@@ -13142,24 +13470,24 @@ function initVisitor(visitor) {
}
return visitor;
}
-function callVisitor(key, node, visitor, path3) {
+function callVisitor(key, node, visitor, path5) {
var _a2, _b2, _c, _d, _e;
if (typeof visitor === "function")
- return visitor(key, node, path3);
+ return visitor(key, node, path5);
if (isMap(node))
- return (_a2 = visitor.Map) == null ? void 0 : _a2.call(visitor, key, node, path3);
+ return (_a2 = visitor.Map) == null ? void 0 : _a2.call(visitor, key, node, path5);
if (isSeq(node))
- return (_b2 = visitor.Seq) == null ? void 0 : _b2.call(visitor, key, node, path3);
+ return (_b2 = visitor.Seq) == null ? void 0 : _b2.call(visitor, key, node, path5);
if (isPair(node))
- return (_c = visitor.Pair) == null ? void 0 : _c.call(visitor, key, node, path3);
+ return (_c = visitor.Pair) == null ? void 0 : _c.call(visitor, key, node, path5);
if (isScalar(node))
- return (_d = visitor.Scalar) == null ? void 0 : _d.call(visitor, key, node, path3);
+ return (_d = visitor.Scalar) == null ? void 0 : _d.call(visitor, key, node, path5);
if (isAlias(node))
- return (_e = visitor.Alias) == null ? void 0 : _e.call(visitor, key, node, path3);
+ return (_e = visitor.Alias) == null ? void 0 : _e.call(visitor, key, node, path5);
return void 0;
}
-function replaceNode(key, path3, node) {
- const parent = path3[path3.length - 1];
+function replaceNode(key, path5, node) {
+ const parent = path5[path5.length - 1];
if (isCollection(parent)) {
parent.items[key] = node;
} else if (isPair(parent)) {
@@ -13691,10 +14019,10 @@ function createNode(value, tagName, ctx) {
}
// node_modules/yaml/browser/dist/nodes/Collection.js
-function collectionFromPath(schema4, path3, value) {
+function collectionFromPath(schema4, path5, value) {
let v2 = value;
- for (let i = path3.length - 1; i >= 0; --i) {
- const k2 = path3[i];
+ for (let i = path5.length - 1; i >= 0; --i) {
+ const k2 = path5[i];
if (typeof k2 === "number" && Number.isInteger(k2) && k2 >= 0) {
const a = [];
a[k2] = v2;
@@ -13713,7 +14041,7 @@ function collectionFromPath(schema4, path3, value) {
sourceObjects: /* @__PURE__ */ new Map()
});
}
-var isEmptyPath = (path3) => path3 == null || typeof path3 === "object" && !!path3[Symbol.iterator]().next().done;
+var isEmptyPath = (path5) => path5 == null || typeof path5 === "object" && !!path5[Symbol.iterator]().next().done;
var Collection = class extends NodeBase {
constructor(type, schema4) {
super(type);
@@ -13743,11 +14071,11 @@ var Collection = class extends NodeBase {
* be a Pair instance or a `{ key, value }` object, which may not have a key
* that already exists in the map.
*/
- addIn(path3, value) {
- if (isEmptyPath(path3))
+ addIn(path5, value) {
+ if (isEmptyPath(path5))
this.add(value);
else {
- const [key, ...rest] = path3;
+ const [key, ...rest] = path5;
const node = this.get(key, true);
if (isCollection(node))
node.addIn(rest, value);
@@ -13761,8 +14089,8 @@ var Collection = class extends NodeBase {
* Removes a value from the collection.
* @returns `true` if the item was found and removed.
*/
- deleteIn(path3) {
- const [key, ...rest] = path3;
+ deleteIn(path5) {
+ const [key, ...rest] = path5;
if (rest.length === 0)
return this.delete(key);
const node = this.get(key, true);
@@ -13776,8 +14104,8 @@ var Collection = class extends NodeBase {
* scalar values from their surrounding node; to disable set `keepScalar` to
* `true` (collections are always returned intact).
*/
- getIn(path3, keepScalar) {
- const [key, ...rest] = path3;
+ getIn(path5, keepScalar) {
+ const [key, ...rest] = path5;
const node = this.get(key, true);
if (rest.length === 0)
return !keepScalar && isScalar(node) ? node.value : node;
@@ -13795,8 +14123,8 @@ var Collection = class extends NodeBase {
/**
* Checks if the collection includes a value with the key `key`.
*/
- hasIn(path3) {
- const [key, ...rest] = path3;
+ hasIn(path5) {
+ const [key, ...rest] = path5;
if (rest.length === 0)
return this.has(key);
const node = this.get(key, true);
@@ -13806,8 +14134,8 @@ var Collection = class extends NodeBase {
* Sets a value in this collection. For `!!set`, `value` needs to be a
* boolean to add/remove the item from the set.
*/
- setIn(path3, value) {
- const [key, ...rest] = path3;
+ setIn(path5, value) {
+ const [key, ...rest] = path5;
if (rest.length === 0) {
this.set(key, value);
} else {
@@ -15953,9 +16281,9 @@ var Document = class _Document {
this.contents.add(value);
}
/** Adds a value to the document. */
- addIn(path3, value) {
+ addIn(path5, value) {
if (assertCollection(this.contents))
- this.contents.addIn(path3, value);
+ this.contents.addIn(path5, value);
}
/**
* Create a new `Alias` node, ensuring that the target `node` has the required anchor.
@@ -16030,14 +16358,14 @@ var Document = class _Document {
* Removes a value from the document.
* @returns `true` if the item was found and removed.
*/
- deleteIn(path3) {
- if (isEmptyPath(path3)) {
+ deleteIn(path5) {
+ if (isEmptyPath(path5)) {
if (this.contents == null)
return false;
this.contents = null;
return true;
}
- return assertCollection(this.contents) ? this.contents.deleteIn(path3) : false;
+ return assertCollection(this.contents) ? this.contents.deleteIn(path5) : false;
}
/**
* Returns item at `key`, or `undefined` if not found. By default unwraps
@@ -16052,10 +16380,10 @@ var Document = class _Document {
* scalar values from their surrounding node; to disable set `keepScalar` to
* `true` (collections are always returned intact).
*/
- getIn(path3, keepScalar) {
- if (isEmptyPath(path3))
+ getIn(path5, keepScalar) {
+ if (isEmptyPath(path5))
return !keepScalar && isScalar(this.contents) ? this.contents.value : this.contents;
- return isCollection(this.contents) ? this.contents.getIn(path3, keepScalar) : void 0;
+ return isCollection(this.contents) ? this.contents.getIn(path5, keepScalar) : void 0;
}
/**
* Checks if the document includes a value with the key `key`.
@@ -16066,10 +16394,10 @@ var Document = class _Document {
/**
* Checks if the document includes a value at `path`.
*/
- hasIn(path3) {
- if (isEmptyPath(path3))
+ hasIn(path5) {
+ if (isEmptyPath(path5))
return this.contents !== void 0;
- return isCollection(this.contents) ? this.contents.hasIn(path3) : false;
+ return isCollection(this.contents) ? this.contents.hasIn(path5) : false;
}
/**
* Sets a value in this document. For `!!set`, `value` needs to be a
@@ -16086,13 +16414,13 @@ var Document = class _Document {
* Sets a value in this document. For `!!set`, `value` needs to be a
* boolean to add/remove the item from the set.
*/
- setIn(path3, value) {
- if (isEmptyPath(path3)) {
+ setIn(path5, value) {
+ if (isEmptyPath(path5)) {
this.contents = value;
} else if (this.contents == null) {
- this.contents = collectionFromPath(this.schema, Array.from(path3), value);
+ this.contents = collectionFromPath(this.schema, Array.from(path5), value);
} else if (assertCollection(this.contents)) {
- this.contents.setIn(path3, value);
+ this.contents.setIn(path5, value);
}
}
/**
@@ -17895,9 +18223,9 @@ function visit2(cst, visitor) {
visit2.BREAK = BREAK2;
visit2.SKIP = SKIP2;
visit2.REMOVE = REMOVE2;
-visit2.itemAtPath = (cst, path3) => {
+visit2.itemAtPath = (cst, path5) => {
let item = cst;
- for (const [field, index] of path3) {
+ for (const [field, index] of path5) {
const tok = item == null ? void 0 : item[field];
if (tok && "items" in tok) {
item = tok.items[index];
@@ -17906,23 +18234,23 @@ visit2.itemAtPath = (cst, path3) => {
}
return item;
};
-visit2.parentCollection = (cst, path3) => {
- const parent = visit2.itemAtPath(cst, path3.slice(0, -1));
- const field = path3[path3.length - 1][0];
+visit2.parentCollection = (cst, path5) => {
+ const parent = visit2.itemAtPath(cst, path5.slice(0, -1));
+ const field = path5[path5.length - 1][0];
const coll = parent == null ? void 0 : parent[field];
if (coll && "items" in coll)
return coll;
throw new Error("Parent collection not found");
};
-function _visit(path3, item, visitor) {
- let ctrl = visitor(item, path3);
+function _visit(path5, item, visitor) {
+ let ctrl = visitor(item, path5);
if (typeof ctrl === "symbol")
return ctrl;
for (const field of ["key", "value"]) {
const token = item[field];
if (token && "items" in token) {
for (let i = 0; i < token.items.length; ++i) {
- const ci2 = _visit(Object.freeze(path3.concat([[field, i]])), token.items[i], visitor);
+ const ci2 = _visit(Object.freeze(path5.concat([[field, i]])), token.items[i], visitor);
if (typeof ci2 === "number")
i = ci2 - 1;
else if (ci2 === BREAK2)
@@ -17933,10 +18261,10 @@ function _visit(path3, item, visitor) {
}
}
if (typeof ctrl === "function" && field === "key")
- ctrl = ctrl(item, path3);
+ ctrl = ctrl(item, path5);
}
}
- return typeof ctrl === "function" ? ctrl(item, path3) : ctrl;
+ return typeof ctrl === "function" ? ctrl(item, path5) : ctrl;
}
// node_modules/yaml/browser/dist/parse/cst.js
@@ -20063,15 +20391,15 @@ var import_minimist = __toESM(require_minimist(), 1);
// node_modules/envapi/target/esm/index.mjs
var import_node_fs5 = __toESM(require("fs"), 1);
-var import_node_path4 = __toESM(require("path"), 1);
-var import_node_util3 = require("util");
+var import_node_path6 = __toESM(require("path"), 1);
+var import_node_util4 = require("util");
var DOTENV = ".env";
var Q1 = '"';
var Q2 = "'";
var Q3 = "`";
var KR = /^[a-zA-Z_]\w*$/;
var SR = /\s/;
-var decoder = new import_node_util3.TextDecoder();
+var decoder = new import_node_util4.TextDecoder();
var parse3 = (content) => {
const e = {};
let k2 = "";
@@ -20140,7 +20468,7 @@ var formatValue = (v2) => {
return `${Q3}${v2}${Q3}`;
};
var stringify5 = (env) => Object.entries(env).map(([k2, v2]) => `${k2}=${formatValue(v2 || "")}`).join("\n");
-var _load = (read, ...files) => files.reverse().reduce((m2, f2) => Object.assign(m2, parse3(read(import_node_path4.default.resolve(f2)))), {});
+var _load = (read, ...files) => files.reverse().reduce((m2, f2) => Object.assign(m2, parse3(read(import_node_path6.default.resolve(f2)))), {});
var load = (...files) => _load((file) => import_node_fs5.default.readFileSync(file, "utf8"), ...files);
var loadSafe = (...files) => _load(
(file) => import_node_fs5.default.existsSync(file) ? import_node_fs5.default.readFileSync(file, "utf8") : "",
build/vendor-extra.d.ts
@@ -266,7 +266,11 @@ type Options$1 = {
/**
Respect ignore patterns in `.gitignore` files that apply to the globbed files.
- Performance note: This option searches for all `.gitignore` files in the entire directory tree before globbing, which can be slow. For better performance, use `ignoreFiles: '.gitignore'` to only respect the root `.gitignore` file.
+ When enabled, globby searches for `.gitignore` files from the current working directory downward, and if a Git repository is detected (by finding a `.git` directory), it also respects `.gitignore` files in parent directories up to the repository root. This matches Git's actual behavior where patterns from parent `.gitignore` files apply to subdirectories.
+
+ Gitignore patterns take priority over user patterns, matching Git's behavior. To include gitignored files, set this to `false`.
+
+ Performance: Globby reads `.gitignore` files before globbing. When there are no negation patterns (like `!important.log`) and no parent `.gitignore` files are found, it passes ignore patterns to fast-glob to skip traversing ignored directories entirely, which significantly improves performance for large `node_modules` or build directories. When negation patterns or parent `.gitignore` files are present, all filtering is done after traversal to ensure correct Git-compatible behavior. For optimal performance, prefer specific `.gitignore` patterns without negations, or use `ignoreFiles: '.gitignore'` to target only the root ignore file.
@default false
*/
@@ -289,7 +293,56 @@ type Options$1 = {
readonly cwd?: URL | string;
} & FastGlobOptionsWithoutCwd;
type GitignoreOptions = {
+ /**
+ The current working directory in which to search.
+
+ @default process.cwd()
+ */
readonly cwd?: URL | string;
+ /**
+ Suppress errors when encountering directories or files without read permissions.
+
+ By default, fast-glob only suppresses `ENOENT` errors. Set to `true` to suppress any error.
+
+ @default false
+ */
+ readonly suppressErrors?: boolean;
+ /**
+ Specifies the maximum depth of ignore file search relative to the start directory.
+
+ @default Infinity
+ */
+ readonly deep?: number;
+ /**
+ Glob patterns to exclude from ignore file search.
+
+ @default []
+ */
+ readonly ignore?: string | readonly string[];
+ /**
+ Indicates whether to traverse descendants of symbolic link directories.
+
+ @default true
+ */
+ readonly followSymbolicLinks?: boolean;
+ /**
+ Specifies the maximum number of concurrent requests from a reader to read directories.
+
+ @default os.cpus().length
+ */
+ readonly concurrency?: number;
+ /**
+ Throw an error when symbolic link is broken if `true` or safely return `lstat` call if `false`.
+
+ @default false
+ */
+ readonly throwErrorOnBrokenSymbolicLink?: boolean;
+ /**
+ Custom file system implementation (useful for testing or virtual file systems).
+
+ @default undefined
+ */
+ readonly fs?: FastGlob.Options["fs"];
};
type GlobbyFilterFunction = (path: URL | string) => boolean;
type AsyncIterableReadable<Value> = Omit<NodeJS.ReadableStream, typeof Symbol.asyncIterator> & {
@@ -297,17 +350,23 @@ type AsyncIterableReadable<Value> = Omit<NodeJS.ReadableStream, typeof Symbol.as
};
type GlobbyStream = AsyncIterableReadable<string>;
type GlobbyEntryStream = AsyncIterableReadable<GlobEntry>;
-declare function globby(patterns: string | readonly string[], options: Options$1 & {
+declare function globby(patterns: string | readonly string[], options: Options$1 & ({
objectMode: true;
-}): Promise<GlobEntry[]>;
+} | {
+ stats: true;
+})): Promise<GlobEntry[]>;
declare function globby(patterns: string | readonly string[], options?: Options$1): Promise<string[]>;
-declare function globbySync(patterns: string | readonly string[], options: Options$1 & {
+declare function globbySync(patterns: string | readonly string[], options: Options$1 & ({
objectMode: true;
-}): GlobEntry[];
+} | {
+ stats: true;
+})): GlobEntry[];
declare function globbySync(patterns: string | readonly string[], options?: Options$1): string[];
-declare function globbyStream(patterns: string | readonly string[], options: Options$1 & {
+declare function globbyStream(patterns: string | readonly string[], options: Options$1 & ({
objectMode: true;
-}): GlobbyEntryStream;
+} | {
+ stats: true;
+})): GlobbyEntryStream;
declare function globbyStream(patterns: string | readonly string[], options?: Options$1): GlobbyStream;
declare function generateGlobTasks(patterns: string | readonly string[], options?: Options$1): Promise<GlobTask[]>;
declare function generateGlobTasksSync(patterns: string | readonly string[], options?: Options$1): GlobTask[];
src/versions.ts
@@ -19,9 +19,9 @@ export const versions: Record<string, string> = {
dotenv: '0.2.3',
fetch: '1.6.7',
fs: '11.3.2',
- glob: '15.0.0',
+ glob: '16.0.0',
minimist: '1.2.8',
ps: '1.0.0',
- which: '5.0.0',
+ which: '6.0.0',
yaml: '2.8.1',
}
test/export.test.js
@@ -245,6 +245,7 @@ describe('index', () => {
assert.equal(typeof index.fs.FileWriteStream, 'function', 'index.fs.FileWriteStream')
assert.equal(typeof index.fs.ReadStream, 'function', 'index.fs.ReadStream')
assert.equal(typeof index.fs.Stats, 'function', 'index.fs.Stats')
+ assert.equal(typeof index.fs.Utf8Stream, 'function', 'index.fs.Utf8Stream')
assert.equal(typeof index.fs.WriteStream, 'function', 'index.fs.WriteStream')
assert.equal(typeof index.fs._toUnixTimestamp, 'function', 'index.fs._toUnixTimestamp')
assert.equal(typeof index.fs.access, 'function', 'index.fs.access')
@@ -321,6 +322,7 @@ describe('index', () => {
assert.equal(typeof index.fs.mkdirs, 'function', 'index.fs.mkdirs')
assert.equal(typeof index.fs.mkdirsSync, 'function', 'index.fs.mkdirsSync')
assert.equal(typeof index.fs.mkdtemp, 'function', 'index.fs.mkdtemp')
+ assert.equal(typeof index.fs.mkdtempDisposableSync, 'function', 'index.fs.mkdtempDisposableSync')
assert.equal(typeof index.fs.mkdtempSync, 'function', 'index.fs.mkdtempSync')
assert.equal(typeof index.fs.move, 'function', 'index.fs.move')
assert.equal(typeof index.fs.moveSync, 'function', 'index.fs.moveSync')
.size-limit.json
@@ -19,7 +19,7 @@
"README.md",
"LICENSE"
],
- "limit": "128.901 kB",
+ "limit": "128.95 kB",
"brotli": false,
"gzip": false
},
@@ -33,21 +33,21 @@
"build/globals.js",
"build/deno.js"
],
- "limit": "831.105 kB",
+ "limit": "845.85 kB",
"brotli": false,
"gzip": false
},
{
"name": "libdefs",
"path": "build/*.d.ts",
- "limit": "41.56 kB",
+ "limit": "43.75 kB",
"brotli": false,
"gzip": false
},
{
"name": "vendor",
"path": "build/vendor-*.{cjs,d.ts}",
- "limit": "783.35 kB",
+ "limit": "799.35 kB",
"brotli": false,
"gzip": false
},
@@ -66,7 +66,7 @@
"README.md",
"LICENSE"
],
- "limit": "889.66 kB",
+ "limit": "906.55 kB",
"brotli": false,
"gzip": false
}
package-lock.json
@@ -17,7 +17,7 @@
"@size-limit/file": "11.2.0",
"@types/fs-extra": "11.0.4",
"@types/minimist": "1.2.5",
- "@types/node": "24.10.0",
+ "@types/node": "24.10.1",
"@types/which": "3.0.4",
"@webpod/ingrid": "1.1.1",
"@webpod/ps": "1.0.0",
@@ -28,8 +28,8 @@
"depseek": "0.4.3",
"dts-bundle-generator": "9.5.1",
"envapi": "0.2.3",
- "esbuild": "0.25.12",
- "esbuild-node-externals": "1.18.0",
+ "esbuild": "0.27.0",
+ "esbuild-node-externals": "1.20.1",
"esbuild-plugin-entry-chunks": "0.1.17",
"esbuild-plugin-extract-helpers": "0.0.6",
"esbuild-plugin-hybrid-export": "0.3.1",
@@ -38,9 +38,9 @@
"esbuild-plugin-utils": "0.1.0",
"fs-extra": "11.3.2",
"get-port": "7.1.0",
- "globby": "15.0.0",
+ "globby": "16.0.0",
"jsr": "0.13.5",
- "lefthook": "2.0.2",
+ "lefthook": "2.0.4",
"madge": "8.0.0",
"maml.js": "^0.0.3",
"minimist": "1.2.8",
@@ -52,7 +52,7 @@
"tsx": "4.20.6",
"typescript": "5.9.3",
"vitepress": "1.6.4",
- "which": "5.0.0",
+ "which": "6.0.0",
"yaml": "2.8.1",
"zurk": "0.11.10"
},
@@ -205,6 +205,7 @@
"integrity": "sha512-cZ0Iq3OzFUPpgszzDr1G1aJV5UMIZ4VygJ2Az252q4Rdf5cQMhYEIKArWY/oUjMhQmosM8ygOovNq7gvA9CdCg==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"@algolia/client-common": "5.29.0",
"@algolia/requester-browser-xhr": "5.29.0",
@@ -822,9 +823,9 @@
}
},
"node_modules/@esbuild/aix-ppc64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz",
- "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.0.tgz",
+ "integrity": "sha512-KuZrd2hRjz01y5JK9mEBSD3Vj3mbCvemhT466rSuJYeE/hjuBrHfjjcjMdTm/sz7au+++sdbJZJmuBwQLuw68A==",
"cpu": [
"ppc64"
],
@@ -839,9 +840,9 @@
}
},
"node_modules/@esbuild/android-arm": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz",
- "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.0.tgz",
+ "integrity": "sha512-j67aezrPNYWJEOHUNLPj9maeJte7uSMM6gMoxfPC9hOg8N02JuQi/T7ewumf4tNvJadFkvLZMlAq73b9uwdMyQ==",
"cpu": [
"arm"
],
@@ -856,9 +857,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz",
- "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.0.tgz",
+ "integrity": "sha512-CC3vt4+1xZrs97/PKDkl0yN7w8edvU2vZvAFGD16n9F0Cvniy5qvzRXjfO1l94efczkkQE6g1x0i73Qf5uthOQ==",
"cpu": [
"arm64"
],
@@ -873,9 +874,9 @@
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz",
- "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.0.tgz",
+ "integrity": "sha512-wurMkF1nmQajBO1+0CJmcN17U4BP6GqNSROP8t0X/Jiw2ltYGLHpEksp9MpoBqkrFR3kv2/te6Sha26k3+yZ9Q==",
"cpu": [
"x64"
],
@@ -890,9 +891,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz",
- "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.0.tgz",
+ "integrity": "sha512-uJOQKYCcHhg07DL7i8MzjvS2LaP7W7Pn/7uA0B5S1EnqAirJtbyw4yC5jQ5qcFjHK9l6o/MX9QisBg12kNkdHg==",
"cpu": [
"arm64"
],
@@ -907,9 +908,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz",
- "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.0.tgz",
+ "integrity": "sha512-8mG6arH3yB/4ZXiEnXof5MK72dE6zM9cDvUcPtxhUZsDjESl9JipZYW60C3JGreKCEP+p8P/72r69m4AZGJd5g==",
"cpu": [
"x64"
],
@@ -924,9 +925,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz",
- "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.0.tgz",
+ "integrity": "sha512-9FHtyO988CwNMMOE3YIeci+UV+x5Zy8fI2qHNpsEtSF83YPBmE8UWmfYAQg6Ux7Gsmd4FejZqnEUZCMGaNQHQw==",
"cpu": [
"arm64"
],
@@ -941,9 +942,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz",
- "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.0.tgz",
+ "integrity": "sha512-zCMeMXI4HS/tXvJz8vWGexpZj2YVtRAihHLk1imZj4efx1BQzN76YFeKqlDr3bUWI26wHwLWPd3rwh6pe4EV7g==",
"cpu": [
"x64"
],
@@ -958,9 +959,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz",
- "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.0.tgz",
+ "integrity": "sha512-t76XLQDpxgmq2cNXKTVEB7O7YMb42atj2Re2Haf45HkaUpjM2J0UuJZDuaGbPbamzZ7bawyGFUkodL+zcE+jvQ==",
"cpu": [
"arm"
],
@@ -975,9 +976,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz",
- "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.0.tgz",
+ "integrity": "sha512-AS18v0V+vZiLJyi/4LphvBE+OIX682Pu7ZYNsdUHyUKSoRwdnOsMf6FDekwoAFKej14WAkOef3zAORJgAtXnlQ==",
"cpu": [
"arm64"
],
@@ -992,9 +993,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz",
- "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.0.tgz",
+ "integrity": "sha512-Mz1jxqm/kfgKkc/KLHC5qIujMvnnarD9ra1cEcrs7qshTUSksPihGrWHVG5+osAIQ68577Zpww7SGapmzSt4Nw==",
"cpu": [
"ia32"
],
@@ -1009,9 +1010,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz",
- "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.0.tgz",
+ "integrity": "sha512-QbEREjdJeIreIAbdG2hLU1yXm1uu+LTdzoq1KCo4G4pFOLlvIspBm36QrQOar9LFduavoWX2msNFAAAY9j4BDg==",
"cpu": [
"loong64"
],
@@ -1026,9 +1027,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz",
- "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.0.tgz",
+ "integrity": "sha512-sJz3zRNe4tO2wxvDpH/HYJilb6+2YJxo/ZNbVdtFiKDufzWq4JmKAiHy9iGoLjAV7r/W32VgaHGkk35cUXlNOg==",
"cpu": [
"mips64el"
],
@@ -1043,9 +1044,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz",
- "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.0.tgz",
+ "integrity": "sha512-z9N10FBD0DCS2dmSABDBb5TLAyF1/ydVb+N4pi88T45efQ/w4ohr/F/QYCkxDPnkhkp6AIpIcQKQ8F0ANoA2JA==",
"cpu": [
"ppc64"
],
@@ -1060,9 +1061,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz",
- "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.0.tgz",
+ "integrity": "sha512-pQdyAIZ0BWIC5GyvVFn5awDiO14TkT/19FTmFcPdDec94KJ1uZcmFs21Fo8auMXzD4Tt+diXu1LW1gHus9fhFQ==",
"cpu": [
"riscv64"
],
@@ -1077,9 +1078,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz",
- "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.0.tgz",
+ "integrity": "sha512-hPlRWR4eIDDEci953RI1BLZitgi5uqcsjKMxwYfmi4LcwyWo2IcRP+lThVnKjNtk90pLS8nKdroXYOqW+QQH+w==",
"cpu": [
"s390x"
],
@@ -1094,9 +1095,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz",
- "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.0.tgz",
+ "integrity": "sha512-1hBWx4OUJE2cab++aVZ7pObD6s+DK4mPGpemtnAORBvb5l/g5xFGk0vc0PjSkrDs0XaXj9yyob3d14XqvnQ4gw==",
"cpu": [
"x64"
],
@@ -1111,9 +1112,9 @@
}
},
"node_modules/@esbuild/netbsd-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz",
- "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.0.tgz",
+ "integrity": "sha512-6m0sfQfxfQfy1qRuecMkJlf1cIzTOgyaeXaiVaaki8/v+WB+U4hc6ik15ZW6TAllRlg/WuQXxWj1jx6C+dfy3w==",
"cpu": [
"arm64"
],
@@ -1128,9 +1129,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz",
- "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.0.tgz",
+ "integrity": "sha512-xbbOdfn06FtcJ9d0ShxxvSn2iUsGd/lgPIO2V3VZIPDbEaIj1/3nBBe1AwuEZKXVXkMmpr6LUAgMkLD/4D2PPA==",
"cpu": [
"x64"
],
@@ -1145,9 +1146,9 @@
}
},
"node_modules/@esbuild/openbsd-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz",
- "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.0.tgz",
+ "integrity": "sha512-fWgqR8uNbCQ/GGv0yhzttj6sU/9Z5/Sv/VGU3F5OuXK6J6SlriONKrQ7tNlwBrJZXRYk5jUhuWvF7GYzGguBZQ==",
"cpu": [
"arm64"
],
@@ -1162,9 +1163,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz",
- "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.0.tgz",
+ "integrity": "sha512-aCwlRdSNMNxkGGqQajMUza6uXzR/U0dIl1QmLjPtRbLOx3Gy3otfFu/VjATy4yQzo9yFDGTxYDo1FfAD9oRD2A==",
"cpu": [
"x64"
],
@@ -1179,9 +1180,9 @@
}
},
"node_modules/@esbuild/openharmony-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz",
- "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.0.tgz",
+ "integrity": "sha512-nyvsBccxNAsNYz2jVFYwEGuRRomqZ149A39SHWk4hV0jWxKM0hjBPm3AmdxcbHiFLbBSwG6SbpIcUbXjgyECfA==",
"cpu": [
"arm64"
],
@@ -1196,9 +1197,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz",
- "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.0.tgz",
+ "integrity": "sha512-Q1KY1iJafM+UX6CFEL+F4HRTgygmEW568YMqDA5UV97AuZSm21b7SXIrRJDwXWPzr8MGr75fUZPV67FdtMHlHA==",
"cpu": [
"x64"
],
@@ -1213,9 +1214,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz",
- "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.0.tgz",
+ "integrity": "sha512-W1eyGNi6d+8kOmZIwi/EDjrL9nxQIQ0MiGqe/AWc6+IaHloxHSGoeRgDRKHFISThLmsewZ5nHFvGFWdBYlgKPg==",
"cpu": [
"arm64"
],
@@ -1230,9 +1231,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz",
- "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.0.tgz",
+ "integrity": "sha512-30z1aKL9h22kQhilnYkORFYt+3wp7yZsHWus+wSKAJR8JtdfI76LJ4SBdMsCopTR3z/ORqVu5L1vtnHZWVj4cQ==",
"cpu": [
"ia32"
],
@@ -1247,9 +1248,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz",
- "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.0.tgz",
+ "integrity": "sha512-aIitBcjQeyOhMTImhLZmtxfdOcuNRpwlPNmlFKPcHQYPhEssw75Cl1TSXJXpMkzaua9FUetx/4OQKq7eJul5Cg==",
"cpu": [
"x64"
],
@@ -2127,11 +2128,12 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "24.10.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.0.tgz",
- "integrity": "sha512-qzQZRBqkFsYyaSWXuEHc2WR9c0a0CXwiE5FWUvn7ZM+vdy1uZLfCunD38UzhuB7YN/J11ndbDBcTmOdxJo9Q7A==",
+ "version": "24.10.1",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
+ "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"undici-types": "~7.16.0"
}
@@ -2545,6 +2547,7 @@
"integrity": "sha512-E2l6AlTWGznM2e7vEE6T6hzObvEyXukxMOlBmVlMyixZyK1umuO/CiVc6sDBbzVH0oEviCE5IfVY1oZBmccYPQ==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"@algolia/client-abtesting": "5.29.0",
"@algolia/client-analytics": "5.29.0",
@@ -3128,6 +3131,7 @@
"integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"env-paths": "^2.2.1",
"import-fresh": "^3.3.0",
@@ -3779,12 +3783,13 @@
}
},
"node_modules/esbuild": {
- "version": "0.25.12",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz",
- "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==",
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.0.tgz",
+ "integrity": "sha512-jd0f4NHbD6cALCyGElNpGAOtWxSq46l9X/sWB0Nzd5er4Kz2YTm+Vl0qKFT9KUJvD8+fiO8AvoHhFvEatfVixA==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
+ "peer": true,
"bin": {
"esbuild": "bin/esbuild"
},
@@ -3792,38 +3797,38 @@
"node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.25.12",
- "@esbuild/android-arm": "0.25.12",
- "@esbuild/android-arm64": "0.25.12",
- "@esbuild/android-x64": "0.25.12",
- "@esbuild/darwin-arm64": "0.25.12",
- "@esbuild/darwin-x64": "0.25.12",
- "@esbuild/freebsd-arm64": "0.25.12",
- "@esbuild/freebsd-x64": "0.25.12",
- "@esbuild/linux-arm": "0.25.12",
- "@esbuild/linux-arm64": "0.25.12",
- "@esbuild/linux-ia32": "0.25.12",
- "@esbuild/linux-loong64": "0.25.12",
- "@esbuild/linux-mips64el": "0.25.12",
- "@esbuild/linux-ppc64": "0.25.12",
- "@esbuild/linux-riscv64": "0.25.12",
- "@esbuild/linux-s390x": "0.25.12",
- "@esbuild/linux-x64": "0.25.12",
- "@esbuild/netbsd-arm64": "0.25.12",
- "@esbuild/netbsd-x64": "0.25.12",
- "@esbuild/openbsd-arm64": "0.25.12",
- "@esbuild/openbsd-x64": "0.25.12",
- "@esbuild/openharmony-arm64": "0.25.12",
- "@esbuild/sunos-x64": "0.25.12",
- "@esbuild/win32-arm64": "0.25.12",
- "@esbuild/win32-ia32": "0.25.12",
- "@esbuild/win32-x64": "0.25.12"
+ "@esbuild/aix-ppc64": "0.27.0",
+ "@esbuild/android-arm": "0.27.0",
+ "@esbuild/android-arm64": "0.27.0",
+ "@esbuild/android-x64": "0.27.0",
+ "@esbuild/darwin-arm64": "0.27.0",
+ "@esbuild/darwin-x64": "0.27.0",
+ "@esbuild/freebsd-arm64": "0.27.0",
+ "@esbuild/freebsd-x64": "0.27.0",
+ "@esbuild/linux-arm": "0.27.0",
+ "@esbuild/linux-arm64": "0.27.0",
+ "@esbuild/linux-ia32": "0.27.0",
+ "@esbuild/linux-loong64": "0.27.0",
+ "@esbuild/linux-mips64el": "0.27.0",
+ "@esbuild/linux-ppc64": "0.27.0",
+ "@esbuild/linux-riscv64": "0.27.0",
+ "@esbuild/linux-s390x": "0.27.0",
+ "@esbuild/linux-x64": "0.27.0",
+ "@esbuild/netbsd-arm64": "0.27.0",
+ "@esbuild/netbsd-x64": "0.27.0",
+ "@esbuild/openbsd-arm64": "0.27.0",
+ "@esbuild/openbsd-x64": "0.27.0",
+ "@esbuild/openharmony-arm64": "0.27.0",
+ "@esbuild/sunos-x64": "0.27.0",
+ "@esbuild/win32-arm64": "0.27.0",
+ "@esbuild/win32-ia32": "0.27.0",
+ "@esbuild/win32-x64": "0.27.0"
}
},
"node_modules/esbuild-node-externals": {
- "version": "1.18.0",
- "resolved": "https://registry.npmjs.org/esbuild-node-externals/-/esbuild-node-externals-1.18.0.tgz",
- "integrity": "sha512-suFVX3SzZlXrGIS9Yqx+ZaHL4w1p0e/j7dQbOM9zk8SfFpnAGnDplHUKXIf9kcPEAfZRL66JuYeVSVlsSEQ5Eg==",
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/esbuild-node-externals/-/esbuild-node-externals-1.20.1.tgz",
+ "integrity": "sha512-uVs+TC+PBiav2LoTz8WZT/ootINw9Rns5JJyVznlfZH1qOyZxWCPzeXklY04UtZut5qUeFFaEWtcH7XoMwiTTQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3833,7 +3838,7 @@
"node": ">=12"
},
"peerDependencies": {
- "esbuild": "0.12 - 0.25"
+ "esbuild": "0.12 - 0.27"
}
},
"node_modules/esbuild-plugin-entry-chunks": {
@@ -4162,6 +4167,7 @@
"integrity": "sha512-7Ke1jyybbbPZyZXFxEftUtxFGLMpE2n6A+z//m4CRDlj0hW+o3iYSmh8nFlYMurOiJVDmJRilUQtJr08KfIxlg==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"tabbable": "^6.2.0"
}
@@ -4380,18 +4386,18 @@
}
},
"node_modules/globby": {
- "version": "15.0.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-15.0.0.tgz",
- "integrity": "sha512-oB4vkQGqlMl682wL1IlWd02tXCbquGWM4voPEI85QmNKCaw8zGTm1f1rubFgkg3Eli2PtKlFgrnmUqasbQWlkw==",
+ "version": "16.0.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-16.0.0.tgz",
+ "integrity": "sha512-ejy4TJFga99yW6Q0uhM3pFawKWZmtZzZD/v/GwI5+9bCV5Ew+D2pSND6W7fUes5UykqSsJkUfxFVdRh7Q1+P3Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"@sindresorhus/merge-streams": "^4.0.0",
"fast-glob": "^3.3.3",
"ignore": "^7.0.5",
- "path-type": "^6.0.0",
+ "is-path-inside": "^4.0.0",
"slash": "^5.1.0",
- "unicorn-magic": "^0.3.0"
+ "unicorn-magic": "^0.4.0"
},
"engines": {
"node": ">=20"
@@ -4748,6 +4754,19 @@
"node": ">=0.10.0"
}
},
+ "node_modules/is-path-inside": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
+ "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/is-plain-obj": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
@@ -5057,9 +5076,9 @@
}
},
"node_modules/lefthook": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook/-/lefthook-2.0.2.tgz",
- "integrity": "sha512-2lrSva53G604ZWjK5kHYvDdwb5GzbhciIPWhebv0A8ceveqSsnG2JgVEt+DnhOPZ4VfNcXvt3/ohFBPNpuAlVw==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook/-/lefthook-2.0.4.tgz",
+ "integrity": "sha512-GNCU2vQWM/UWjiEF23601aILi1aMbPke6viortH7wIO/oVGOCW0H6FdLez4XZDyqnHL9XkTnd0BBVrBbYVMLpA==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -5067,22 +5086,22 @@
"lefthook": "bin/index.js"
},
"optionalDependencies": {
- "lefthook-darwin-arm64": "2.0.2",
- "lefthook-darwin-x64": "2.0.2",
- "lefthook-freebsd-arm64": "2.0.2",
- "lefthook-freebsd-x64": "2.0.2",
- "lefthook-linux-arm64": "2.0.2",
- "lefthook-linux-x64": "2.0.2",
- "lefthook-openbsd-arm64": "2.0.2",
- "lefthook-openbsd-x64": "2.0.2",
- "lefthook-windows-arm64": "2.0.2",
- "lefthook-windows-x64": "2.0.2"
+ "lefthook-darwin-arm64": "2.0.4",
+ "lefthook-darwin-x64": "2.0.4",
+ "lefthook-freebsd-arm64": "2.0.4",
+ "lefthook-freebsd-x64": "2.0.4",
+ "lefthook-linux-arm64": "2.0.4",
+ "lefthook-linux-x64": "2.0.4",
+ "lefthook-openbsd-arm64": "2.0.4",
+ "lefthook-openbsd-x64": "2.0.4",
+ "lefthook-windows-arm64": "2.0.4",
+ "lefthook-windows-x64": "2.0.4"
}
},
"node_modules/lefthook-darwin-arm64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-darwin-arm64/-/lefthook-darwin-arm64-2.0.2.tgz",
- "integrity": "sha512-x/4AOinpMS2abZyA/krDd50cRPZit/6P670Z1mJjfS0+fPZkFw7AXpjxroiN0rgglg78vD7BwcA5331z4YZa5g==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-darwin-arm64/-/lefthook-darwin-arm64-2.0.4.tgz",
+ "integrity": "sha512-AR63/O5UkM7Sc6x5PhP4vTuztTYRBeBroXApeWGM/8e5uZyoQug/7KTh7xhbCMDf8WJv6vdFeXAQCPSmDyPU3Q==",
"cpu": [
"arm64"
],
@@ -5094,9 +5113,9 @@
]
},
"node_modules/lefthook-darwin-x64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-darwin-x64/-/lefthook-darwin-x64-2.0.2.tgz",
- "integrity": "sha512-MSb8XZBfmlNvCpuLiQqrJS+sPiSEAyuoHOMZOHjlceYqO0leVVw9YfePVcb4Vi/PqOYngTdJk83MmYvqhsSNTQ==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-darwin-x64/-/lefthook-darwin-x64-2.0.4.tgz",
+ "integrity": "sha512-618DVUttSzV9egQiqTQoxGfnR240JoPWYmqRVHhiegnQKZ2lp5XJ+7NMxeRk/ih93VVOLzFO5ky3PbpxTmJgjQ==",
"cpu": [
"x64"
],
@@ -5108,9 +5127,9 @@
]
},
"node_modules/lefthook-freebsd-arm64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-freebsd-arm64/-/lefthook-freebsd-arm64-2.0.2.tgz",
- "integrity": "sha512-gewPsUPc3J/n2/RrhHLS9jtL3qK4HcTED25vfExhvFRW3eT1SDYaBbXnUUmB8SE0zE8Bl6AfEdT2zzZcPbOFuA==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-freebsd-arm64/-/lefthook-freebsd-arm64-2.0.4.tgz",
+ "integrity": "sha512-mTAQym1BK38fKglHBQ/0GXPznVC4LoStHO5lAI3ZxaEC0FQetqGHYFzhWbIH5sde9JhztE2rL/aBzMHDoAtzSw==",
"cpu": [
"arm64"
],
@@ -5122,9 +5141,9 @@
]
},
"node_modules/lefthook-freebsd-x64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-freebsd-x64/-/lefthook-freebsd-x64-2.0.2.tgz",
- "integrity": "sha512-fsLlaChiKAWiSavQO2LXPR8Z9OcBnyMDvmkIlXC0lG3SjBb9xbVdBdDVlcrsUyDCs5YstmGYHuzw6DfJYpAE1g==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-freebsd-x64/-/lefthook-freebsd-x64-2.0.4.tgz",
+ "integrity": "sha512-sy02aSxd8UMd6XmiPFVl/Em0b78jdZcDSsLwg+bweJQQk0l+vJhOfqFiG11mbnpo+EBIZmRe6OH5LkxeSU36+w==",
"cpu": [
"x64"
],
@@ -5136,9 +5155,9 @@
]
},
"node_modules/lefthook-linux-arm64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-linux-arm64/-/lefthook-linux-arm64-2.0.2.tgz",
- "integrity": "sha512-vNl3HiZud9T2nGHMngvLw3hSJgutjlN/Lzf5/5jKt/2IIuyd9L3UYktWC9HLUb03Zukr7jeaxG3+VxdAohQwAw==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-linux-arm64/-/lefthook-linux-arm64-2.0.4.tgz",
+ "integrity": "sha512-W0Nlr/Cz2QTH9n4k5zNrk3LSsg1C4wHiJi8hrAiQVTaAV/N1XrKqd0DevqQuouuapG6pw/6B1xCgiNPebv9oyw==",
"cpu": [
"arm64"
],
@@ -5150,9 +5169,9 @@
]
},
"node_modules/lefthook-linux-x64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-linux-x64/-/lefthook-linux-x64-2.0.2.tgz",
- "integrity": "sha512-0ghHMPu4fixIieS8V2k2yZHvcFd9pP0q+sIAIaWo8x7ce/AOQIXFCPHGPAOc8/wi5uVtfyEvCnhxIDKf+lHA2A==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-linux-x64/-/lefthook-linux-x64-2.0.4.tgz",
+ "integrity": "sha512-N6ySVCtB/DrOZ1ZgPL8WBZTgtoVHvcPKI+LV5wbcGrvA/dzDZFvniadrbDWZg7Tm705efiQzyENjwhhqNkwiww==",
"cpu": [
"x64"
],
@@ -5164,9 +5183,9 @@
]
},
"node_modules/lefthook-openbsd-arm64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-openbsd-arm64/-/lefthook-openbsd-arm64-2.0.2.tgz",
- "integrity": "sha512-qfXnDM8jffut9rylvi3T+HOqlNRkFYqIDUXeVXlY7dmwCW4u2K46p0W4M3BmAVUeL/MRxBRnjze//Yy6aCbGQw==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-openbsd-arm64/-/lefthook-openbsd-arm64-2.0.4.tgz",
+ "integrity": "sha512-VmOhJO3pYzZ/1C2WFXtL/n5pq4/eYOroqJJpwTJfmCHyw4ceLACu8MDyU5AMJhGMkbL8mPxGInJKxg5xhYgGRw==",
"cpu": [
"arm64"
],
@@ -5178,9 +5197,9 @@
]
},
"node_modules/lefthook-openbsd-x64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-openbsd-x64/-/lefthook-openbsd-x64-2.0.2.tgz",
- "integrity": "sha512-RXqR0FiDTwsQv1X3QVsuBFneWeNXS+tmPFIX8F6Wz9yDPHF8+vBnkWCju6HdkTVTY71Ba5HbYGKEVDvscJkU7Q==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-openbsd-x64/-/lefthook-openbsd-x64-2.0.4.tgz",
+ "integrity": "sha512-U8MZz1xlHUdflkQQ2hkMQsei6fSZbs8tuE4EjCIHWnNdnAF4V8sZ6n1KbxsJcoZXPyBZqxZSMu1o/Ye8IAMVKg==",
"cpu": [
"x64"
],
@@ -5192,9 +5211,9 @@
]
},
"node_modules/lefthook-windows-arm64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-windows-arm64/-/lefthook-windows-arm64-2.0.2.tgz",
- "integrity": "sha512-KfLKhiUPHP9Aea+9D7or2hgL9wtKEV+GHpx7LBg82ZhCXkAml6rop7mWsBgL80xPYLqMahKolZGO+8z5H6W4HQ==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-windows-arm64/-/lefthook-windows-arm64-2.0.4.tgz",
+ "integrity": "sha512-543H3y2JAwNdvwUQ6nlNBG7rdKgoOUgzAa6pYcl6EoqicCRrjRmGhkJu7vUudkkrD2Wjm7tr9hU9poP2g5fRFQ==",
"cpu": [
"arm64"
],
@@ -5206,9 +5225,9 @@
]
},
"node_modules/lefthook-windows-x64": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/lefthook-windows-x64/-/lefthook-windows-x64-2.0.2.tgz",
- "integrity": "sha512-TdysWxGRNtuRg5bN6Uj00tZJIsHTrF/7FavoR5rp1sq21QJhJi36M4I3UVlmOKAUCKhibAIAauZWmX7yaW3eHA==",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lefthook-windows-x64/-/lefthook-windows-x64-2.0.4.tgz",
+ "integrity": "sha512-UDEPK9RWKm60xsNOdS/DQOdFba0SFa4w3tpFMXK1AJzmRHhosoKrorXGhtTr6kcM0MGKOtYi8GHsm++ArZ9wvQ==",
"cpu": [
"x64"
],
@@ -6130,19 +6149,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/path-type": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz",
- "integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/perfect-debounce": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz",
@@ -6216,6 +6222,7 @@
}
],
"license": "MIT",
+ "peer": true,
"dependencies": {
"nanoid": "^3.3.11",
"picocolors": "^1.1.1",
@@ -6976,6 +6983,7 @@
"integrity": "sha512-2kpQq2DD/pRpx3Tal/qRW1SYwcIeQ0iq8li5CJHQgOC+FtPn2BVmuDtzUCgNnpCrbgtfEHqh+iWzxK+Tq6C+RQ==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"bytes-iec": "^3.1.1",
"chokidar": "^4.0.3",
@@ -7391,9 +7399,9 @@
}
},
"node_modules/test-exclude/node_modules/glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
+ "version": "10.5.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz",
+ "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==",
"dev": true,
"license": "ISC",
"dependencies": {
@@ -7492,6 +7500,7 @@
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"dev": true,
"license": "MIT",
+ "peer": true,
"engines": {
"node": ">=12"
},
@@ -7733,6 +7742,7 @@
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"dev": true,
"license": "Apache-2.0",
+ "peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -7749,13 +7759,13 @@
"license": "MIT"
},
"node_modules/unicorn-magic": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
- "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz",
+ "integrity": "sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=18"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -7931,6 +7941,7 @@
"integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"esbuild": "^0.21.3",
"postcss": "^8.4.43",
@@ -8033,6 +8044,7 @@
"integrity": "sha512-LbHV3xPN9BeljML+Xctq4lbz2lVHCR6DtbpTf5XIO6gugpXUN49j2QQPcMj086r9+AkJ0FfUT8xjulKKBkkr9g==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
"@vue/compiler-dom": "3.5.17",
"@vue/compiler-sfc": "3.5.17",
@@ -8070,9 +8082,9 @@
}
},
"node_modules/which": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz",
- "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==",
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/which/-/which-6.0.0.tgz",
+ "integrity": "sha512-f+gEpIKMR9faW/JgAgPK1D7mekkFoqbmiwvNzuhsHetni20QSgzg9Vhn0g2JSJkkfehQnqdUAx7/e15qS1lPxg==",
"dev": true,
"license": "ISC",
"dependencies": {
@@ -8082,7 +8094,7 @@
"node-which": "bin/which.js"
},
"engines": {
- "node": "^18.17.0 || >=20.5.0"
+ "node": "^20.17.0 || >=22.9.0"
}
},
"node_modules/wrap-ansi": {
package.json
@@ -114,7 +114,7 @@
"@size-limit/file": "11.2.0",
"@types/fs-extra": "11.0.4",
"@types/minimist": "1.2.5",
- "@types/node": "24.10.0",
+ "@types/node": "24.10.1",
"@types/which": "3.0.4",
"@webpod/ingrid": "1.1.1",
"@webpod/ps": "1.0.0",
@@ -125,8 +125,8 @@
"depseek": "0.4.3",
"dts-bundle-generator": "9.5.1",
"envapi": "0.2.3",
- "esbuild": "0.25.12",
- "esbuild-node-externals": "1.18.0",
+ "esbuild": "0.27.0",
+ "esbuild-node-externals": "1.20.1",
"esbuild-plugin-entry-chunks": "0.1.17",
"esbuild-plugin-extract-helpers": "0.0.6",
"esbuild-plugin-hybrid-export": "0.3.1",
@@ -135,9 +135,9 @@
"esbuild-plugin-utils": "0.1.0",
"fs-extra": "11.3.2",
"get-port": "7.1.0",
- "globby": "15.0.0",
+ "globby": "16.0.0",
"jsr": "0.13.5",
- "lefthook": "2.0.2",
+ "lefthook": "2.0.4",
"madge": "8.0.0",
"maml.js": "^0.0.3",
"minimist": "1.2.8",
@@ -149,7 +149,7 @@
"tsx": "4.20.6",
"typescript": "5.9.3",
"vitepress": "1.6.4",
- "which": "5.0.0",
+ "which": "6.0.0",
"yaml": "2.8.1",
"zurk": "0.11.10"
},