wxt 0.18.9 → 0.18.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -47,10 +47,10 @@ var init_is_plain_obj = __esm({
47
47
  }
48
48
  });
49
49
 
50
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/file-url.js
50
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/file-url.js
51
51
  var import_node_url, safeNormalizeFileUrl, normalizeFileUrl;
52
52
  var init_file_url = __esm({
53
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/file-url.js"() {
53
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/file-url.js"() {
54
54
  "use strict";
55
55
  import_node_url = require("url");
56
56
  safeNormalizeFileUrl = (file, name) => {
@@ -64,10 +64,10 @@ var init_file_url = __esm({
64
64
  }
65
65
  });
66
66
 
67
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/parameters.js
67
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/parameters.js
68
68
  var normalizeParameters;
69
69
  var init_parameters = __esm({
70
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/parameters.js"() {
70
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/parameters.js"() {
71
71
  "use strict";
72
72
  init_is_plain_obj();
73
73
  init_file_url();
@@ -93,10 +93,10 @@ var init_parameters = __esm({
93
93
  }
94
94
  });
95
95
 
96
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/uint-array.js
96
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/uint-array.js
97
97
  var import_node_string_decoder, objectToString, isArrayBuffer, isUint8Array, bufferToUint8Array, textEncoder, stringToUint8Array, textDecoder, uint8ArrayToString, joinToString, uint8ArraysToStrings, joinToUint8Array, stringsToUint8Arrays, concatUint8Arrays, getJoinLength;
98
98
  var init_uint_array = __esm({
99
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/uint-array.js"() {
99
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/uint-array.js"() {
100
100
  "use strict";
101
101
  import_node_string_decoder = require("string_decoder");
102
102
  ({ toString: objectToString } = Object.prototype);
@@ -146,10 +146,10 @@ var init_uint_array = __esm({
146
146
  }
147
147
  });
148
148
 
149
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/template.js
149
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/template.js
150
150
  var import_node_child_process, isTemplateString, parseTemplates, parseTemplate, splitByWhitespaces, DELIMITERS, ESCAPE_LENGTH, concatTokens, parseExpression, getSubprocessResult;
151
151
  var init_template = __esm({
152
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/template.js"() {
152
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/template.js"() {
153
153
  "use strict";
154
154
  import_node_child_process = require("child_process");
155
155
  init_is_plain_obj();
@@ -252,124 +252,173 @@ var init_template = __esm({
252
252
  }
253
253
  });
254
254
 
255
- // ../../node_modules/.pnpm/yoctocolors@2.0.2/node_modules/yoctocolors/index.js
256
- var import_node_tty, hasColors, format, reset, bold, dim, italic, underline, overline, inverse, hidden, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright;
257
- var init_yoctocolors = __esm({
258
- "../../node_modules/.pnpm/yoctocolors@2.0.2/node_modules/yoctocolors/index.js"() {
255
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/standard-stream.js
256
+ var import_node_process, isStandardStream, STANDARD_STREAMS, STANDARD_STREAMS_ALIASES, getStreamName;
257
+ var init_standard_stream = __esm({
258
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/standard-stream.js"() {
259
259
  "use strict";
260
- import_node_tty = __toESM(require("tty"), 1);
261
- hasColors = import_node_tty.default.WriteStream.prototype.hasColors();
262
- format = (open, close) => {
263
- if (!hasColors) {
264
- return (input) => input;
260
+ import_node_process = __toESM(require("process"), 1);
261
+ isStandardStream = (stream) => STANDARD_STREAMS.includes(stream);
262
+ STANDARD_STREAMS = [import_node_process.default.stdin, import_node_process.default.stdout, import_node_process.default.stderr];
263
+ STANDARD_STREAMS_ALIASES = ["stdin", "stdout", "stderr"];
264
+ getStreamName = (fdNumber) => STANDARD_STREAMS_ALIASES[fdNumber] ?? `stdio[${fdNumber}]`;
265
+ }
266
+ });
267
+
268
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/specific.js
269
+ var import_node_util, normalizeFdSpecificOptions, normalizeFdSpecificOption, getStdioLength, normalizeFdSpecificValue, normalizeOptionObject, compareFdName, getFdNameOrder, parseFdName, parseFd, FD_REGEXP, addDefaultValue, verboseDefault, DEFAULT_OPTIONS, FD_SPECIFIC_OPTIONS, getFdSpecificValue;
270
+ var init_specific = __esm({
271
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/specific.js"() {
272
+ "use strict";
273
+ import_node_util = require("util");
274
+ init_is_plain_obj();
275
+ init_standard_stream();
276
+ normalizeFdSpecificOptions = (options) => {
277
+ const optionsCopy = { ...options };
278
+ for (const optionName of FD_SPECIFIC_OPTIONS) {
279
+ optionsCopy[optionName] = normalizeFdSpecificOption(options, optionName);
265
280
  }
266
- const openCode = `\x1B[${open}m`;
267
- const closeCode = `\x1B[${close}m`;
268
- return (input) => {
269
- const string = input + "";
270
- let index = string.indexOf(closeCode);
271
- if (index === -1) {
272
- return openCode + string + closeCode;
273
- }
274
- let result = openCode;
275
- let lastIndex = 0;
276
- while (index !== -1) {
277
- result += string.slice(lastIndex, index) + openCode;
278
- lastIndex = index + closeCode.length;
279
- index = string.indexOf(closeCode, lastIndex);
281
+ return optionsCopy;
282
+ };
283
+ normalizeFdSpecificOption = (options, optionName) => {
284
+ const optionBaseArray = Array.from({ length: getStdioLength(options) + 1 });
285
+ const optionArray = normalizeFdSpecificValue(options[optionName], optionBaseArray, optionName);
286
+ return addDefaultValue(optionArray, optionName);
287
+ };
288
+ getStdioLength = ({ stdio }) => Array.isArray(stdio) ? Math.max(stdio.length, STANDARD_STREAMS_ALIASES.length) : STANDARD_STREAMS_ALIASES.length;
289
+ normalizeFdSpecificValue = (optionValue, optionArray, optionName) => isPlainObject(optionValue) ? normalizeOptionObject(optionValue, optionArray, optionName) : optionArray.fill(optionValue);
290
+ normalizeOptionObject = (optionValue, optionArray, optionName) => {
291
+ for (const fdName of Object.keys(optionValue).sort(compareFdName)) {
292
+ for (const fdNumber of parseFdName(fdName, optionName, optionArray)) {
293
+ optionArray[fdNumber] = optionValue[fdName];
280
294
  }
281
- result += string.slice(lastIndex) + closeCode;
282
- return result;
283
- };
295
+ }
296
+ return optionArray;
284
297
  };
285
- reset = format(0, 0);
286
- bold = format(1, 22);
287
- dim = format(2, 22);
288
- italic = format(3, 23);
289
- underline = format(4, 24);
290
- overline = format(53, 55);
291
- inverse = format(7, 27);
292
- hidden = format(8, 28);
293
- strikethrough = format(9, 29);
294
- black = format(30, 39);
295
- red = format(31, 39);
296
- green = format(32, 39);
297
- yellow = format(33, 39);
298
- blue = format(34, 39);
299
- magenta = format(35, 39);
300
- cyan = format(36, 39);
301
- white = format(37, 39);
302
- gray = format(90, 39);
303
- bgBlack = format(40, 49);
304
- bgRed = format(41, 49);
305
- bgGreen = format(42, 49);
306
- bgYellow = format(43, 49);
307
- bgBlue = format(44, 49);
308
- bgMagenta = format(45, 49);
309
- bgCyan = format(46, 49);
310
- bgWhite = format(47, 49);
311
- bgGray = format(100, 49);
312
- redBright = format(91, 39);
313
- greenBright = format(92, 39);
314
- yellowBright = format(93, 39);
315
- blueBright = format(94, 39);
316
- magentaBright = format(95, 39);
317
- cyanBright = format(96, 39);
318
- whiteBright = format(97, 39);
319
- bgRedBright = format(101, 49);
320
- bgGreenBright = format(102, 49);
321
- bgYellowBright = format(103, 49);
322
- bgBlueBright = format(104, 49);
323
- bgMagentaBright = format(105, 49);
324
- bgCyanBright = format(106, 49);
325
- bgWhiteBright = format(107, 49);
298
+ compareFdName = (fdNameA, fdNameB) => getFdNameOrder(fdNameA) < getFdNameOrder(fdNameB) ? 1 : -1;
299
+ getFdNameOrder = (fdName) => {
300
+ if (fdName === "stdout" || fdName === "stderr") {
301
+ return 0;
302
+ }
303
+ return fdName === "all" ? 2 : 1;
304
+ };
305
+ parseFdName = (fdName, optionName, optionArray) => {
306
+ if (fdName === "ipc") {
307
+ return [optionArray.length - 1];
308
+ }
309
+ const fdNumber = parseFd(fdName);
310
+ if (fdNumber === void 0 || fdNumber === 0) {
311
+ throw new TypeError(`"${optionName}.${fdName}" is invalid.
312
+ It must be "${optionName}.stdout", "${optionName}.stderr", "${optionName}.all", "${optionName}.ipc", or "${optionName}.fd3", "${optionName}.fd4" (and so on).`);
313
+ }
314
+ if (fdNumber >= optionArray.length) {
315
+ throw new TypeError(`"${optionName}.${fdName}" is invalid: that file descriptor does not exist.
316
+ Please set the "stdio" option to ensure that file descriptor exists.`);
317
+ }
318
+ return fdNumber === "all" ? [1, 2] : [fdNumber];
319
+ };
320
+ parseFd = (fdName) => {
321
+ if (fdName === "all") {
322
+ return fdName;
323
+ }
324
+ if (STANDARD_STREAMS_ALIASES.includes(fdName)) {
325
+ return STANDARD_STREAMS_ALIASES.indexOf(fdName);
326
+ }
327
+ const regexpResult = FD_REGEXP.exec(fdName);
328
+ if (regexpResult !== null) {
329
+ return Number(regexpResult[1]);
330
+ }
331
+ };
332
+ FD_REGEXP = /^fd(\d+)$/;
333
+ addDefaultValue = (optionArray, optionName) => optionArray.map((optionValue) => optionValue === void 0 ? DEFAULT_OPTIONS[optionName] : optionValue);
334
+ verboseDefault = (0, import_node_util.debuglog)("execa").enabled ? "full" : "none";
335
+ DEFAULT_OPTIONS = {
336
+ lines: false,
337
+ buffer: true,
338
+ maxBuffer: 1e3 * 1e3 * 100,
339
+ verbose: verboseDefault,
340
+ stripFinalNewline: true
341
+ };
342
+ FD_SPECIFIC_OPTIONS = ["lines", "buffer", "maxBuffer", "verbose", "stripFinalNewline"];
343
+ getFdSpecificValue = (optionArray, fdNumber) => fdNumber === "ipc" ? optionArray.at(-1) : optionArray[fdNumber];
326
344
  }
327
345
  });
328
346
 
329
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/info.js
330
- var import_node_util, verboseDefault, getVerboseInfo, VERBOSE_ID, isVerbose, validateVerbose, VERBOSE_VALUES;
331
- var init_info = __esm({
332
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/info.js"() {
347
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/values.js
348
+ var isVerbose, isFullVerbose, getVerboseFunction, getFdVerbose, getFdGenericVerbose, isVerboseFunction, VERBOSE_VALUES;
349
+ var init_values = __esm({
350
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/values.js"() {
333
351
  "use strict";
334
- import_node_util = require("util");
335
- verboseDefault = (0, import_node_util.debuglog)("execa").enabled ? "full" : "none";
336
- getVerboseInfo = (verbose) => {
337
- const verboseId = isVerbose(verbose) ? VERBOSE_ID++ : void 0;
338
- validateVerbose(verbose);
339
- return { verbose, verboseId };
352
+ init_specific();
353
+ isVerbose = ({ verbose }, fdNumber) => getFdVerbose(verbose, fdNumber) !== "none";
354
+ isFullVerbose = ({ verbose }, fdNumber) => !["none", "short"].includes(getFdVerbose(verbose, fdNumber));
355
+ getVerboseFunction = ({ verbose }, fdNumber) => {
356
+ const fdVerbose = getFdVerbose(verbose, fdNumber);
357
+ return isVerboseFunction(fdVerbose) ? fdVerbose : void 0;
340
358
  };
341
- VERBOSE_ID = 0n;
342
- isVerbose = (verbose) => verbose.some((fdVerbose) => fdVerbose !== "none");
343
- validateVerbose = (verbose) => {
344
- for (const verboseItem of verbose) {
345
- if (verboseItem === false) {
346
- throw new TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);
347
- }
348
- if (verboseItem === true) {
349
- throw new TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);
350
- }
351
- if (!VERBOSE_VALUES.has(verboseItem)) {
352
- const allowedValues = [...VERBOSE_VALUES].map((allowedValue) => `'${allowedValue}'`).join(", ");
353
- throw new TypeError(`The "verbose" option must not be ${verboseItem}. Allowed values are: ${allowedValues}.`);
354
- }
359
+ getFdVerbose = (verbose, fdNumber) => fdNumber === void 0 ? getFdGenericVerbose(verbose) : getFdSpecificValue(verbose, fdNumber);
360
+ getFdGenericVerbose = (verbose) => verbose.find((fdVerbose) => isVerboseFunction(fdVerbose)) ?? VERBOSE_VALUES.findLast((fdVerbose) => verbose.includes(fdVerbose));
361
+ isVerboseFunction = (fdVerbose) => typeof fdVerbose === "function";
362
+ VERBOSE_VALUES = ["none", "short", "full"];
363
+ }
364
+ });
365
+
366
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/escape.js
367
+ var import_node_process2, import_node_util2, joinCommand, escapeLines, escapeControlCharacters, escapeControlCharacter, SPECIAL_CHAR_REGEXP, COMMON_ESCAPES, ASTRAL_START, quoteString, NO_ESCAPE_REGEXP;
368
+ var init_escape = __esm({
369
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/escape.js"() {
370
+ "use strict";
371
+ import_node_process2 = require("process");
372
+ import_node_util2 = require("util");
373
+ joinCommand = (filePath, rawArguments) => {
374
+ const fileAndArguments = [filePath, ...rawArguments];
375
+ const command = fileAndArguments.join(" ");
376
+ const escapedCommand = fileAndArguments.map((fileAndArgument) => quoteString(escapeControlCharacters(fileAndArgument))).join(" ");
377
+ return { command, escapedCommand };
378
+ };
379
+ escapeLines = (lines) => (0, import_node_util2.stripVTControlCharacters)(lines).split("\n").map((line) => escapeControlCharacters(line)).join("\n");
380
+ escapeControlCharacters = (line) => line.replaceAll(SPECIAL_CHAR_REGEXP, (character) => escapeControlCharacter(character));
381
+ escapeControlCharacter = (character) => {
382
+ const commonEscape = COMMON_ESCAPES[character];
383
+ if (commonEscape !== void 0) {
384
+ return commonEscape;
385
+ }
386
+ const codepoint = character.codePointAt(0);
387
+ const codepointHex = codepoint.toString(16);
388
+ return codepoint <= ASTRAL_START ? `\\u${codepointHex.padStart(4, "0")}` : `\\U${codepointHex}`;
389
+ };
390
+ SPECIAL_CHAR_REGEXP = /\p{Separator}|\p{Other}/gu;
391
+ COMMON_ESCAPES = {
392
+ " ": " ",
393
+ "\b": "\\b",
394
+ "\f": "\\f",
395
+ "\n": "\\n",
396
+ "\r": "\\r",
397
+ " ": "\\t"
398
+ };
399
+ ASTRAL_START = 65535;
400
+ quoteString = (escapedArgument) => {
401
+ if (NO_ESCAPE_REGEXP.test(escapedArgument)) {
402
+ return escapedArgument;
355
403
  }
404
+ return import_node_process2.platform === "win32" ? `"${escapedArgument.replaceAll('"', '""')}"` : `'${escapedArgument.replaceAll("'", "'\\''")}'`;
356
405
  };
357
- VERBOSE_VALUES = /* @__PURE__ */ new Set(["none", "short", "full"]);
406
+ NO_ESCAPE_REGEXP = /^[\w./-]+$/;
358
407
  }
359
408
  });
360
409
 
361
410
  // ../../node_modules/.pnpm/is-unicode-supported@2.0.0/node_modules/is-unicode-supported/index.js
362
411
  function isUnicodeSupported() {
363
- if (import_node_process.default.platform !== "win32") {
364
- return import_node_process.default.env.TERM !== "linux";
412
+ if (import_node_process3.default.platform !== "win32") {
413
+ return import_node_process3.default.env.TERM !== "linux";
365
414
  }
366
- return Boolean(import_node_process.default.env.WT_SESSION) || Boolean(import_node_process.default.env.TERMINUS_SUBLIME) || import_node_process.default.env.ConEmuTask === "{cmd::Cmder}" || import_node_process.default.env.TERM_PROGRAM === "Terminus-Sublime" || import_node_process.default.env.TERM_PROGRAM === "vscode" || import_node_process.default.env.TERM === "xterm-256color" || import_node_process.default.env.TERM === "alacritty" || import_node_process.default.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
415
+ return Boolean(import_node_process3.default.env.WT_SESSION) || Boolean(import_node_process3.default.env.TERMINUS_SUBLIME) || import_node_process3.default.env.ConEmuTask === "{cmd::Cmder}" || import_node_process3.default.env.TERM_PROGRAM === "Terminus-Sublime" || import_node_process3.default.env.TERM_PROGRAM === "vscode" || import_node_process3.default.env.TERM === "xterm-256color" || import_node_process3.default.env.TERM === "alacritty" || import_node_process3.default.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
367
416
  }
368
- var import_node_process;
417
+ var import_node_process3;
369
418
  var init_is_unicode_supported = __esm({
370
419
  "../../node_modules/.pnpm/is-unicode-supported@2.0.0/node_modules/is-unicode-supported/index.js"() {
371
420
  "use strict";
372
- import_node_process = __toESM(require("process"), 1);
421
+ import_node_process3 = __toESM(require("process"), 1);
373
422
  }
374
423
  });
375
424
 
@@ -656,89 +705,187 @@ var init_figures = __esm({
656
705
  }
657
706
  });
658
707
 
659
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/escape.js
660
- var import_node_process2, import_node_util2, joinCommand, escapeLines, escapeControlCharacters, escapeControlCharacter, SPECIAL_CHAR_REGEXP, COMMON_ESCAPES, ASTRAL_START, quoteString, NO_ESCAPE_REGEXP;
661
- var init_escape = __esm({
662
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/escape.js"() {
708
+ // ../../node_modules/.pnpm/yoctocolors@2.0.2/node_modules/yoctocolors/index.js
709
+ var import_node_tty, hasColors, format, reset, bold, dim, italic, underline, overline, inverse, hidden, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright;
710
+ var init_yoctocolors = __esm({
711
+ "../../node_modules/.pnpm/yoctocolors@2.0.2/node_modules/yoctocolors/index.js"() {
663
712
  "use strict";
664
- import_node_process2 = require("process");
665
- import_node_util2 = require("util");
666
- joinCommand = (filePath, rawArguments) => {
667
- const fileAndArguments = [filePath, ...rawArguments];
668
- const command = fileAndArguments.join(" ");
669
- const escapedCommand = fileAndArguments.map((fileAndArgument) => quoteString(escapeControlCharacters(fileAndArgument))).join(" ");
670
- return { command, escapedCommand };
713
+ import_node_tty = __toESM(require("tty"), 1);
714
+ hasColors = import_node_tty.default.WriteStream.prototype.hasColors();
715
+ format = (open, close) => {
716
+ if (!hasColors) {
717
+ return (input) => input;
718
+ }
719
+ const openCode = `\x1B[${open}m`;
720
+ const closeCode = `\x1B[${close}m`;
721
+ return (input) => {
722
+ const string = input + "";
723
+ let index = string.indexOf(closeCode);
724
+ if (index === -1) {
725
+ return openCode + string + closeCode;
726
+ }
727
+ let result = openCode;
728
+ let lastIndex = 0;
729
+ while (index !== -1) {
730
+ result += string.slice(lastIndex, index) + openCode;
731
+ lastIndex = index + closeCode.length;
732
+ index = string.indexOf(closeCode, lastIndex);
733
+ }
734
+ result += string.slice(lastIndex) + closeCode;
735
+ return result;
736
+ };
671
737
  };
672
- escapeLines = (lines) => (0, import_node_util2.stripVTControlCharacters)(lines).split("\n").map((line) => escapeControlCharacters(line)).join("\n");
673
- escapeControlCharacters = (line) => line.replaceAll(SPECIAL_CHAR_REGEXP, (character) => escapeControlCharacter(character));
674
- escapeControlCharacter = (character) => {
675
- const commonEscape = COMMON_ESCAPES[character];
676
- if (commonEscape !== void 0) {
677
- return commonEscape;
738
+ reset = format(0, 0);
739
+ bold = format(1, 22);
740
+ dim = format(2, 22);
741
+ italic = format(3, 23);
742
+ underline = format(4, 24);
743
+ overline = format(53, 55);
744
+ inverse = format(7, 27);
745
+ hidden = format(8, 28);
746
+ strikethrough = format(9, 29);
747
+ black = format(30, 39);
748
+ red = format(31, 39);
749
+ green = format(32, 39);
750
+ yellow = format(33, 39);
751
+ blue = format(34, 39);
752
+ magenta = format(35, 39);
753
+ cyan = format(36, 39);
754
+ white = format(37, 39);
755
+ gray = format(90, 39);
756
+ bgBlack = format(40, 49);
757
+ bgRed = format(41, 49);
758
+ bgGreen = format(42, 49);
759
+ bgYellow = format(43, 49);
760
+ bgBlue = format(44, 49);
761
+ bgMagenta = format(45, 49);
762
+ bgCyan = format(46, 49);
763
+ bgWhite = format(47, 49);
764
+ bgGray = format(100, 49);
765
+ redBright = format(91, 39);
766
+ greenBright = format(92, 39);
767
+ yellowBright = format(93, 39);
768
+ blueBright = format(94, 39);
769
+ magentaBright = format(95, 39);
770
+ cyanBright = format(96, 39);
771
+ whiteBright = format(97, 39);
772
+ bgRedBright = format(101, 49);
773
+ bgGreenBright = format(102, 49);
774
+ bgYellowBright = format(103, 49);
775
+ bgBlueBright = format(104, 49);
776
+ bgMagentaBright = format(105, 49);
777
+ bgCyanBright = format(106, 49);
778
+ bgWhiteBright = format(107, 49);
779
+ }
780
+ });
781
+
782
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/default.js
783
+ var defaultVerboseFunction, serializeTimestamp, padField, getFinalIcon, ICONS, identity, COLORS;
784
+ var init_default = __esm({
785
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/default.js"() {
786
+ "use strict";
787
+ init_figures();
788
+ init_yoctocolors();
789
+ defaultVerboseFunction = ({
790
+ type,
791
+ message,
792
+ timestamp,
793
+ piped,
794
+ commandId,
795
+ result: { failed = false } = {},
796
+ options: { reject = true }
797
+ }) => {
798
+ const timestampString = serializeTimestamp(timestamp);
799
+ const icon = ICONS[type]({ failed, reject, piped });
800
+ const color = COLORS[type]({ reject });
801
+ return `${gray(`[${timestampString}]`)} ${gray(`[${commandId}]`)} ${color(icon)} ${color(message)}`;
802
+ };
803
+ serializeTimestamp = (timestamp) => `${padField(timestamp.getHours(), 2)}:${padField(timestamp.getMinutes(), 2)}:${padField(timestamp.getSeconds(), 2)}.${padField(timestamp.getMilliseconds(), 3)}`;
804
+ padField = (field, padding) => String(field).padStart(padding, "0");
805
+ getFinalIcon = ({ failed, reject }) => {
806
+ if (!failed) {
807
+ return figures_default.tick;
678
808
  }
679
- const codepoint = character.codePointAt(0);
680
- const codepointHex = codepoint.toString(16);
681
- return codepoint <= ASTRAL_START ? `\\u${codepointHex.padStart(4, "0")}` : `\\U${codepointHex}`;
809
+ return reject ? figures_default.cross : figures_default.warning;
682
810
  };
683
- SPECIAL_CHAR_REGEXP = /\p{Separator}|\p{Other}/gu;
684
- COMMON_ESCAPES = {
685
- " ": " ",
686
- "\b": "\\b",
687
- "\f": "\\f",
688
- "\n": "\\n",
689
- "\r": "\\r",
690
- " ": "\\t"
811
+ ICONS = {
812
+ command: ({ piped }) => piped ? "|" : "$",
813
+ output: () => " ",
814
+ ipc: () => "*",
815
+ error: getFinalIcon,
816
+ duration: getFinalIcon
691
817
  };
692
- ASTRAL_START = 65535;
693
- quoteString = (escapedArgument) => {
694
- if (NO_ESCAPE_REGEXP.test(escapedArgument)) {
695
- return escapedArgument;
818
+ identity = (string) => string;
819
+ COLORS = {
820
+ command: () => bold,
821
+ output: () => identity,
822
+ ipc: () => identity,
823
+ error: ({ reject }) => reject ? redBright : yellowBright,
824
+ duration: () => gray
825
+ };
826
+ }
827
+ });
828
+
829
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/custom.js
830
+ var applyVerboseOnLines, applyVerboseFunction, appendNewline;
831
+ var init_custom = __esm({
832
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/custom.js"() {
833
+ "use strict";
834
+ init_values();
835
+ applyVerboseOnLines = (printedLines, verboseInfo, fdNumber) => {
836
+ const verboseFunction = getVerboseFunction(verboseInfo, fdNumber);
837
+ return printedLines.map(({ verboseLine, verboseObject }) => applyVerboseFunction(verboseLine, verboseObject, verboseFunction)).filter((printedLine) => printedLine !== void 0).map((printedLine) => appendNewline(printedLine)).join("");
838
+ };
839
+ applyVerboseFunction = (verboseLine, verboseObject, verboseFunction) => {
840
+ if (verboseFunction === void 0) {
841
+ return verboseLine;
842
+ }
843
+ const printedLine = verboseFunction(verboseLine, verboseObject);
844
+ if (typeof printedLine === "string") {
845
+ return printedLine;
696
846
  }
697
- return import_node_process2.platform === "win32" ? `"${escapedArgument.replaceAll('"', '""')}"` : `'${escapedArgument.replaceAll("'", "'\\''")}'`;
698
847
  };
699
- NO_ESCAPE_REGEXP = /^[\w./-]+$/;
848
+ appendNewline = (printedLine) => printedLine.endsWith("\n") ? printedLine : `${printedLine}
849
+ `;
700
850
  }
701
851
  });
702
852
 
703
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/log.js
704
- var import_node_fs, import_node_util3, verboseLog, STDERR_FD, addPrefix, addPrefixToLine, identity, getTimestamp, padField, ICONS, serializeLogMessage, TAB_SIZE;
853
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/log.js
854
+ var import_node_fs, import_node_util3, verboseLog, getVerboseObject, getPrintedLines, getPrintedLine, STDERR_FD, serializeVerboseMessage, TAB_SIZE;
705
855
  var init_log = __esm({
706
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/log.js"() {
856
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/log.js"() {
707
857
  "use strict";
708
858
  import_node_fs = require("fs");
709
859
  import_node_util3 = require("util");
710
- init_figures();
711
- init_yoctocolors();
712
860
  init_escape();
713
- verboseLog = (string, verboseId, icon, color) => {
714
- const prefixedLines = addPrefix(string, verboseId, icon, color);
715
- (0, import_node_fs.writeFileSync)(STDERR_FD, `${prefixedLines}
716
- `);
861
+ init_default();
862
+ init_custom();
863
+ verboseLog = ({ type, verboseMessage, fdNumber, verboseInfo, result }) => {
864
+ const verboseObject = getVerboseObject({ type, result, verboseInfo });
865
+ const printedLines = getPrintedLines(verboseMessage, verboseObject);
866
+ const finalLines = applyVerboseOnLines(printedLines, verboseInfo, fdNumber);
867
+ (0, import_node_fs.writeFileSync)(STDERR_FD, finalLines);
868
+ };
869
+ getVerboseObject = ({
870
+ type,
871
+ result,
872
+ verboseInfo: { escapedCommand, commandId, rawOptions: { piped = false, ...options } }
873
+ }) => ({
874
+ type,
875
+ escapedCommand,
876
+ commandId: `${commandId}`,
877
+ timestamp: /* @__PURE__ */ new Date(),
878
+ piped,
879
+ result,
880
+ options
881
+ });
882
+ getPrintedLines = (verboseMessage, verboseObject) => verboseMessage.split("\n").map((message) => getPrintedLine({ ...verboseObject, message }));
883
+ getPrintedLine = (verboseObject) => {
884
+ const verboseLine = defaultVerboseFunction(verboseObject);
885
+ return { verboseLine, verboseObject };
717
886
  };
718
887
  STDERR_FD = 2;
719
- addPrefix = (string, verboseId, icon, color) => string.includes("\n") ? string.split("\n").map((line) => addPrefixToLine(line, verboseId, icon, color)).join("\n") : addPrefixToLine(string, verboseId, icon, color);
720
- addPrefixToLine = (line, verboseId, icon, color = identity) => [
721
- gray(`[${getTimestamp()}]`),
722
- gray(`[${verboseId}]`),
723
- color(ICONS[icon]),
724
- color(line)
725
- ].join(" ");
726
- identity = (string) => string;
727
- getTimestamp = () => {
728
- const date = /* @__PURE__ */ new Date();
729
- return `${padField(date.getHours(), 2)}:${padField(date.getMinutes(), 2)}:${padField(date.getSeconds(), 2)}.${padField(date.getMilliseconds(), 3)}`;
730
- };
731
- padField = (field, padding) => String(field).padStart(padding, "0");
732
- ICONS = {
733
- command: "$",
734
- pipedCommand: "|",
735
- output: " ",
736
- ipc: "*",
737
- error: figures_default.cross,
738
- warning: figures_default.warning,
739
- success: figures_default.tick
740
- };
741
- serializeLogMessage = (message) => {
888
+ serializeVerboseMessage = (message) => {
742
889
  const messageString = typeof message === "string" ? message : (0, import_node_util3.inspect)(message);
743
890
  const escapedMessage = escapeLines(messageString);
744
891
  return escapedMessage.replaceAll(" ", " ".repeat(TAB_SIZE));
@@ -747,129 +894,76 @@ var init_log = __esm({
747
894
  }
748
895
  });
749
896
 
750
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/start.js
897
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/start.js
751
898
  var logCommand;
752
899
  var init_start = __esm({
753
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/start.js"() {
900
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/start.js"() {
754
901
  "use strict";
755
- init_yoctocolors();
756
- init_info();
902
+ init_values();
757
903
  init_log();
758
- logCommand = (escapedCommand, { verbose, verboseId }, { piped = false }) => {
759
- if (!isVerbose(verbose)) {
904
+ logCommand = (escapedCommand, verboseInfo) => {
905
+ if (!isVerbose(verboseInfo)) {
760
906
  return;
761
907
  }
762
- const icon = piped ? "pipedCommand" : "command";
763
- verboseLog(escapedCommand, verboseId, icon, bold);
908
+ verboseLog({
909
+ type: "command",
910
+ verboseMessage: escapedCommand,
911
+ verboseInfo
912
+ });
764
913
  };
765
914
  }
766
915
  });
767
916
 
768
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/duration.js
769
- var import_node_process3, getStartTime, getDurationMs;
770
- var init_duration = __esm({
771
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/duration.js"() {
772
- "use strict";
773
- import_node_process3 = require("process");
774
- getStartTime = () => import_node_process3.hrtime.bigint();
775
- getDurationMs = (startTime) => Number(import_node_process3.hrtime.bigint() - startTime) / 1e6;
776
- }
777
- });
778
-
779
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/standard-stream.js
780
- var import_node_process4, isStandardStream, STANDARD_STREAMS, STANDARD_STREAMS_ALIASES, getStreamName;
781
- var init_standard_stream = __esm({
782
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/standard-stream.js"() {
783
- "use strict";
784
- import_node_process4 = __toESM(require("process"), 1);
785
- isStandardStream = (stream) => STANDARD_STREAMS.includes(stream);
786
- STANDARD_STREAMS = [import_node_process4.default.stdin, import_node_process4.default.stdout, import_node_process4.default.stderr];
787
- STANDARD_STREAMS_ALIASES = ["stdin", "stdout", "stderr"];
788
- getStreamName = (fdNumber) => STANDARD_STREAMS_ALIASES[fdNumber] ?? `stdio[${fdNumber}]`;
789
- }
790
- });
791
-
792
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/specific.js
793
- var normalizeFdSpecificOptions, normalizeFdSpecificOption, getStdioLength, normalizeFdSpecificValue, normalizeOptionObject, compareFdName, getFdNameOrder, parseFdName, parseFd, FD_REGEXP, addDefaultValue, DEFAULT_OPTIONS, FD_SPECIFIC_OPTIONS;
794
- var init_specific = __esm({
795
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/specific.js"() {
917
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/info.js
918
+ var getVerboseInfo, getCommandId, COMMAND_ID, validateVerbose;
919
+ var init_info = __esm({
920
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/info.js"() {
796
921
  "use strict";
797
- init_is_plain_obj();
798
- init_standard_stream();
799
- init_info();
800
- normalizeFdSpecificOptions = (options) => {
801
- const optionsCopy = { ...options };
802
- for (const optionName of FD_SPECIFIC_OPTIONS) {
803
- optionsCopy[optionName] = normalizeFdSpecificOption(options, optionName);
804
- }
805
- return optionsCopy;
806
- };
807
- normalizeFdSpecificOption = (options, optionName) => {
808
- const optionBaseArray = Array.from({ length: getStdioLength(options) + 1 });
809
- const optionArray = normalizeFdSpecificValue(options[optionName], optionBaseArray, optionName);
810
- return addDefaultValue(optionArray, optionName);
922
+ init_values();
923
+ getVerboseInfo = (verbose, escapedCommand, rawOptions) => {
924
+ validateVerbose(verbose);
925
+ const commandId = getCommandId(verbose);
926
+ return {
927
+ verbose,
928
+ escapedCommand,
929
+ commandId,
930
+ rawOptions
931
+ };
811
932
  };
812
- getStdioLength = ({ stdio }) => Array.isArray(stdio) ? Math.max(stdio.length, STANDARD_STREAMS_ALIASES.length) : STANDARD_STREAMS_ALIASES.length;
813
- normalizeFdSpecificValue = (optionValue, optionArray, optionName) => isPlainObject(optionValue) ? normalizeOptionObject(optionValue, optionArray, optionName) : optionArray.fill(optionValue);
814
- normalizeOptionObject = (optionValue, optionArray, optionName) => {
815
- for (const fdName of Object.keys(optionValue).sort(compareFdName)) {
816
- for (const fdNumber of parseFdName(fdName, optionName, optionArray)) {
817
- optionArray[fdNumber] = optionValue[fdName];
933
+ getCommandId = (verbose) => isVerbose({ verbose }) ? COMMAND_ID++ : void 0;
934
+ COMMAND_ID = 0n;
935
+ validateVerbose = (verbose) => {
936
+ for (const fdVerbose of verbose) {
937
+ if (fdVerbose === false) {
938
+ throw new TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);
939
+ }
940
+ if (fdVerbose === true) {
941
+ throw new TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);
942
+ }
943
+ if (!VERBOSE_VALUES.includes(fdVerbose) && !isVerboseFunction(fdVerbose)) {
944
+ const allowedValues = VERBOSE_VALUES.map((allowedValue) => `'${allowedValue}'`).join(", ");
945
+ throw new TypeError(`The "verbose" option must not be ${fdVerbose}. Allowed values are: ${allowedValues} or a function.`);
818
946
  }
819
947
  }
820
- return optionArray;
821
- };
822
- compareFdName = (fdNameA, fdNameB) => getFdNameOrder(fdNameA) < getFdNameOrder(fdNameB) ? 1 : -1;
823
- getFdNameOrder = (fdName) => {
824
- if (fdName === "stdout" || fdName === "stderr") {
825
- return 0;
826
- }
827
- return fdName === "all" ? 2 : 1;
828
- };
829
- parseFdName = (fdName, optionName, optionArray) => {
830
- if (fdName === "ipc") {
831
- return [optionArray.length - 1];
832
- }
833
- const fdNumber = parseFd(fdName);
834
- if (fdNumber === void 0 || fdNumber === 0) {
835
- throw new TypeError(`"${optionName}.${fdName}" is invalid.
836
- It must be "${optionName}.stdout", "${optionName}.stderr", "${optionName}.all", "${optionName}.ipc", or "${optionName}.fd3", "${optionName}.fd4" (and so on).`);
837
- }
838
- if (fdNumber >= optionArray.length) {
839
- throw new TypeError(`"${optionName}.${fdName}" is invalid: that file descriptor does not exist.
840
- Please set the "stdio" option to ensure that file descriptor exists.`);
841
- }
842
- return fdNumber === "all" ? [1, 2] : [fdNumber];
843
- };
844
- parseFd = (fdName) => {
845
- if (fdName === "all") {
846
- return fdName;
847
- }
848
- if (STANDARD_STREAMS_ALIASES.includes(fdName)) {
849
- return STANDARD_STREAMS_ALIASES.indexOf(fdName);
850
- }
851
- const regexpResult = FD_REGEXP.exec(fdName);
852
- if (regexpResult !== null) {
853
- return Number(regexpResult[1]);
854
- }
855
- };
856
- FD_REGEXP = /^fd(\d+)$/;
857
- addDefaultValue = (optionArray, optionName) => optionArray.map((optionValue) => optionValue === void 0 ? DEFAULT_OPTIONS[optionName] : optionValue);
858
- DEFAULT_OPTIONS = {
859
- lines: false,
860
- buffer: true,
861
- maxBuffer: 1e3 * 1e3 * 100,
862
- verbose: verboseDefault,
863
- stripFinalNewline: true
864
948
  };
865
- FD_SPECIFIC_OPTIONS = ["lines", "buffer", "maxBuffer", "verbose", "stripFinalNewline"];
866
949
  }
867
950
  });
868
951
 
869
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/command.js
952
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/duration.js
953
+ var import_node_process4, getStartTime, getDurationMs;
954
+ var init_duration = __esm({
955
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/duration.js"() {
956
+ "use strict";
957
+ import_node_process4 = require("process");
958
+ getStartTime = () => import_node_process4.hrtime.bigint();
959
+ getDurationMs = (startTime) => Number(import_node_process4.hrtime.bigint() - startTime) / 1e6;
960
+ }
961
+ });
962
+
963
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/command.js
870
964
  var handleCommand;
871
965
  var init_command = __esm({
872
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/command.js"() {
966
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/command.js"() {
873
967
  "use strict";
874
968
  init_start();
875
969
  init_info();
@@ -879,8 +973,9 @@ var init_command = __esm({
879
973
  handleCommand = (filePath, rawArguments, rawOptions) => {
880
974
  const startTime = getStartTime();
881
975
  const { command, escapedCommand } = joinCommand(filePath, rawArguments);
882
- const verboseInfo = getVerboseInfo(normalizeFdSpecificOption(rawOptions, "verbose"));
883
- logCommand(escapedCommand, verboseInfo, rawOptions);
976
+ const verbose = normalizeFdSpecificOption(rawOptions, "verbose");
977
+ const verboseInfo = getVerboseInfo(verbose, escapedCommand, { ...rawOptions });
978
+ logCommand(escapedCommand, verboseInfo);
884
979
  return {
885
980
  command,
886
981
  escapedCommand,
@@ -988,12 +1083,12 @@ var require_isexe = __commonJS({
988
1083
  if (typeof Promise !== "function") {
989
1084
  throw new TypeError("callback not provided");
990
1085
  }
991
- return new Promise(function(resolve16, reject) {
1086
+ return new Promise(function(resolve17, reject) {
992
1087
  isexe(path12, options || {}, function(er, is) {
993
1088
  if (er) {
994
1089
  reject(er);
995
1090
  } else {
996
- resolve16(is);
1091
+ resolve17(is);
997
1092
  }
998
1093
  });
999
1094
  });
@@ -1060,27 +1155,27 @@ var require_which = __commonJS({
1060
1155
  opt = {};
1061
1156
  const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
1062
1157
  const found = [];
1063
- const step = (i2) => new Promise((resolve16, reject) => {
1158
+ const step = (i2) => new Promise((resolve17, reject) => {
1064
1159
  if (i2 === pathEnv.length)
1065
- return opt.all && found.length ? resolve16(found) : reject(getNotFoundError(cmd));
1160
+ return opt.all && found.length ? resolve17(found) : reject(getNotFoundError(cmd));
1066
1161
  const ppRaw = pathEnv[i2];
1067
1162
  const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
1068
1163
  const pCmd = path12.join(pathPart, cmd);
1069
1164
  const p2 = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
1070
- resolve16(subStep(p2, i2, 0));
1165
+ resolve17(subStep(p2, i2, 0));
1071
1166
  });
1072
- const subStep = (p2, i2, ii) => new Promise((resolve16, reject) => {
1167
+ const subStep = (p2, i2, ii) => new Promise((resolve17, reject) => {
1073
1168
  if (ii === pathExt.length)
1074
- return resolve16(step(i2 + 1));
1169
+ return resolve17(step(i2 + 1));
1075
1170
  const ext = pathExt[ii];
1076
1171
  isexe(p2 + ext, { pathExt: pathExtExe }, (er, is) => {
1077
1172
  if (!er && is) {
1078
1173
  if (opt.all)
1079
1174
  found.push(p2 + ext);
1080
1175
  else
1081
- return resolve16(p2 + ext);
1176
+ return resolve17(p2 + ext);
1082
1177
  }
1083
- return resolve16(subStep(p2, i2, ii + 1));
1178
+ return resolve17(subStep(p2, i2, ii + 1));
1084
1179
  });
1085
1180
  });
1086
1181
  return cb ? step(0).then((res) => cb(null, res), cb) : step(0);
@@ -1458,10 +1553,10 @@ var init_npm_run_path = __esm({
1458
1553
  }
1459
1554
  });
1460
1555
 
1461
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/final-error.js
1556
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/final-error.js
1462
1557
  var getFinalError, DiscardedError, setErrorName, isExecaError, execaErrorSymbol, isErrorInstance, ExecaError, ExecaSyncError;
1463
1558
  var init_final_error = __esm({
1464
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/final-error.js"() {
1559
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/final-error.js"() {
1465
1560
  "use strict";
1466
1561
  getFinalError = (originalError, message, isSync) => {
1467
1562
  const ErrorClass = isSync ? ExecaSyncError : ExecaError;
@@ -1887,10 +1982,10 @@ var init_main = __esm({
1887
1982
  }
1888
1983
  });
1889
1984
 
1890
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/signal.js
1985
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/signal.js
1891
1986
  var import_node_os3, normalizeKillSignal, normalizeSignalArgument, normalizeSignal2, normalizeSignalInteger, getSignalsIntegerToName, signalsIntegerToName, normalizeSignalName, getAvailableSignals, getAvailableSignalNames, getAvailableSignalIntegers, getSignalDescription;
1892
1987
  var init_signal = __esm({
1893
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/signal.js"() {
1988
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/signal.js"() {
1894
1989
  "use strict";
1895
1990
  import_node_os3 = require("os");
1896
1991
  init_main();
@@ -1939,10 +2034,10 @@ Available signal numbers: ${getAvailableSignalIntegers()}.`;
1939
2034
  }
1940
2035
  });
1941
2036
 
1942
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/kill.js
2037
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/kill.js
1943
2038
  var import_promises, normalizeForceKillAfterDelay, DEFAULT_FORCE_KILL_TIMEOUT, subprocessKill, parseKillArguments, emitKillError, setKillTimeout, killOnTimeout;
1944
2039
  var init_kill = __esm({
1945
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/kill.js"() {
2040
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/kill.js"() {
1946
2041
  "use strict";
1947
2042
  import_promises = require("timers/promises");
1948
2043
  init_final_error();
@@ -2015,10 +2110,10 @@ var init_kill = __esm({
2015
2110
  }
2016
2111
  });
2017
2112
 
2018
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/abort-signal.js
2113
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/abort-signal.js
2019
2114
  var import_node_events, onAbortedSignal;
2020
2115
  var init_abort_signal = __esm({
2021
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/abort-signal.js"() {
2116
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/abort-signal.js"() {
2022
2117
  "use strict";
2023
2118
  import_node_events = require("events");
2024
2119
  onAbortedSignal = async (mainSignal, stopSignal) => {
@@ -2029,10 +2124,10 @@ var init_abort_signal = __esm({
2029
2124
  }
2030
2125
  });
2031
2126
 
2032
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/cancel.js
2127
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/cancel.js
2033
2128
  var validateCancelSignal, throwOnCancel, terminateOnCancel;
2034
2129
  var init_cancel = __esm({
2035
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/cancel.js"() {
2130
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/cancel.js"() {
2036
2131
  "use strict";
2037
2132
  init_abort_signal();
2038
2133
  validateCancelSignal = ({ cancelSignal }) => {
@@ -2050,10 +2145,10 @@ var init_cancel = __esm({
2050
2145
  }
2051
2146
  });
2052
2147
 
2053
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/validation.js
2148
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/validation.js
2054
2149
  var validateIpcMethod, validateIpcOption, validateConnection, throwOnEarlyDisconnect, throwOnStrictDeadlockError, getStrictResponseError, throwOnMissingStrict, throwOnStrictDisconnect, getAbortDisconnectError, throwOnMissingParent, handleEpipeError, handleSerializationError, isSerializationError, SERIALIZATION_ERROR_CODES, SERIALIZATION_ERROR_MESSAGES, getMethodName, getNamespaceName, getOtherProcessName, disconnect;
2055
2150
  var init_validation = __esm({
2056
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/validation.js"() {
2151
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/validation.js"() {
2057
2152
  "use strict";
2058
2153
  validateIpcMethod = ({ methodName, isSubprocess, ipc, isConnected: isConnected2 }) => {
2059
2154
  validateIpcOption(methodName, isSubprocess, ipc);
@@ -2128,25 +2223,25 @@ const [receivedMessage] = await Promise.all([
2128
2223
  }
2129
2224
  });
2130
2225
 
2131
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/deferred.js
2226
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/deferred.js
2132
2227
  var createDeferred;
2133
2228
  var init_deferred = __esm({
2134
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/deferred.js"() {
2229
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/deferred.js"() {
2135
2230
  "use strict";
2136
2231
  createDeferred = () => {
2137
2232
  const methods = {};
2138
- const promise = new Promise((resolve16, reject) => {
2139
- Object.assign(methods, { resolve: resolve16, reject });
2233
+ const promise = new Promise((resolve17, reject) => {
2234
+ Object.assign(methods, { resolve: resolve17, reject });
2140
2235
  });
2141
2236
  return Object.assign(promise, methods);
2142
2237
  };
2143
2238
  }
2144
2239
  });
2145
2240
 
2146
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/fd-options.js
2241
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/fd-options.js
2147
2242
  var getToStream, getFromStream, SUBPROCESS_OPTIONS, getFdNumber, parseFdNumber, validateFdNumber, getInvalidStdioOptionMessage, getInvalidStdioOption, getUsedDescriptor, getOptionName, serializeOptionValue;
2148
2243
  var init_fd_options = __esm({
2149
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/fd-options.js"() {
2244
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/fd-options.js"() {
2150
2245
  "use strict";
2151
2246
  init_specific();
2152
2247
  getToStream = (destination, to = "stdin") => {
@@ -2230,10 +2325,10 @@ Please set this option with "pipe" instead.`;
2230
2325
  }
2231
2326
  });
2232
2327
 
2233
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/max-listeners.js
2328
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/max-listeners.js
2234
2329
  var import_node_events2, incrementMaxListeners;
2235
2330
  var init_max_listeners = __esm({
2236
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/utils/max-listeners.js"() {
2331
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/utils/max-listeners.js"() {
2237
2332
  "use strict";
2238
2333
  import_node_events2 = require("events");
2239
2334
  incrementMaxListeners = (eventEmitter, maxListenersIncrement, signal) => {
@@ -2249,10 +2344,10 @@ var init_max_listeners = __esm({
2249
2344
  }
2250
2345
  });
2251
2346
 
2252
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/reference.js
2347
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/reference.js
2253
2348
  var addReference, addReferenceCount, removeReference, removeReferenceCount, undoAddedReferences, redoAddedReferences;
2254
2349
  var init_reference = __esm({
2255
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/reference.js"() {
2350
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/reference.js"() {
2256
2351
  "use strict";
2257
2352
  addReference = (channel, reference) => {
2258
2353
  if (reference) {
@@ -2285,10 +2380,10 @@ var init_reference = __esm({
2285
2380
  }
2286
2381
  });
2287
2382
 
2288
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/incoming.js
2383
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/incoming.js
2289
2384
  var import_node_events3, import_promises2, onMessage, onDisconnect, INCOMING_MESSAGES;
2290
2385
  var init_incoming = __esm({
2291
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/incoming.js"() {
2386
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/incoming.js"() {
2292
2387
  "use strict";
2293
2388
  import_node_events3 = require("events");
2294
2389
  import_promises2 = require("timers/promises");
@@ -2338,10 +2433,10 @@ var init_incoming = __esm({
2338
2433
  }
2339
2434
  });
2340
2435
 
2341
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/forward.js
2436
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/forward.js
2342
2437
  var import_node_events4, getIpcEmitter, IPC_EMITTERS, forwardEvents, isConnected;
2343
2438
  var init_forward = __esm({
2344
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/forward.js"() {
2439
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/forward.js"() {
2345
2440
  "use strict";
2346
2441
  import_node_events4 = require("events");
2347
2442
  init_incoming();
@@ -2386,10 +2481,10 @@ var init_forward = __esm({
2386
2481
  }
2387
2482
  });
2388
2483
 
2389
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/strict.js
2484
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/strict.js
2390
2485
  var import_node_events5, handleSendStrict, count, validateStrictDeadlock, handleStrictRequest, handleStrictResponse, waitForStrictResponse, STRICT_RESPONSES, throwOnDisconnect, REQUEST_TYPE, RESPONSE_TYPE;
2391
2486
  var init_strict = __esm({
2392
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/strict.js"() {
2487
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/strict.js"() {
2393
2488
  "use strict";
2394
2489
  import_node_events5 = require("events");
2395
2490
  init_deferred();
@@ -2482,12 +2577,13 @@ var init_strict = __esm({
2482
2577
  }
2483
2578
  });
2484
2579
 
2485
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/outgoing.js
2580
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/outgoing.js
2486
2581
  var startSendMessage, endSendMessage, waitForOutgoingMessages, OUTGOING_MESSAGES, hasMessageListeners, getMinListenerCount;
2487
2582
  var init_outgoing = __esm({
2488
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/outgoing.js"() {
2583
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/outgoing.js"() {
2489
2584
  "use strict";
2490
2585
  init_deferred();
2586
+ init_specific();
2491
2587
  init_fd_options();
2492
2588
  init_strict();
2493
2589
  startSendMessage = (anyProcess, wrappedMessage, strict) => {
@@ -2514,14 +2610,14 @@ var init_outgoing = __esm({
2514
2610
  };
2515
2611
  OUTGOING_MESSAGES = /* @__PURE__ */ new WeakMap();
2516
2612
  hasMessageListeners = (anyProcess, ipcEmitter) => ipcEmitter.listenerCount("message") > getMinListenerCount(anyProcess);
2517
- getMinListenerCount = (anyProcess) => SUBPROCESS_OPTIONS.has(anyProcess) && !SUBPROCESS_OPTIONS.get(anyProcess).options.buffer.at(-1) ? 1 : 0;
2613
+ getMinListenerCount = (anyProcess) => SUBPROCESS_OPTIONS.has(anyProcess) && !getFdSpecificValue(SUBPROCESS_OPTIONS.get(anyProcess).options.buffer, "ipc") ? 1 : 0;
2518
2614
  }
2519
2615
  });
2520
2616
 
2521
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/send.js
2617
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/send.js
2522
2618
  var import_node_util4, sendMessage, sendMessageAsync, sendOneMessage, getSendMethod, PROCESS_SEND_METHODS;
2523
2619
  var init_send = __esm({
2524
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/send.js"() {
2620
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/send.js"() {
2525
2621
  "use strict";
2526
2622
  import_node_util4 = require("util");
2527
2623
  init_validation();
@@ -2598,10 +2694,10 @@ var init_send = __esm({
2598
2694
  }
2599
2695
  });
2600
2696
 
2601
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/graceful.js
2697
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/graceful.js
2602
2698
  var import_promises3, sendAbort, getCancelSignal, startIpc, cancelListening, handleAbort, GRACEFUL_CANCEL_TYPE, abortOnDisconnect, cancelController;
2603
2699
  var init_graceful = __esm({
2604
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/graceful.js"() {
2700
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/graceful.js"() {
2605
2701
  "use strict";
2606
2702
  import_promises3 = require("timers/promises");
2607
2703
  init_send();
@@ -2659,10 +2755,10 @@ var init_graceful = __esm({
2659
2755
  }
2660
2756
  });
2661
2757
 
2662
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/graceful.js
2758
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/graceful.js
2663
2759
  var validateGracefulCancel, throwOnGracefulCancel, sendOnAbort, getReason;
2664
2760
  var init_graceful2 = __esm({
2665
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/graceful.js"() {
2761
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/graceful.js"() {
2666
2762
  "use strict";
2667
2763
  init_abort_signal();
2668
2764
  init_graceful();
@@ -2724,10 +2820,10 @@ var init_graceful2 = __esm({
2724
2820
  }
2725
2821
  });
2726
2822
 
2727
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/timeout.js
2823
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/timeout.js
2728
2824
  var import_promises4, validateTimeout, throwOnTimeout, killAfterTimeout;
2729
2825
  var init_timeout = __esm({
2730
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/timeout.js"() {
2826
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/timeout.js"() {
2731
2827
  "use strict";
2732
2828
  import_promises4 = require("timers/promises");
2733
2829
  init_final_error();
@@ -2746,10 +2842,10 @@ var init_timeout = __esm({
2746
2842
  }
2747
2843
  });
2748
2844
 
2749
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/node.js
2845
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/node.js
2750
2846
  var import_node_process6, import_node_path3, mapNode, handleNodeOption;
2751
2847
  var init_node = __esm({
2752
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/node.js"() {
2848
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/node.js"() {
2753
2849
  "use strict";
2754
2850
  import_node_process6 = require("process");
2755
2851
  import_node_path3 = require("path");
@@ -2794,10 +2890,10 @@ var init_node = __esm({
2794
2890
  }
2795
2891
  });
2796
2892
 
2797
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/ipc-input.js
2893
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/ipc-input.js
2798
2894
  var import_node_v8, validateIpcInputOption, validateAdvancedInput, validateJsonInput, validateIpcInput, sendIpcInput;
2799
2895
  var init_ipc_input = __esm({
2800
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/ipc-input.js"() {
2896
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/ipc-input.js"() {
2801
2897
  "use strict";
2802
2898
  import_node_v8 = require("v8");
2803
2899
  validateIpcInputOption = ({ ipcInput, ipc, serialization }) => {
@@ -2836,10 +2932,10 @@ var init_ipc_input = __esm({
2836
2932
  }
2837
2933
  });
2838
2934
 
2839
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/encoding-option.js
2935
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/encoding-option.js
2840
2936
  var validateEncoding, TEXT_ENCODINGS, BINARY_ENCODINGS, ENCODINGS, getCorrectEncoding, ENCODING_ALIASES, serializeEncoding;
2841
2937
  var init_encoding_option = __esm({
2842
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/encoding-option.js"() {
2938
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/encoding-option.js"() {
2843
2939
  "use strict";
2844
2940
  validateEncoding = ({ encoding }) => {
2845
2941
  if (ENCODINGS.has(encoding)) {
@@ -2884,10 +2980,10 @@ Please rename it to one of: ${correctEncodings}.`);
2884
2980
  }
2885
2981
  });
2886
2982
 
2887
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/cwd.js
2983
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/cwd.js
2888
2984
  var import_node_fs2, import_node_path4, import_node_process7, normalizeCwd, getDefaultCwd, fixCwdError;
2889
2985
  var init_cwd = __esm({
2890
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/cwd.js"() {
2986
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/cwd.js"() {
2891
2987
  "use strict";
2892
2988
  import_node_fs2 = require("fs");
2893
2989
  import_node_path4 = require("path");
@@ -2927,10 +3023,10 @@ ${originalMessage}`;
2927
3023
  }
2928
3024
  });
2929
3025
 
2930
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/options.js
3026
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/options.js
2931
3027
  var import_node_path5, import_node_process8, import_cross_spawn, normalizeOptions, addDefaultOptions, getEnv;
2932
3028
  var init_options = __esm({
2933
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/arguments/options.js"() {
3029
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/arguments/options.js"() {
2934
3030
  "use strict";
2935
3031
  import_node_path5 = require("path");
2936
3032
  import_node_process8 = __toESM(require("process"), 1);
@@ -3501,13 +3597,14 @@ var init_source = __esm({
3501
3597
  }
3502
3598
  });
3503
3599
 
3504
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/max-buffer.js
3600
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/max-buffer.js
3505
3601
  var handleMaxBuffer, getMaxBufferUnit, checkIpcMaxBuffer, getMaxBufferMessage, getMaxBufferInfo, isMaxBufferSync, truncateMaxBufferSync, getMaxBufferSync;
3506
3602
  var init_max_buffer = __esm({
3507
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/max-buffer.js"() {
3603
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/max-buffer.js"() {
3508
3604
  "use strict";
3509
3605
  init_source();
3510
3606
  init_standard_stream();
3607
+ init_specific();
3511
3608
  handleMaxBuffer = ({ error, stream, readableObjectMode, lines, encoding, fdNumber }) => {
3512
3609
  if (!(error instanceof MaxBufferError)) {
3513
3610
  throw error;
@@ -3550,10 +3647,11 @@ var init_max_buffer = __esm({
3550
3647
  }
3551
3648
  const { maxBufferInfo: { fdNumber, unit } } = error;
3552
3649
  delete error.maxBufferInfo;
3650
+ const threshold = getFdSpecificValue(maxBuffer, fdNumber);
3553
3651
  if (fdNumber === "ipc") {
3554
- return { streamName: "IPC output", threshold: maxBuffer.at(-1), unit: "messages" };
3652
+ return { streamName: "IPC output", threshold, unit: "messages" };
3555
3653
  }
3556
- return { streamName: getStreamName(fdNumber), threshold: maxBuffer[fdNumber], unit };
3654
+ return { streamName: getStreamName(fdNumber), threshold, unit };
3557
3655
  };
3558
3656
  isMaxBufferSync = (resultError, output, maxBuffer) => resultError?.code === "ENOBUFS" && output !== null && output.some((result) => result !== null && result.length > getMaxBufferSync(maxBuffer));
3559
3657
  truncateMaxBufferSync = (result, isMaxBuffer, maxBuffer) => {
@@ -3567,10 +3665,10 @@ var init_max_buffer = __esm({
3567
3665
  }
3568
3666
  });
3569
3667
 
3570
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/message.js
3668
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/message.js
3571
3669
  var import_node_util5, createMessages, getErrorPrefix, getForcefulSuffix, getOriginalMessage, serializeIpcMessage, serializeMessagePart, serializeMessageItem;
3572
3670
  var init_message = __esm({
3573
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/message.js"() {
3671
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/message.js"() {
3574
3672
  "use strict";
3575
3673
  import_node_util5 = require("util");
3576
3674
  init_strip_final_newline();
@@ -3699,10 +3797,10 @@ ${originalMessage}`;
3699
3797
  }
3700
3798
  });
3701
3799
 
3702
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/result.js
3800
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/result.js
3703
3801
  var makeSuccessResult, makeEarlyError, makeError, getErrorProperties, omitUndefinedProperties, normalizeExitPayload;
3704
3802
  var init_result = __esm({
3705
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/result.js"() {
3803
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/result.js"() {
3706
3804
  "use strict";
3707
3805
  init_signal();
3708
3806
  init_duration();
@@ -4021,88 +4119,61 @@ var init_pretty_ms = __esm({
4021
4119
  }
4022
4120
  });
4023
4121
 
4024
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/error.js
4122
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/error.js
4025
4123
  var logError;
4026
4124
  var init_error = __esm({
4027
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/error.js"() {
4125
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/error.js"() {
4028
4126
  "use strict";
4029
- init_yoctocolors();
4030
4127
  init_log();
4031
- logError = ({ message, failed, reject, verboseId, icon }) => {
4032
- if (!failed) {
4033
- return;
4128
+ logError = (result, verboseInfo) => {
4129
+ if (result.failed) {
4130
+ verboseLog({
4131
+ type: "error",
4132
+ verboseMessage: result.shortMessage,
4133
+ verboseInfo,
4134
+ result
4135
+ });
4034
4136
  }
4035
- const color = reject ? redBright : yellowBright;
4036
- verboseLog(message, verboseId, icon, color);
4037
4137
  };
4038
4138
  }
4039
4139
  });
4040
4140
 
4041
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/complete.js
4042
- var logFinalResult, logEarlyResult, logResult, logDuration, getIcon;
4141
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/complete.js
4142
+ var logResult, logDuration;
4043
4143
  var init_complete = __esm({
4044
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/complete.js"() {
4144
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/complete.js"() {
4045
4145
  "use strict";
4046
4146
  init_pretty_ms();
4047
- init_yoctocolors();
4048
- init_escape();
4049
- init_duration();
4050
- init_info();
4147
+ init_values();
4051
4148
  init_log();
4052
4149
  init_error();
4053
- logFinalResult = ({ shortMessage, failed, durationMs }, reject, verboseInfo) => {
4054
- logResult({
4055
- message: shortMessage,
4056
- failed,
4057
- reject,
4058
- durationMs,
4059
- verboseInfo
4060
- });
4061
- };
4062
- logEarlyResult = (error, startTime, verboseInfo) => {
4063
- logResult({
4064
- message: escapeLines(String(error)),
4065
- failed: true,
4066
- reject: true,
4067
- durationMs: getDurationMs(startTime),
4068
- verboseInfo
4069
- });
4070
- };
4071
- logResult = ({ message, failed, reject, durationMs, verboseInfo: { verbose, verboseId } }) => {
4072
- if (!isVerbose(verbose)) {
4150
+ logResult = (result, verboseInfo) => {
4151
+ if (!isVerbose(verboseInfo)) {
4073
4152
  return;
4074
4153
  }
4075
- const icon = getIcon(failed, reject);
4076
- logError({
4077
- message,
4078
- failed,
4079
- reject,
4080
- verboseId,
4081
- icon
4082
- });
4083
- logDuration(durationMs, verboseId, icon);
4154
+ logError(result, verboseInfo);
4155
+ logDuration(result, verboseInfo);
4084
4156
  };
4085
- logDuration = (durationMs, verboseId, icon) => {
4086
- const durationMessage = `(done in ${prettyMilliseconds(durationMs)})`;
4087
- verboseLog(durationMessage, verboseId, icon, gray);
4088
- };
4089
- getIcon = (failed, reject) => {
4090
- if (!failed) {
4091
- return "success";
4092
- }
4093
- return reject ? "error" : "warning";
4157
+ logDuration = (result, verboseInfo) => {
4158
+ const verboseMessage = `(done in ${prettyMilliseconds(result.durationMs)})`;
4159
+ verboseLog({
4160
+ type: "duration",
4161
+ verboseMessage,
4162
+ verboseInfo,
4163
+ result
4164
+ });
4094
4165
  };
4095
4166
  }
4096
4167
  });
4097
4168
 
4098
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/reject.js
4169
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/reject.js
4099
4170
  var handleResult;
4100
4171
  var init_reject = __esm({
4101
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/reject.js"() {
4172
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/reject.js"() {
4102
4173
  "use strict";
4103
4174
  init_complete();
4104
4175
  handleResult = (result, verboseInfo, { reject }) => {
4105
- logFinalResult(result, reject, verboseInfo);
4176
+ logResult(result, verboseInfo);
4106
4177
  if (result.failed && reject) {
4107
4178
  throw result;
4108
4179
  }
@@ -4111,10 +4182,10 @@ var init_reject = __esm({
4111
4182
  }
4112
4183
  });
4113
4184
 
4114
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/type.js
4185
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/type.js
4115
4186
  var getStdioItemType, getTransformObjectType, getDuplexType, getTransformStreamType, validateNonGeneratorType, checkUndefinedOption, getGeneratorObjectType, checkBooleanOption, isGenerator, isAsyncGenerator, isSyncGenerator, isTransformOptions, isUrl, isRegularUrl, isFilePathObject, isFilePathString, isUnknownStdioString, KNOWN_STDIO_STRINGS, isReadableStream2, isWritableStream2, isWebStream, isTransformStream, isAsyncIterableObject, isIterableObject, isObject, TRANSFORM_TYPES, FILE_TYPES, SPECIAL_DUPLICATE_TYPES_SYNC, SPECIAL_DUPLICATE_TYPES, FORBID_DUPLICATE_TYPES, TYPE_TO_MESSAGE;
4116
4187
  var init_type = __esm({
4117
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/type.js"() {
4188
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/type.js"() {
4118
4189
  "use strict";
4119
4190
  init_is_stream();
4120
4191
  init_is_plain_obj();
@@ -4245,10 +4316,10 @@ var init_type = __esm({
4245
4316
  }
4246
4317
  });
4247
4318
 
4248
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/object-mode.js
4319
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/object-mode.js
4249
4320
  var getTransformObjectModes, getOutputObjectModes, getInputObjectModes, getFdObjectMode;
4250
4321
  var init_object_mode = __esm({
4251
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/object-mode.js"() {
4322
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/object-mode.js"() {
4252
4323
  "use strict";
4253
4324
  init_type();
4254
4325
  getTransformObjectModes = (objectMode, index, newTransforms, direction) => direction === "output" ? getOutputObjectModes(objectMode, index, newTransforms) : getInputObjectModes(objectMode, index, newTransforms);
@@ -4272,10 +4343,10 @@ var init_object_mode = __esm({
4272
4343
  }
4273
4344
  });
4274
4345
 
4275
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/normalize.js
4346
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/normalize.js
4276
4347
  var normalizeTransforms, getTransforms, normalizeTransform, normalizeDuplex, normalizeTransformStream, normalizeGenerator, sortTransforms;
4277
4348
  var init_normalize = __esm({
4278
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/normalize.js"() {
4349
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/normalize.js"() {
4279
4350
  "use strict";
4280
4351
  init_is_plain_obj();
4281
4352
  init_encoding_option();
@@ -4376,10 +4447,10 @@ var init_normalize = __esm({
4376
4447
  }
4377
4448
  });
4378
4449
 
4379
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/direction.js
4450
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/direction.js
4380
4451
  var import_node_process9, getStreamDirection, getStdioItemDirection, KNOWN_DIRECTIONS, anyDirection, alwaysInput, guessStreamDirection, getStandardStreamDirection, DEFAULT_DIRECTION;
4381
4452
  var init_direction = __esm({
4382
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/direction.js"() {
4453
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/direction.js"() {
4383
4454
  "use strict";
4384
4455
  import_node_process9 = __toESM(require("process"), 1);
4385
4456
  init_is_stream();
@@ -4434,25 +4505,26 @@ var init_direction = __esm({
4434
4505
  }
4435
4506
  });
4436
4507
 
4437
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/array.js
4508
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/array.js
4438
4509
  var normalizeIpcStdioArray;
4439
4510
  var init_array2 = __esm({
4440
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/array.js"() {
4511
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/array.js"() {
4441
4512
  "use strict";
4442
4513
  normalizeIpcStdioArray = (stdioArray, ipc) => ipc && !stdioArray.includes("ipc") ? [...stdioArray, "ipc"] : stdioArray;
4443
4514
  }
4444
4515
  });
4445
4516
 
4446
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/stdio-option.js
4517
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/stdio-option.js
4447
4518
  var normalizeStdioOption, getStdioArray, hasAlias, addDefaultValue2, normalizeStdioSync, isOutputPipeOnly;
4448
4519
  var init_stdio_option = __esm({
4449
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/stdio-option.js"() {
4520
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/stdio-option.js"() {
4450
4521
  "use strict";
4451
4522
  init_standard_stream();
4452
4523
  init_array2();
4453
- normalizeStdioOption = ({ stdio, ipc, buffer, verbose, ...options }, isSync) => {
4524
+ init_values();
4525
+ normalizeStdioOption = ({ stdio, ipc, buffer, ...options }, verboseInfo, isSync) => {
4454
4526
  const stdioArray = getStdioArray(stdio, options).map((stdioOption, fdNumber) => addDefaultValue2(stdioOption, fdNumber));
4455
- return isSync ? normalizeStdioSync(stdioArray, buffer, verbose) : normalizeIpcStdioArray(stdioArray, ipc);
4527
+ return isSync ? normalizeStdioSync(stdioArray, buffer, verboseInfo) : normalizeIpcStdioArray(stdioArray, ipc);
4456
4528
  };
4457
4529
  getStdioArray = (stdio, options) => {
4458
4530
  if (stdio === void 0) {
@@ -4480,15 +4552,15 @@ var init_stdio_option = __esm({
4480
4552
  }
4481
4553
  return stdioOption;
4482
4554
  };
4483
- normalizeStdioSync = (stdioArray, buffer, verbose) => stdioArray.map((stdioOption, fdNumber) => !buffer[fdNumber] && fdNumber !== 0 && verbose[fdNumber] !== "full" && isOutputPipeOnly(stdioOption) ? "ignore" : stdioOption);
4555
+ normalizeStdioSync = (stdioArray, buffer, verboseInfo) => stdioArray.map((stdioOption, fdNumber) => !buffer[fdNumber] && fdNumber !== 0 && !isFullVerbose(verboseInfo, fdNumber) && isOutputPipeOnly(stdioOption) ? "ignore" : stdioOption);
4484
4556
  isOutputPipeOnly = (stdioOption) => stdioOption === "pipe" || Array.isArray(stdioOption) && stdioOption.every((item) => item === "pipe");
4485
4557
  }
4486
4558
  });
4487
4559
 
4488
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/native.js
4560
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/native.js
4489
4561
  var import_node_fs3, import_node_tty2, handleNativeStream, handleNativeStreamSync, getTargetFd, getTargetFdNumber, handleNativeStreamAsync, getStandardStream;
4490
4562
  var init_native = __esm({
4491
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/native.js"() {
4563
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/native.js"() {
4492
4564
  "use strict";
4493
4565
  import_node_fs3 = require("fs");
4494
4566
  import_node_tty2 = __toESM(require("tty"), 1);
@@ -4564,10 +4636,10 @@ var init_native = __esm({
4564
4636
  }
4565
4637
  });
4566
4638
 
4567
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/input-option.js
4639
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/input-option.js
4568
4640
  var handleInputOptions, handleInputOption, getInputType, handleInputFileOption, getInputFileType;
4569
4641
  var init_input_option = __esm({
4570
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/input-option.js"() {
4642
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/input-option.js"() {
4571
4643
  "use strict";
4572
4644
  init_is_stream();
4573
4645
  init_uint_array();
@@ -4609,10 +4681,10 @@ var init_input_option = __esm({
4609
4681
  }
4610
4682
  });
4611
4683
 
4612
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/duplicate.js
4684
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/duplicate.js
4613
4685
  var filterDuplicates, getDuplicateStream, getOtherStdioItems, validateDuplicateStreamSync, getDuplicateStreamInstance, hasSameValue, validateDuplicateTransform, throwOnDuplicateStream;
4614
4686
  var init_duplicate = __esm({
4615
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/duplicate.js"() {
4687
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/duplicate.js"() {
4616
4688
  "use strict";
4617
4689
  init_type();
4618
4690
  filterDuplicates = (stdioItems) => stdioItems.filter((stdioItemOne, indexOne) => stdioItems.every((stdioItemTwo, indexTwo) => stdioItemOne.value !== stdioItemTwo.value || indexOne >= indexTwo || stdioItemOne.type === "generator" || stdioItemOne.type === "asyncGenerator"));
@@ -4691,10 +4763,10 @@ var init_duplicate = __esm({
4691
4763
  }
4692
4764
  });
4693
4765
 
4694
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/handle.js
4766
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/handle.js
4695
4767
  var handleStdio, getFileDescriptor, initializeStdioItems, initializeStdioItem, validateStdioArray, INVALID_STDIO_ARRAY_OPTIONS, validateStreams, validateFileStdio, validateFileObjectMode, getFinalFileDescriptors, getFinalFileDescriptor, addStreamProperties, cleanupCustomStreams, forwardStdio;
4696
4768
  var init_handle = __esm({
4697
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/handle.js"() {
4769
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/handle.js"() {
4698
4770
  "use strict";
4699
4771
  init_standard_stream();
4700
4772
  init_normalize();
@@ -4706,7 +4778,7 @@ var init_handle = __esm({
4706
4778
  init_input_option();
4707
4779
  init_duplicate();
4708
4780
  handleStdio = (addProperties3, options, verboseInfo, isSync) => {
4709
- const stdio = normalizeStdioOption(options, isSync);
4781
+ const stdio = normalizeStdioOption(options, verboseInfo, isSync);
4710
4782
  const initialFileDescriptors = stdio.map((stdioOption, fdNumber) => getFileDescriptor({
4711
4783
  stdioOption,
4712
4784
  fdNumber,
@@ -4866,10 +4938,10 @@ For example, you can use the \`pathToFileURL()\` method of the \`url\` core modu
4866
4938
  }
4867
4939
  });
4868
4940
 
4869
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/handle-sync.js
4941
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/handle-sync.js
4870
4942
  var import_node_fs4, handleStdioSync, forbiddenIfSync, forbiddenNativeIfSync, throwInvalidSyncValue, addProperties, addPropertiesSync;
4871
4943
  var init_handle_sync = __esm({
4872
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/handle-sync.js"() {
4944
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/handle-sync.js"() {
4873
4945
  "use strict";
4874
4946
  import_node_fs4 = require("fs");
4875
4947
  init_uint_array();
@@ -4922,10 +4994,10 @@ var init_handle_sync = __esm({
4922
4994
  }
4923
4995
  });
4924
4996
 
4925
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/strip-newline.js
4997
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/strip-newline.js
4926
4998
  var stripNewline, getStripFinalNewline;
4927
4999
  var init_strip_newline = __esm({
4928
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/strip-newline.js"() {
5000
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/strip-newline.js"() {
4929
5001
  "use strict";
4930
5002
  init_strip_final_newline();
4931
5003
  stripNewline = (value, { stripFinalNewline: stripFinalNewline2 }, fdNumber) => getStripFinalNewline(stripFinalNewline2, fdNumber) && value !== void 0 && !Array.isArray(value) ? stripFinalNewline(value) : value;
@@ -4933,10 +5005,10 @@ var init_strip_newline = __esm({
4933
5005
  }
4934
5006
  });
4935
5007
 
4936
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/split.js
5008
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/split.js
4937
5009
  var getSplitLinesGenerator, splitLinesSync, splitLinesItemSync, initializeSplitLines, splitGenerator, getNewlineLength, linesFinal, getAppendNewlineGenerator, appendNewlineGenerator, concatString, linesStringInfo, concatUint8Array, linesUint8ArrayInfo;
4938
5010
  var init_split = __esm({
4939
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/split.js"() {
5011
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/split.js"() {
4940
5012
  "use strict";
4941
5013
  getSplitLinesGenerator = (binary, preserveNewlines, skipped, state) => binary || skipped ? void 0 : initializeSplitLines(preserveNewlines, state);
4942
5014
  splitLinesSync = (chunk, preserveNewlines, objectMode) => objectMode ? chunk.flatMap((item) => splitLinesItemSync(item, preserveNewlines)) : splitLinesItemSync(chunk, preserveNewlines);
@@ -5019,10 +5091,10 @@ var init_split = __esm({
5019
5091
  }
5020
5092
  });
5021
5093
 
5022
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/validate.js
5094
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/validate.js
5023
5095
  var import_node_buffer, getValidateTransformInput, validateStringTransformInput, getValidateTransformReturn, validateObjectTransformReturn, validateStringTransformReturn, validateEmptyReturn;
5024
5096
  var init_validate = __esm({
5025
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/validate.js"() {
5097
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/validate.js"() {
5026
5098
  "use strict";
5027
5099
  import_node_buffer = require("buffer");
5028
5100
  init_uint_array();
@@ -5055,10 +5127,10 @@ Instead, \`yield\` should either be called with a value, or not be called at all
5055
5127
  }
5056
5128
  });
5057
5129
 
5058
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/encoding-transform.js
5130
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/encoding-transform.js
5059
5131
  var import_node_buffer2, import_node_string_decoder2, getEncodingTransformGenerator, encodingUint8ArrayGenerator, encodingStringGenerator, encodingStringFinal;
5060
5132
  var init_encoding_transform = __esm({
5061
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/encoding-transform.js"() {
5133
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/encoding-transform.js"() {
5062
5134
  "use strict";
5063
5135
  import_node_buffer2 = require("buffer");
5064
5136
  import_node_string_decoder2 = require("string_decoder");
@@ -5097,10 +5169,10 @@ var init_encoding_transform = __esm({
5097
5169
  }
5098
5170
  });
5099
5171
 
5100
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/run-async.js
5172
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/run-async.js
5101
5173
  var import_node_util6, pushChunks, transformChunk, finalChunks, generatorFinalChunks, destroyTransform, identityGenerator;
5102
5174
  var init_run_async = __esm({
5103
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/run-async.js"() {
5175
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/run-async.js"() {
5104
5176
  "use strict";
5105
5177
  import_node_util6 = require("util");
5106
5178
  pushChunks = (0, import_node_util6.callbackify)(async (getChunks, state, getChunksArguments, transformStream) => {
@@ -5151,10 +5223,10 @@ var init_run_async = __esm({
5151
5223
  }
5152
5224
  });
5153
5225
 
5154
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/run-sync.js
5226
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/run-sync.js
5155
5227
  var pushChunksSync, runTransformSync, transformChunkSync, finalChunksSync, generatorFinalChunksSync, identityGenerator2;
5156
5228
  var init_run_sync = __esm({
5157
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/run-sync.js"() {
5229
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/run-sync.js"() {
5158
5230
  "use strict";
5159
5231
  pushChunksSync = (getChunksSync, getChunksArguments, transformStream, done) => {
5160
5232
  try {
@@ -5199,10 +5271,10 @@ var init_run_sync = __esm({
5199
5271
  }
5200
5272
  });
5201
5273
 
5202
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/generator.js
5274
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/generator.js
5203
5275
  var import_node_stream, generatorToStream, runGeneratorsSync, addInternalGenerators;
5204
5276
  var init_generator = __esm({
5205
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/transform/generator.js"() {
5277
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/transform/generator.js"() {
5206
5278
  "use strict";
5207
5279
  import_node_stream = require("stream");
5208
5280
  init_type();
@@ -5266,10 +5338,10 @@ var init_generator = __esm({
5266
5338
  }
5267
5339
  });
5268
5340
 
5269
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/input-sync.js
5341
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/input-sync.js
5270
5342
  var addInputOptionsSync, getInputFdNumbers, addInputOptionSync, applySingleInputGeneratorsSync, validateSerializable;
5271
5343
  var init_input_sync = __esm({
5272
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/input-sync.js"() {
5344
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/input-sync.js"() {
5273
5345
  "use strict";
5274
5346
  init_generator();
5275
5347
  init_uint_array();
@@ -5308,40 +5380,47 @@ var init_input_sync = __esm({
5308
5380
  }
5309
5381
  });
5310
5382
 
5311
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/output.js
5383
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/output.js
5312
5384
  var shouldLogOutput, fdUsesVerbose, PIPED_STDIO_VALUES, logLines, logLinesSync, isPipingStream, logLine;
5313
5385
  var init_output = __esm({
5314
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/output.js"() {
5386
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/output.js"() {
5315
5387
  "use strict";
5316
5388
  init_encoding_option();
5317
5389
  init_type();
5318
5390
  init_log();
5319
- shouldLogOutput = ({ stdioItems, encoding, verboseInfo: { verbose }, fdNumber }) => fdNumber !== "all" && verbose[fdNumber] === "full" && !BINARY_ENCODINGS.has(encoding) && fdUsesVerbose(fdNumber) && (stdioItems.some(({ type, value }) => type === "native" && PIPED_STDIO_VALUES.has(value)) || stdioItems.every(({ type }) => TRANSFORM_TYPES.has(type)));
5391
+ init_values();
5392
+ shouldLogOutput = ({ stdioItems, encoding, verboseInfo, fdNumber }) => fdNumber !== "all" && isFullVerbose(verboseInfo, fdNumber) && !BINARY_ENCODINGS.has(encoding) && fdUsesVerbose(fdNumber) && (stdioItems.some(({ type, value }) => type === "native" && PIPED_STDIO_VALUES.has(value)) || stdioItems.every(({ type }) => TRANSFORM_TYPES.has(type)));
5320
5393
  fdUsesVerbose = (fdNumber) => fdNumber === 1 || fdNumber === 2;
5321
5394
  PIPED_STDIO_VALUES = /* @__PURE__ */ new Set(["pipe", "overlapped"]);
5322
- logLines = async (linesIterable, stream, verboseInfo) => {
5395
+ logLines = async (linesIterable, stream, fdNumber, verboseInfo) => {
5323
5396
  for await (const line of linesIterable) {
5324
5397
  if (!isPipingStream(stream)) {
5325
- logLine(line, verboseInfo);
5398
+ logLine(line, fdNumber, verboseInfo);
5326
5399
  }
5327
5400
  }
5328
5401
  };
5329
- logLinesSync = (linesArray, verboseInfo) => {
5402
+ logLinesSync = (linesArray, fdNumber, verboseInfo) => {
5330
5403
  for (const line of linesArray) {
5331
- logLine(line, verboseInfo);
5404
+ logLine(line, fdNumber, verboseInfo);
5332
5405
  }
5333
5406
  };
5334
5407
  isPipingStream = (stream) => stream._readableState.pipes.length > 0;
5335
- logLine = (line, { verboseId }) => {
5336
- verboseLog(serializeLogMessage(line), verboseId, "output");
5408
+ logLine = (line, fdNumber, verboseInfo) => {
5409
+ const verboseMessage = serializeVerboseMessage(line);
5410
+ verboseLog({
5411
+ type: "output",
5412
+ verboseMessage,
5413
+ fdNumber,
5414
+ verboseInfo
5415
+ });
5337
5416
  };
5338
5417
  }
5339
5418
  });
5340
5419
 
5341
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/output-sync.js
5342
- var import_node_fs5, transformOutputSync, transformOutputResultSync, runOutputGeneratorsSync, serializeChunks, writeToFiles;
5420
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/output-sync.js
5421
+ var import_node_fs5, transformOutputSync, transformOutputResultSync, runOutputGeneratorsSync, serializeChunks, logOutputSync, writeToFiles;
5343
5422
  var init_output_sync = __esm({
5344
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/output-sync.js"() {
5423
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/output-sync.js"() {
5345
5424
  "use strict";
5346
5425
  import_node_fs5 = require("fs");
5347
5426
  init_output();
@@ -5383,15 +5462,15 @@ var init_output_sync = __esm({
5383
5462
  stripFinalNewline: stripFinalNewline2,
5384
5463
  fdNumber
5385
5464
  });
5386
- if (shouldLogOutput({
5387
- stdioItems,
5388
- encoding,
5465
+ logOutputSync({
5466
+ serializedResult,
5467
+ fdNumber,
5468
+ state,
5389
5469
  verboseInfo,
5390
- fdNumber
5391
- })) {
5392
- const linesArray = splitLinesSync(serializedResult, false, objectMode);
5393
- logLinesSync(linesArray, verboseInfo);
5394
- }
5470
+ encoding,
5471
+ stdioItems,
5472
+ objectMode
5473
+ });
5395
5474
  const returnedResult = buffer[fdNumber] ? finalResult : void 0;
5396
5475
  try {
5397
5476
  if (state.error === void 0) {
@@ -5424,6 +5503,22 @@ var init_output_sync = __esm({
5424
5503
  }
5425
5504
  return { serializedResult };
5426
5505
  };
5506
+ logOutputSync = ({ serializedResult, fdNumber, state, verboseInfo, encoding, stdioItems, objectMode }) => {
5507
+ if (!shouldLogOutput({
5508
+ stdioItems,
5509
+ encoding,
5510
+ verboseInfo,
5511
+ fdNumber
5512
+ })) {
5513
+ return;
5514
+ }
5515
+ const linesArray = splitLinesSync(serializedResult, false, objectMode);
5516
+ try {
5517
+ logLinesSync(linesArray, fdNumber, verboseInfo);
5518
+ } catch (error) {
5519
+ state.error ??= error;
5520
+ }
5521
+ };
5427
5522
  writeToFiles = (serializedResult, stdioItems, outputFiles) => {
5428
5523
  for (const { path: path12 } of stdioItems.filter(({ type }) => FILE_TYPES.has(type))) {
5429
5524
  const pathString = typeof path12 === "string" ? path12 : path12.toString();
@@ -5438,10 +5533,10 @@ var init_output_sync = __esm({
5438
5533
  }
5439
5534
  });
5440
5535
 
5441
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/all-sync.js
5536
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/all-sync.js
5442
5537
  var getAllSync;
5443
5538
  var init_all_sync = __esm({
5444
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/all-sync.js"() {
5539
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/all-sync.js"() {
5445
5540
  "use strict";
5446
5541
  init_uint_array();
5447
5542
  init_strip_newline();
@@ -5469,10 +5564,10 @@ var init_all_sync = __esm({
5469
5564
  }
5470
5565
  });
5471
5566
 
5472
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/exit-async.js
5567
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/exit-async.js
5473
5568
  var import_node_events7, waitForExit, waitForExitOrError, waitForSubprocessExit, waitForSuccessfulExit, isSubprocessErrorExit, isFailedExit;
5474
5569
  var init_exit_async = __esm({
5475
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/exit-async.js"() {
5570
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/exit-async.js"() {
5476
5571
  "use strict";
5477
5572
  import_node_events7 = require("events");
5478
5573
  init_final_error();
@@ -5510,10 +5605,10 @@ var init_exit_async = __esm({
5510
5605
  }
5511
5606
  });
5512
5607
 
5513
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/exit-sync.js
5608
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/exit-sync.js
5514
5609
  var getExitResultSync, getResultError;
5515
5610
  var init_exit_sync = __esm({
5516
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/exit-sync.js"() {
5611
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/exit-sync.js"() {
5517
5612
  "use strict";
5518
5613
  init_final_error();
5519
5614
  init_max_buffer();
@@ -5539,10 +5634,10 @@ var init_exit_sync = __esm({
5539
5634
  }
5540
5635
  });
5541
5636
 
5542
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/main-sync.js
5637
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/main-sync.js
5543
5638
  var import_node_child_process2, execaCoreSync, handleSyncArguments, normalizeSyncOptions, validateSyncOptions, throwInvalidSyncOption, spawnSubprocessSync, runSubprocessSync, normalizeSpawnSyncOptions, getSyncResult;
5544
5639
  var init_main_sync = __esm({
5545
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/main-sync.js"() {
5640
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/main-sync.js"() {
5546
5641
  "use strict";
5547
5642
  import_node_child_process2 = require("child_process");
5548
5643
  init_command();
@@ -5554,7 +5649,6 @@ var init_main_sync = __esm({
5554
5649
  init_input_sync();
5555
5650
  init_output_sync();
5556
5651
  init_max_buffer();
5557
- init_complete();
5558
5652
  init_all_sync();
5559
5653
  init_exit_sync();
5560
5654
  execaCoreSync = (rawFile, rawArguments, rawOptions) => {
@@ -5573,25 +5667,20 @@ var init_main_sync = __esm({
5573
5667
  };
5574
5668
  handleSyncArguments = (rawFile, rawArguments, rawOptions) => {
5575
5669
  const { command, escapedCommand, startTime, verboseInfo } = handleCommand(rawFile, rawArguments, rawOptions);
5576
- try {
5577
- const syncOptions = normalizeSyncOptions(rawOptions);
5578
- const { file, commandArguments, options } = normalizeOptions(rawFile, rawArguments, syncOptions);
5579
- validateSyncOptions(options);
5580
- const fileDescriptors = handleStdioSync(options, verboseInfo);
5581
- return {
5582
- file,
5583
- commandArguments,
5584
- command,
5585
- escapedCommand,
5586
- startTime,
5587
- verboseInfo,
5588
- options,
5589
- fileDescriptors
5590
- };
5591
- } catch (error) {
5592
- logEarlyResult(error, startTime, verboseInfo);
5593
- throw error;
5594
- }
5670
+ const syncOptions = normalizeSyncOptions(rawOptions);
5671
+ const { file, commandArguments, options } = normalizeOptions(rawFile, rawArguments, syncOptions);
5672
+ validateSyncOptions(options);
5673
+ const fileDescriptors = handleStdioSync(options, verboseInfo);
5674
+ return {
5675
+ file,
5676
+ commandArguments,
5677
+ command,
5678
+ escapedCommand,
5679
+ startTime,
5680
+ verboseInfo,
5681
+ options,
5682
+ fileDescriptors
5683
+ };
5595
5684
  };
5596
5685
  normalizeSyncOptions = (options) => options.node && !options.ipc ? { ...options, ipc: false } : options;
5597
5686
  validateSyncOptions = ({ ipc, ipcInput, detached, cancelSignal }) => {
@@ -5695,10 +5784,10 @@ var init_main_sync = __esm({
5695
5784
  }
5696
5785
  });
5697
5786
 
5698
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/get-one.js
5787
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/get-one.js
5699
5788
  var import_node_events8, getOneMessage, getOneMessageAsync, getMessage, throwOnDisconnect2, throwOnStrictError;
5700
5789
  var init_get_one = __esm({
5701
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/get-one.js"() {
5790
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/get-one.js"() {
5702
5791
  "use strict";
5703
5792
  import_node_events8 = require("events");
5704
5793
  init_validation();
@@ -5759,10 +5848,10 @@ var init_get_one = __esm({
5759
5848
  }
5760
5849
  });
5761
5850
 
5762
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/get-each.js
5851
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/get-each.js
5763
5852
  var import_node_events9, getEachMessage, loopOnMessages, stopOnDisconnect, abortOnStrictError, iterateOnMessages, throwIfStrictError;
5764
5853
  var init_get_each = __esm({
5765
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/get-each.js"() {
5854
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/get-each.js"() {
5766
5855
  "use strict";
5767
5856
  import_node_events9 = require("events");
5768
5857
  init_validation();
@@ -5847,10 +5936,10 @@ var init_get_each = __esm({
5847
5936
  }
5848
5937
  });
5849
5938
 
5850
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/methods.js
5939
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/methods.js
5851
5940
  var import_node_process10, addIpcMethods, getIpcExport, getIpcMethods;
5852
5941
  var init_methods = __esm({
5853
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/methods.js"() {
5942
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/methods.js"() {
5854
5943
  "use strict";
5855
5944
  import_node_process10 = __toESM(require("process"), 1);
5856
5945
  init_send();
@@ -5897,10 +5986,10 @@ var init_methods = __esm({
5897
5986
  }
5898
5987
  });
5899
5988
 
5900
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/early-error.js
5989
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/early-error.js
5901
5990
  var import_node_child_process3, import_node_stream2, handleEarlyError, createDummyStreams, createDummyStream, readable, writable, duplex, handleDummyPromise;
5902
5991
  var init_early_error = __esm({
5903
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/return/early-error.js"() {
5992
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/return/early-error.js"() {
5904
5993
  "use strict";
5905
5994
  import_node_child_process3 = require("child_process");
5906
5995
  import_node_stream2 = require("stream");
@@ -5955,10 +6044,10 @@ var init_early_error = __esm({
5955
6044
  }
5956
6045
  });
5957
6046
 
5958
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/handle-async.js
6047
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/handle-async.js
5959
6048
  var import_node_fs6, import_node_buffer3, import_node_stream3, handleStdioAsync, forbiddenIfAsync, addProperties2, addPropertiesAsync;
5960
6049
  var init_handle_async = __esm({
5961
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/stdio/handle-async.js"() {
6050
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/stdio/handle-async.js"() {
5962
6051
  "use strict";
5963
6052
  import_node_fs6 = require("fs");
5964
6053
  import_node_buffer3 = require("buffer");
@@ -6232,10 +6321,10 @@ var init_merge_streams = __esm({
6232
6321
  }
6233
6322
  });
6234
6323
 
6235
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/pipeline.js
6324
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/pipeline.js
6236
6325
  var import_promises7, pipeStreams, onSourceFinish, endDestinationStream, onDestinationFinish, abortSourceStream;
6237
6326
  var init_pipeline = __esm({
6238
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/pipeline.js"() {
6327
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/pipeline.js"() {
6239
6328
  "use strict";
6240
6329
  import_promises7 = require("stream/promises");
6241
6330
  init_standard_stream();
@@ -6277,10 +6366,10 @@ var init_pipeline = __esm({
6277
6366
  }
6278
6367
  });
6279
6368
 
6280
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/output-async.js
6369
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/output-async.js
6281
6370
  var pipeOutputAsync, pipeTransform, SUBPROCESS_STREAM_PROPERTIES, pipeStdioItem, setStandardStreamMaxListeners, MAX_LISTENERS_INCREMENT;
6282
6371
  var init_output_async = __esm({
6283
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/output-async.js"() {
6372
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/output-async.js"() {
6284
6373
  "use strict";
6285
6374
  init_merge_streams();
6286
6375
  init_standard_stream();
@@ -6610,10 +6699,10 @@ var init_mjs = __esm({
6610
6699
  }
6611
6700
  });
6612
6701
 
6613
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/cleanup.js
6702
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/cleanup.js
6614
6703
  var import_node_events11, cleanupOnExit;
6615
6704
  var init_cleanup = __esm({
6616
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/terminate/cleanup.js"() {
6705
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/terminate/cleanup.js"() {
6617
6706
  "use strict";
6618
6707
  import_node_events11 = require("events");
6619
6708
  init_mjs();
@@ -6631,10 +6720,10 @@ var init_cleanup = __esm({
6631
6720
  }
6632
6721
  });
6633
6722
 
6634
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/pipe-arguments.js
6723
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/pipe-arguments.js
6635
6724
  var normalizePipeArguments, getDestinationStream, getDestination, mapDestinationArguments, getSourceStream;
6636
6725
  var init_pipe_arguments = __esm({
6637
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/pipe-arguments.js"() {
6726
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/pipe-arguments.js"() {
6638
6727
  "use strict";
6639
6728
  init_parameters();
6640
6729
  init_duration();
@@ -6713,10 +6802,10 @@ var init_pipe_arguments = __esm({
6713
6802
  }
6714
6803
  });
6715
6804
 
6716
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/throw.js
6805
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/throw.js
6717
6806
  var handlePipeArgumentsError, getPipeArgumentsError, createNonCommandError, PIPE_COMMAND_MESSAGE;
6718
6807
  var init_throw = __esm({
6719
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/throw.js"() {
6808
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/throw.js"() {
6720
6809
  "use strict";
6721
6810
  init_result();
6722
6811
  init_pipeline();
@@ -6770,10 +6859,10 @@ var init_throw = __esm({
6770
6859
  }
6771
6860
  });
6772
6861
 
6773
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/sequence.js
6862
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/sequence.js
6774
6863
  var waitForBothSubprocesses;
6775
6864
  var init_sequence = __esm({
6776
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/sequence.js"() {
6865
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/sequence.js"() {
6777
6866
  "use strict";
6778
6867
  waitForBothSubprocesses = async (subprocessPromises) => {
6779
6868
  const [
@@ -6794,10 +6883,10 @@ var init_sequence = __esm({
6794
6883
  }
6795
6884
  });
6796
6885
 
6797
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/streaming.js
6886
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/streaming.js
6798
6887
  var import_promises8, pipeSubprocessStream, pipeFirstSubprocessStream, pipeMoreSubprocessStream, cleanupMergedStreamsMap, MERGED_STREAMS, SOURCE_LISTENERS_PER_PIPE, DESTINATION_LISTENERS_PER_PIPE;
6799
6888
  var init_streaming = __esm({
6800
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/streaming.js"() {
6889
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/streaming.js"() {
6801
6890
  "use strict";
6802
6891
  import_promises8 = require("stream/promises");
6803
6892
  init_merge_streams();
@@ -6834,10 +6923,10 @@ var init_streaming = __esm({
6834
6923
  }
6835
6924
  });
6836
6925
 
6837
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/abort.js
6926
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/abort.js
6838
6927
  var import_node_util7, unpipeOnAbort, unpipeOnSignalAbort;
6839
6928
  var init_abort = __esm({
6840
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/abort.js"() {
6929
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/abort.js"() {
6841
6930
  "use strict";
6842
6931
  import_node_util7 = require("util");
6843
6932
  init_throw();
@@ -6856,10 +6945,10 @@ var init_abort = __esm({
6856
6945
  }
6857
6946
  });
6858
6947
 
6859
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/setup.js
6948
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/setup.js
6860
6949
  var pipeToSubprocess, handlePipePromise, getSubprocessPromises;
6861
6950
  var init_setup = __esm({
6862
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/pipe/setup.js"() {
6951
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/pipe/setup.js"() {
6863
6952
  "use strict";
6864
6953
  init_is_plain_obj();
6865
6954
  init_pipe_arguments();
@@ -6927,10 +7016,10 @@ var init_setup = __esm({
6927
7016
  }
6928
7017
  });
6929
7018
 
6930
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/iterate.js
7019
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/iterate.js
6931
7020
  var import_node_events12, import_node_stream5, iterateOnSubprocessStream, stopReadingOnExit, iterateForResult, stopReadingOnStreamEnd, iterateOnStream, DEFAULT_OBJECT_HIGH_WATER_MARK, HIGH_WATER_MARK, iterateOnData, getGenerators;
6932
7021
  var init_iterate = __esm({
6933
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/iterate.js"() {
7022
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/iterate.js"() {
6934
7023
  "use strict";
6935
7024
  import_node_events12 = require("events");
6936
7025
  import_node_stream5 = require("stream");
@@ -7029,10 +7118,10 @@ var init_iterate = __esm({
7029
7118
  }
7030
7119
  });
7031
7120
 
7032
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/contents.js
7033
- var import_promises9, getStreamOutput, resumeStream, getStreamContents2, getBufferedData, handleBufferedData;
7121
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/contents.js
7122
+ var import_promises9, getStreamOutput, logOutputAsync, resumeStream, getStreamContents2, getBufferedData, handleBufferedData;
7034
7123
  var init_contents2 = __esm({
7035
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/io/contents.js"() {
7124
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/io/contents.js"() {
7036
7125
  "use strict";
7037
7126
  import_promises9 = require("timers/promises");
7038
7127
  init_source();
@@ -7041,25 +7130,18 @@ var init_contents2 = __esm({
7041
7130
  init_iterate();
7042
7131
  init_max_buffer();
7043
7132
  init_strip_newline();
7044
- getStreamOutput = async ({ stream, onStreamEnd, fdNumber, encoding, buffer, maxBuffer, lines, allMixed, stripFinalNewline: stripFinalNewline2, verboseInfo, streamInfo: { fileDescriptors } }) => {
7045
- if (shouldLogOutput({
7046
- stdioItems: fileDescriptors[fdNumber]?.stdioItems,
7133
+ getStreamOutput = async ({ stream, onStreamEnd, fdNumber, encoding, buffer, maxBuffer, lines, allMixed, stripFinalNewline: stripFinalNewline2, verboseInfo, streamInfo }) => {
7134
+ const logPromise = logOutputAsync({
7135
+ stream,
7136
+ onStreamEnd,
7137
+ fdNumber,
7047
7138
  encoding,
7139
+ allMixed,
7048
7140
  verboseInfo,
7049
- fdNumber
7050
- })) {
7051
- const linesIterable = iterateForResult({
7052
- stream,
7053
- onStreamEnd,
7054
- lines: true,
7055
- encoding,
7056
- stripFinalNewline: true,
7057
- allMixed
7058
- });
7059
- logLines(linesIterable, stream, verboseInfo);
7060
- }
7141
+ streamInfo
7142
+ });
7061
7143
  if (!buffer) {
7062
- await resumeStream(stream);
7144
+ await Promise.all([resumeStream(stream), logPromise]);
7063
7145
  return;
7064
7146
  }
7065
7147
  const stripFinalNewlineValue = getStripFinalNewline(stripFinalNewline2, fdNumber);
@@ -7071,14 +7153,37 @@ var init_contents2 = __esm({
7071
7153
  stripFinalNewline: stripFinalNewlineValue,
7072
7154
  allMixed
7073
7155
  });
7074
- return getStreamContents2({
7156
+ const [output] = await Promise.all([
7157
+ getStreamContents2({
7158
+ stream,
7159
+ iterable,
7160
+ fdNumber,
7161
+ encoding,
7162
+ maxBuffer,
7163
+ lines
7164
+ }),
7165
+ logPromise
7166
+ ]);
7167
+ return output;
7168
+ };
7169
+ logOutputAsync = async ({ stream, onStreamEnd, fdNumber, encoding, allMixed, verboseInfo, streamInfo: { fileDescriptors } }) => {
7170
+ if (!shouldLogOutput({
7171
+ stdioItems: fileDescriptors[fdNumber]?.stdioItems,
7172
+ encoding,
7173
+ verboseInfo,
7174
+ fdNumber
7175
+ })) {
7176
+ return;
7177
+ }
7178
+ const linesIterable = iterateForResult({
7075
7179
  stream,
7076
- iterable,
7077
- fdNumber,
7180
+ onStreamEnd,
7181
+ lines: true,
7078
7182
  encoding,
7079
- maxBuffer,
7080
- lines
7183
+ stripFinalNewline: true,
7184
+ allMixed
7081
7185
  });
7186
+ await logLines(linesIterable, stream, fdNumber, verboseInfo);
7082
7187
  };
7083
7188
  resumeStream = async (stream) => {
7084
7189
  await (0, import_promises9.setImmediate)();
@@ -7117,10 +7222,10 @@ var init_contents2 = __esm({
7117
7222
  }
7118
7223
  });
7119
7224
 
7120
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/wait-stream.js
7225
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/wait-stream.js
7121
7226
  var import_promises10, waitForStream, handleStdinDestroy, spyOnStdinDestroy, setStdinCleanedUp, handleStreamError, shouldIgnoreStreamError, isInputFileDescriptor, isStreamAbort, isStreamEpipe;
7122
7227
  var init_wait_stream = __esm({
7123
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/wait-stream.js"() {
7228
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/wait-stream.js"() {
7124
7229
  "use strict";
7125
7230
  import_promises10 = require("stream/promises");
7126
7231
  waitForStream = async (stream, fdNumber, streamInfo, { isSameDirection, stopOnExit = false } = {}) => {
@@ -7176,10 +7281,10 @@ var init_wait_stream = __esm({
7176
7281
  }
7177
7282
  });
7178
7283
 
7179
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/stdio.js
7284
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/stdio.js
7180
7285
  var waitForStdioStreams, waitForSubprocessStream;
7181
7286
  var init_stdio = __esm({
7182
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/stdio.js"() {
7287
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/stdio.js"() {
7183
7288
  "use strict";
7184
7289
  init_contents2();
7185
7290
  init_wait_stream();
@@ -7225,10 +7330,10 @@ var init_stdio = __esm({
7225
7330
  }
7226
7331
  });
7227
7332
 
7228
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/all-async.js
7333
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/all-async.js
7229
7334
  var makeAllStream, waitForAllStream, getAllStream, getAllMixed;
7230
7335
  var init_all_async = __esm({
7231
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/all-async.js"() {
7336
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/all-async.js"() {
7232
7337
  "use strict";
7233
7338
  init_merge_streams();
7234
7339
  init_stdio();
@@ -7261,26 +7366,34 @@ var init_all_async = __esm({
7261
7366
  }
7262
7367
  });
7263
7368
 
7264
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/ipc.js
7369
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/ipc.js
7265
7370
  var shouldLogIpc, logIpcOutput;
7266
7371
  var init_ipc = __esm({
7267
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/verbose/ipc.js"() {
7372
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/verbose/ipc.js"() {
7268
7373
  "use strict";
7269
7374
  init_log();
7270
- shouldLogIpc = ({ verbose }) => verbose.at(-1) === "full";
7271
- logIpcOutput = (message, { verboseId }) => {
7272
- verboseLog(serializeLogMessage(message), verboseId, "ipc");
7375
+ init_values();
7376
+ shouldLogIpc = (verboseInfo) => isFullVerbose(verboseInfo, "ipc");
7377
+ logIpcOutput = (message, verboseInfo) => {
7378
+ const verboseMessage = serializeVerboseMessage(message);
7379
+ verboseLog({
7380
+ type: "ipc",
7381
+ verboseMessage,
7382
+ fdNumber: "ipc",
7383
+ verboseInfo
7384
+ });
7273
7385
  };
7274
7386
  }
7275
7387
  });
7276
7388
 
7277
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/buffer-messages.js
7389
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/buffer-messages.js
7278
7390
  var waitForIpcOutput, getBufferedIpcOutput;
7279
7391
  var init_buffer_messages = __esm({
7280
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/ipc/buffer-messages.js"() {
7392
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/ipc/buffer-messages.js"() {
7281
7393
  "use strict";
7282
7394
  init_max_buffer();
7283
7395
  init_ipc();
7396
+ init_specific();
7284
7397
  init_get_each();
7285
7398
  waitForIpcOutput = async ({
7286
7399
  subprocess,
@@ -7294,8 +7407,8 @@ var init_buffer_messages = __esm({
7294
7407
  return ipcOutput;
7295
7408
  }
7296
7409
  const isVerbose2 = shouldLogIpc(verboseInfo);
7297
- const buffer = bufferArray.at(-1);
7298
- const maxBuffer = maxBufferArray.at(-1);
7410
+ const buffer = getFdSpecificValue(bufferArray, "ipc");
7411
+ const maxBuffer = getFdSpecificValue(maxBufferArray, "ipc");
7299
7412
  for await (const message of loopOnMessages({
7300
7413
  anyProcess: subprocess,
7301
7414
  channel: subprocess.channel,
@@ -7321,10 +7434,10 @@ var init_buffer_messages = __esm({
7321
7434
  }
7322
7435
  });
7323
7436
 
7324
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/wait-subprocess.js
7437
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/wait-subprocess.js
7325
7438
  var import_node_events13, waitForSubprocessResult, waitForOriginalStreams, waitForCustomStreamsEnd, throwOnSubprocessError;
7326
7439
  var init_wait_subprocess = __esm({
7327
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/resolve/wait-subprocess.js"() {
7440
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/resolve/wait-subprocess.js"() {
7328
7441
  "use strict";
7329
7442
  import_node_events13 = require("events");
7330
7443
  init_is_stream();
@@ -7457,10 +7570,10 @@ var init_wait_subprocess = __esm({
7457
7570
  }
7458
7571
  });
7459
7572
 
7460
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/concurrent.js
7573
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/concurrent.js
7461
7574
  var initializeConcurrentStreams, addConcurrentStream, waitForConcurrentStreams;
7462
7575
  var init_concurrent = __esm({
7463
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/concurrent.js"() {
7576
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/concurrent.js"() {
7464
7577
  "use strict";
7465
7578
  init_deferred();
7466
7579
  initializeConcurrentStreams = () => ({
@@ -7476,11 +7589,11 @@ var init_concurrent = __esm({
7476
7589
  const promises = weakMap.get(stream);
7477
7590
  const promise = createDeferred();
7478
7591
  promises.push(promise);
7479
- const resolve16 = promise.resolve.bind(promise);
7480
- return { resolve: resolve16, promises };
7592
+ const resolve17 = promise.resolve.bind(promise);
7593
+ return { resolve: resolve17, promises };
7481
7594
  };
7482
- waitForConcurrentStreams = async ({ resolve: resolve16, promises }, subprocess) => {
7483
- resolve16();
7595
+ waitForConcurrentStreams = async ({ resolve: resolve17, promises }, subprocess) => {
7596
+ resolve17();
7484
7597
  const [isSubprocessExit] = await Promise.race([
7485
7598
  Promise.allSettled([true, subprocess]),
7486
7599
  Promise.all([false, ...promises])
@@ -7490,10 +7603,10 @@ var init_concurrent = __esm({
7490
7603
  }
7491
7604
  });
7492
7605
 
7493
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/shared.js
7606
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/shared.js
7494
7607
  var import_promises11, safeWaitForSubprocessStdin, safeWaitForSubprocessStdout, waitForSubprocessStdin, waitForSubprocessStdout, waitForSubprocess, destroyOtherStream;
7495
7608
  var init_shared = __esm({
7496
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/shared.js"() {
7609
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/shared.js"() {
7497
7610
  "use strict";
7498
7611
  import_promises11 = require("stream/promises");
7499
7612
  init_wait_stream();
@@ -7537,10 +7650,10 @@ var init_shared = __esm({
7537
7650
  }
7538
7651
  });
7539
7652
 
7540
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/readable.js
7653
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/readable.js
7541
7654
  var import_node_stream6, import_node_util8, createReadable, getSubprocessStdout, getReadableOptions, getReadableMethods, onRead, onStdoutFinished, onReadableDestroy, destroyOtherReadable;
7542
7655
  var init_readable = __esm({
7543
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/readable.js"() {
7656
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/readable.js"() {
7544
7657
  "use strict";
7545
7658
  import_node_stream6 = require("stream");
7546
7659
  import_node_util8 = require("util");
@@ -7636,10 +7749,10 @@ var init_readable = __esm({
7636
7749
  }
7637
7750
  });
7638
7751
 
7639
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/writable.js
7752
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/writable.js
7640
7753
  var import_node_stream7, import_node_util9, createWritable, getSubprocessStdin, getWritableMethods, onWrite, onWritableFinal, onStdinFinished, onWritableDestroy, destroyOtherWritable;
7641
7754
  var init_writable = __esm({
7642
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/writable.js"() {
7755
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/writable.js"() {
7643
7756
  "use strict";
7644
7757
  import_node_stream7 = require("stream");
7645
7758
  import_node_util9 = require("util");
@@ -7711,10 +7824,10 @@ var init_writable = __esm({
7711
7824
  }
7712
7825
  });
7713
7826
 
7714
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/duplex.js
7827
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/duplex.js
7715
7828
  var import_node_stream8, import_node_util10, createDuplex, onDuplexDestroy;
7716
7829
  var init_duplex = __esm({
7717
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/duplex.js"() {
7830
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/duplex.js"() {
7718
7831
  "use strict";
7719
7832
  import_node_stream8 = require("stream");
7720
7833
  import_node_util10 = require("util");
@@ -7774,10 +7887,10 @@ var init_duplex = __esm({
7774
7887
  }
7775
7888
  });
7776
7889
 
7777
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/iterable.js
7890
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/iterable.js
7778
7891
  var createIterable, iterateOnStdoutData;
7779
7892
  var init_iterable = __esm({
7780
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/iterable.js"() {
7893
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/iterable.js"() {
7781
7894
  "use strict";
7782
7895
  init_encoding_option();
7783
7896
  init_fd_options();
@@ -7812,10 +7925,10 @@ var init_iterable = __esm({
7812
7925
  }
7813
7926
  });
7814
7927
 
7815
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/add.js
7928
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/add.js
7816
7929
  var addConvertedStreams;
7817
7930
  var init_add = __esm({
7818
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/convert/add.js"() {
7931
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/convert/add.js"() {
7819
7932
  "use strict";
7820
7933
  init_concurrent();
7821
7934
  init_readable();
@@ -7833,10 +7946,10 @@ var init_add = __esm({
7833
7946
  }
7834
7947
  });
7835
7948
 
7836
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/promise.js
7949
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/promise.js
7837
7950
  var mergePromise, nativePromisePrototype, descriptors;
7838
7951
  var init_promise = __esm({
7839
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/promise.js"() {
7952
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/promise.js"() {
7840
7953
  "use strict";
7841
7954
  mergePromise = (subprocess, promise) => {
7842
7955
  for (const [property, descriptor] of descriptors) {
@@ -7853,10 +7966,10 @@ var init_promise = __esm({
7853
7966
  }
7854
7967
  });
7855
7968
 
7856
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/main-async.js
7969
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/main-async.js
7857
7970
  var import_node_events14, import_node_child_process4, execaCoreAsync, handleAsyncArguments, handleAsyncOptions, spawnSubprocessAsync, handlePromise, getAsyncResult;
7858
7971
  var init_main_async = __esm({
7859
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/main-async.js"() {
7972
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/main-async.js"() {
7860
7973
  "use strict";
7861
7974
  import_node_events14 = require("events");
7862
7975
  import_node_child_process4 = require("child_process");
@@ -7874,7 +7987,6 @@ var init_main_async = __esm({
7874
7987
  init_kill();
7875
7988
  init_cleanup();
7876
7989
  init_setup();
7877
- init_complete();
7878
7990
  init_all_async();
7879
7991
  init_wait_subprocess();
7880
7992
  init_add();
@@ -7904,24 +8016,19 @@ var init_main_async = __esm({
7904
8016
  };
7905
8017
  handleAsyncArguments = (rawFile, rawArguments, rawOptions) => {
7906
8018
  const { command, escapedCommand, startTime, verboseInfo } = handleCommand(rawFile, rawArguments, rawOptions);
7907
- try {
7908
- const { file, commandArguments, options: normalizedOptions } = normalizeOptions(rawFile, rawArguments, rawOptions);
7909
- const options = handleAsyncOptions(normalizedOptions);
7910
- const fileDescriptors = handleStdioAsync(options, verboseInfo);
7911
- return {
7912
- file,
7913
- commandArguments,
7914
- command,
7915
- escapedCommand,
7916
- startTime,
7917
- verboseInfo,
7918
- options,
7919
- fileDescriptors
7920
- };
7921
- } catch (error) {
7922
- logEarlyResult(error, startTime, verboseInfo);
7923
- throw error;
7924
- }
8019
+ const { file, commandArguments, options: normalizedOptions } = normalizeOptions(rawFile, rawArguments, rawOptions);
8020
+ const options = handleAsyncOptions(normalizedOptions);
8021
+ const fileDescriptors = handleStdioAsync(options, verboseInfo);
8022
+ return {
8023
+ file,
8024
+ commandArguments,
8025
+ command,
8026
+ escapedCommand,
8027
+ startTime,
8028
+ verboseInfo,
8029
+ options,
8030
+ fileDescriptors
8031
+ };
7925
8032
  };
7926
8033
  handleAsyncOptions = ({ timeout, signal, ...options }) => {
7927
8034
  if (signal !== void 0) {
@@ -8041,10 +8148,10 @@ var init_main_async = __esm({
8041
8148
  }
8042
8149
  });
8043
8150
 
8044
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/bind.js
8151
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/bind.js
8045
8152
  var mergeOptions, mergeOption, DEEP_OPTIONS;
8046
8153
  var init_bind = __esm({
8047
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/bind.js"() {
8154
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/bind.js"() {
8048
8155
  "use strict";
8049
8156
  init_is_plain_obj();
8050
8157
  init_specific();
@@ -8067,10 +8174,10 @@ var init_bind = __esm({
8067
8174
  }
8068
8175
  });
8069
8176
 
8070
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/create.js
8177
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/create.js
8071
8178
  var createExeca, callBoundExeca, parseArguments;
8072
8179
  var init_create = __esm({
8073
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/create.js"() {
8180
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/create.js"() {
8074
8181
  "use strict";
8075
8182
  init_is_plain_obj();
8076
8183
  init_parameters();
@@ -8125,10 +8232,10 @@ var init_create = __esm({
8125
8232
  }
8126
8233
  });
8127
8234
 
8128
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/command.js
8235
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/command.js
8129
8236
  var mapCommandAsync, mapCommandSync, parseCommand, parseCommandString, SPACES_REGEXP;
8130
8237
  var init_command2 = __esm({
8131
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/command.js"() {
8238
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/command.js"() {
8132
8239
  "use strict";
8133
8240
  mapCommandAsync = ({ file, commandArguments }) => parseCommand(file, commandArguments);
8134
8241
  mapCommandSync = ({ file, commandArguments }) => ({ ...parseCommand(file, commandArguments), isSync: true });
@@ -8162,10 +8269,10 @@ var init_command2 = __esm({
8162
8269
  }
8163
8270
  });
8164
8271
 
8165
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/script.js
8272
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/script.js
8166
8273
  var setScriptSync, mapScriptAsync, mapScriptSync, getScriptOptions, getScriptStdinOption, deepScriptOptions;
8167
8274
  var init_script = __esm({
8168
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/lib/methods/script.js"() {
8275
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/lib/methods/script.js"() {
8169
8276
  "use strict";
8170
8277
  setScriptSync = (boundExeca, createNested, boundOptions) => {
8171
8278
  boundExeca.sync = createNested(mapScriptSync, boundOptions);
@@ -8179,7 +8286,7 @@ var init_script = __esm({
8179
8286
  }
8180
8287
  });
8181
8288
 
8182
- // ../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/index.js
8289
+ // ../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/index.js
8183
8290
  var execa_exports = {};
8184
8291
  __export(execa_exports, {
8185
8292
  $: () => $,
@@ -8198,7 +8305,7 @@ __export(execa_exports, {
8198
8305
  });
8199
8306
  var execa, execaSync, execaCommand, execaCommandSync, execaNode, $, sendMessage2, getOneMessage2, getEachMessage2, getCancelSignal2;
8200
8307
  var init_execa = __esm({
8201
- "../../node_modules/.pnpm/execa@9.2.0/node_modules/execa/index.js"() {
8308
+ "../../node_modules/.pnpm/execa@9.3.0/node_modules/execa/index.js"() {
8202
8309
  "use strict";
8203
8310
  init_create();
8204
8311
  init_command2();
@@ -8637,7 +8744,7 @@ var init_core2 = __esm({
8637
8744
 
8638
8745
  // ../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/shared/consola.06ad8a64.mjs
8639
8746
  function parseStack(stack) {
8640
- const cwd = process.cwd() + import_node_path14.sep;
8747
+ const cwd = process.cwd() + import_node_path17.sep;
8641
8748
  const lines = stack.split("\n").splice(1).map((l2) => l2.trim().replace("file://", "").replace(cwd, ""));
8642
8749
  return lines;
8643
8750
  }
@@ -8645,12 +8752,12 @@ function writeStream(data, stream) {
8645
8752
  const write = stream.__write || stream.write;
8646
8753
  return write.call(stream, data);
8647
8754
  }
8648
- var import_node_util11, import_node_path14, bracket, BasicReporter;
8755
+ var import_node_util11, import_node_path17, bracket, BasicReporter;
8649
8756
  var init_consola_06ad8a64 = __esm({
8650
8757
  "../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/shared/consola.06ad8a64.mjs"() {
8651
8758
  "use strict";
8652
8759
  import_node_util11 = require("util");
8653
- import_node_path14 = require("path");
8760
+ import_node_path17 = require("path");
8654
8761
  bracket = (x) => x ? `[${x}]` : "";
8655
8762
  BasicReporter = class {
8656
8763
  formatStack(stack, opts) {
@@ -9053,7 +9160,7 @@ async function prompt(message, opts = {}) {
9053
9160
  }
9054
9161
  throw new Error(`Unknown prompt type: ${opts.type}`);
9055
9162
  }
9056
- var import_node_process11, import_node_readline, import_node_tty3, import_tty, import_node_util12, import_node_path15, ESC, CSI, beep, cursor, scroll, erase, src, picocolors, tty4, isColorSupported2, formatter, replaceClose2, createColors2, picocolorsExports, l, m, G, K, Y, v, L, M, T, r, Z, H, q, p, J, b, W, Q, I, w, N, j, X, _, DD, uD, R, V, tD, h2, sD, iD, ED, oD, unicode, s, S_STEP_ACTIVE, S_STEP_CANCEL, S_STEP_ERROR, S_STEP_SUBMIT, S_BAR, S_BAR_END, S_RADIO_ACTIVE, S_RADIO_INACTIVE, S_CHECKBOX_ACTIVE, S_CHECKBOX_SELECTED, S_CHECKBOX_INACTIVE, symbol, text, confirm, select, multiselect;
9163
+ var import_node_process11, import_node_readline, import_node_tty3, import_tty, import_node_util12, import_node_path18, ESC, CSI, beep, cursor, scroll, erase, src, picocolors, tty4, isColorSupported2, formatter, replaceClose2, createColors2, picocolorsExports, l, m, G, K, Y, v, L, M, T, r, Z, H, q, p, J, b, W, Q, I, w, N, j, X, _, DD, uD, R, V, tD, h2, sD, iD, ED, oD, unicode, s, S_STEP_ACTIVE, S_STEP_CANCEL, S_STEP_ERROR, S_STEP_SUBMIT, S_BAR, S_BAR_END, S_RADIO_ACTIVE, S_RADIO_INACTIVE, S_CHECKBOX_ACTIVE, S_CHECKBOX_SELECTED, S_CHECKBOX_INACTIVE, symbol, text, confirm, select, multiselect;
9057
9164
  var init_prompt = __esm({
9058
9165
  "../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/chunks/prompt.mjs"() {
9059
9166
  "use strict";
@@ -9066,7 +9173,7 @@ var init_prompt = __esm({
9066
9173
  init_core2();
9067
9174
  init_consola_06ad8a64();
9068
9175
  import_node_util12 = require("util");
9069
- import_node_path15 = require("path");
9176
+ import_node_path18 = require("path");
9070
9177
  ESC = "\x1B";
9071
9178
  CSI = `${ESC}[`;
9072
9179
  beep = "\x07";
@@ -10083,7 +10190,7 @@ module.exports = __toCommonJS(src_exports);
10083
10190
 
10084
10191
  // src/core/utils/fs.ts
10085
10192
  var import_fs_extra4 = __toESM(require("fs-extra"), 1);
10086
- var import_fast_glob = __toESM(require("fast-glob"), 1);
10193
+ var import_fast_glob2 = __toESM(require("fast-glob"), 1);
10087
10194
 
10088
10195
  // src/core/utils/paths.ts
10089
10196
  var import_node_path = __toESM(require("path"), 1);
@@ -10612,38 +10719,6 @@ async function removeEmptyDirs(dir) {
10612
10719
  }
10613
10720
  }
10614
10721
 
10615
- // src/core/builders/vite/plugins/unimport.ts
10616
- var import_unimport = require("unimport");
10617
- var import_path = require("path");
10618
- var ENABLED_EXTENSIONS = /* @__PURE__ */ new Set([
10619
- ".js",
10620
- ".jsx",
10621
- ".ts",
10622
- ".tsx",
10623
- ".vue",
10624
- ".svelte"
10625
- ]);
10626
- function unimport(config) {
10627
- const options = config.imports;
10628
- if (options === false) return [];
10629
- const unimport2 = (0, import_unimport.createUnimport)(options);
10630
- return {
10631
- name: "wxt:unimport",
10632
- async config() {
10633
- await unimport2.scanImportsFromDir(void 0, { cwd: config.srcDir });
10634
- },
10635
- async transform(code, id) {
10636
- if (id.includes("node_modules")) return;
10637
- if (!ENABLED_EXTENSIONS.has((0, import_path.extname)(id))) return;
10638
- const injected = await unimport2.injectImports(code, id);
10639
- return {
10640
- code: injected.code,
10641
- map: injected.s.generateMap({ hires: "boundary", source: id })
10642
- };
10643
- }
10644
- };
10645
- }
10646
-
10647
10722
  // src/core/utils/virtual-modules.ts
10648
10723
  var virtualEntrypointTypes = [
10649
10724
  "content-script-main-world",
@@ -10662,7 +10737,7 @@ var virtualModuleNames = [
10662
10737
 
10663
10738
  // src/core/builders/vite/plugins/resolveVirtualModules.ts
10664
10739
  var import_fs_extra3 = __toESM(require("fs-extra"), 1);
10665
- var import_path2 = require("path");
10740
+ var import_path = require("path");
10666
10741
  function resolveVirtualModules(config) {
10667
10742
  return virtualModuleNames.map((name) => {
10668
10743
  const virtualId = `virtual:wxt-${name}?`;
@@ -10679,7 +10754,7 @@ function resolveVirtualModules(config) {
10679
10754
  if (!id.startsWith(resolvedVirtualId)) return;
10680
10755
  const inputPath = id.replace(resolvedVirtualId, "");
10681
10756
  const template = await import_fs_extra3.default.readFile(
10682
- (0, import_path2.resolve)(config.wxtModuleDir, `dist/virtual/${name}.js`),
10757
+ (0, import_path.resolve)(config.wxtModuleDir, `dist/virtual/${name}.js`),
10683
10758
  "utf-8"
10684
10759
  );
10685
10760
  return template.replace(`virtual:user-${name}`, inputPath);
@@ -11039,7 +11114,7 @@ var import_server = require("vite-node/server");
11039
11114
  var import_client = require("vite-node/client");
11040
11115
  var import_source_map = require("vite-node/source-map");
11041
11116
  async function createViteBuilder(wxtConfig, hooks, server) {
11042
- const vite = await import("vite");
11117
+ const vite2 = await import("vite");
11043
11118
  const getBaseConfig = async () => {
11044
11119
  const config = await wxtConfig.vite(wxtConfig.env);
11045
11120
  config.root = wxtConfig.root;
@@ -11061,7 +11136,6 @@ async function createViteBuilder(wxtConfig, hooks, server) {
11061
11136
  config.plugins.push(
11062
11137
  download(wxtConfig),
11063
11138
  devHtmlPrerender(wxtConfig, server),
11064
- unimport(wxtConfig),
11065
11139
  resolveVirtualModules(wxtConfig),
11066
11140
  devServerGlobals(wxtConfig, server),
11067
11141
  tsconfigPaths(wxtConfig),
@@ -11184,7 +11258,7 @@ async function createViteBuilder(wxtConfig, hooks, server) {
11184
11258
  };
11185
11259
  return {
11186
11260
  name: "Vite",
11187
- version: vite.version,
11261
+ version: vite2.version,
11188
11262
  async importEntrypoint(path12) {
11189
11263
  switch (wxtConfig.experimental.entrypointImporter) {
11190
11264
  default:
@@ -11199,10 +11273,10 @@ async function createViteBuilder(wxtConfig, hooks, server) {
11199
11273
  removeEntrypointMainFunction(wxtConfig, path12)
11200
11274
  ]
11201
11275
  };
11202
- const config = vite.mergeConfig(baseConfig, envConfig);
11203
- const server2 = await vite.createServer(config);
11276
+ const config = vite2.mergeConfig(baseConfig, envConfig);
11277
+ const server2 = await vite2.createServer(config);
11204
11278
  await server2.listen();
11205
- const runtime = await vite.createViteRuntime(server2, { hmr: false });
11279
+ const runtime = await vite2.createViteRuntime(server2, { hmr: false });
11206
11280
  const module2 = await runtime.executeUrl(path12);
11207
11281
  await server2.close();
11208
11282
  return module2.default;
@@ -11218,10 +11292,13 @@ async function createViteBuilder(wxtConfig, hooks, server) {
11218
11292
  removeEntrypointMainFunction(wxtConfig, path12)
11219
11293
  ]
11220
11294
  };
11221
- const config = vite.mergeConfig(baseConfig, envConfig);
11222
- const server2 = await vite.createServer(config);
11295
+ const config = vite2.mergeConfig(baseConfig, envConfig);
11296
+ const server2 = await vite2.createServer(config);
11223
11297
  await server2.pluginContainer.buildStart({});
11224
- const node = new import_server.ViteNodeServer(server2);
11298
+ const node = new import_server.ViteNodeServer(
11299
+ // @ts-ignore: Some weird type error...
11300
+ server2
11301
+ );
11225
11302
  (0, import_source_map.installSourcemapsSupport)({
11226
11303
  getSourceMap: (source) => node.getSourceMap(source)
11227
11304
  });
@@ -11250,13 +11327,13 @@ async function createViteBuilder(wxtConfig, hooks, server) {
11250
11327
  else if (group.inputPath.endsWith(".css"))
11251
11328
  entryConfig = getCssConfig(group);
11252
11329
  else entryConfig = getLibModeConfig(group);
11253
- const buildConfig = vite.mergeConfig(await getBaseConfig(), entryConfig);
11330
+ const buildConfig = vite2.mergeConfig(await getBaseConfig(), entryConfig);
11254
11331
  await hooks.callHook(
11255
11332
  "vite:build:extendConfig",
11256
11333
  toArray(group),
11257
11334
  buildConfig
11258
11335
  );
11259
- const result = await vite.build(buildConfig);
11336
+ const result = await vite2.build(buildConfig);
11260
11337
  return {
11261
11338
  entrypoints: group,
11262
11339
  chunks: getBuildOutputChunks(result)
@@ -11272,9 +11349,9 @@ async function createViteBuilder(wxtConfig, hooks, server) {
11272
11349
  }
11273
11350
  };
11274
11351
  const baseConfig = await getBaseConfig();
11275
- const finalConfig = vite.mergeConfig(baseConfig, serverConfig);
11352
+ const finalConfig = vite2.mergeConfig(baseConfig, serverConfig);
11276
11353
  await hooks.callHook("vite:devServer:extendConfig", finalConfig);
11277
- const viteServer = await vite.createServer(finalConfig);
11354
+ const viteServer = await vite2.createServer(finalConfig);
11278
11355
  const server2 = {
11279
11356
  async listen() {
11280
11357
  await viteServer.listen(info.port);
@@ -11322,6 +11399,127 @@ function getRollupEntry(entrypoint) {
11322
11399
  return entrypoint.inputPath;
11323
11400
  }
11324
11401
 
11402
+ // src/modules.ts
11403
+ var vite = __toESM(require("vite"), 1);
11404
+ var import_fast_glob = __toESM(require("fast-glob"), 1);
11405
+ var import_node_path13 = require("path");
11406
+ function defineWxtModule(module2) {
11407
+ if (typeof module2 === "function") return { setup: module2 };
11408
+ return module2;
11409
+ }
11410
+ function addViteConfig(wxt2, viteConfig) {
11411
+ wxt2.hooks.hook("ready", (wxt3) => {
11412
+ const userVite = wxt3.config.vite;
11413
+ wxt3.config.vite = async (env2) => {
11414
+ const fromUser = await userVite(env2);
11415
+ const fromModule = viteConfig(env2) ?? {};
11416
+ return vite.mergeConfig(fromModule, fromUser);
11417
+ };
11418
+ });
11419
+ }
11420
+
11421
+ // src/builtin-modules/unimport.ts
11422
+ var import_unimport = require("unimport");
11423
+ var import_node_path14 = require("path");
11424
+ var unimport_default = defineWxtModule({
11425
+ name: "wxt:built-in:unimport",
11426
+ setup(wxt2) {
11427
+ const options = wxt2.config.imports;
11428
+ if (options === false) return;
11429
+ let unimport;
11430
+ wxt2.hooks.hook("ready", () => {
11431
+ const addModuleImports = (module2) => {
11432
+ if (!module2.imports) return;
11433
+ options.imports ??= [];
11434
+ options.imports.push(...module2.imports);
11435
+ };
11436
+ wxt2.config.builtinModules.forEach(addModuleImports);
11437
+ wxt2.config.userModules.forEach(addModuleImports);
11438
+ });
11439
+ wxt2.hooks.afterEach((event) => {
11440
+ if (event.name === "ready") {
11441
+ unimport = (0, import_unimport.createUnimport)(options);
11442
+ }
11443
+ });
11444
+ wxt2.hooks.hook("prepare:types", async (_2, entries) => {
11445
+ await unimport.init();
11446
+ entries.push(await getImportsDeclarationEntry(unimport));
11447
+ if (options.eslintrc.enabled === false) return;
11448
+ entries.push(
11449
+ await getEslintConfigEntry(unimport, options.eslintrc.enabled, options)
11450
+ );
11451
+ });
11452
+ addViteConfig(wxt2, () => ({
11453
+ plugins: [vitePlugin(unimport)]
11454
+ }));
11455
+ }
11456
+ });
11457
+ function vitePlugin(unimport) {
11458
+ const ENABLED_EXTENSIONS = /* @__PURE__ */ new Set([
11459
+ ".js",
11460
+ ".jsx",
11461
+ ".ts",
11462
+ ".tsx",
11463
+ ".vue",
11464
+ ".svelte"
11465
+ ]);
11466
+ return {
11467
+ name: "wxt:unimport",
11468
+ async transform(code, id) {
11469
+ if (id.includes("node_modules")) return;
11470
+ if (!ENABLED_EXTENSIONS.has((0, import_node_path14.extname)(id))) return;
11471
+ const injected = await unimport.injectImports(code, id);
11472
+ return {
11473
+ code: injected.code,
11474
+ map: injected.s.generateMap({ hires: "boundary", source: id })
11475
+ };
11476
+ }
11477
+ };
11478
+ }
11479
+ async function getImportsDeclarationEntry(unimport) {
11480
+ await unimport.init();
11481
+ return {
11482
+ path: "types/imports.d.ts",
11483
+ text: [
11484
+ "// Generated by wxt",
11485
+ await unimport.generateTypeDeclarations(),
11486
+ ""
11487
+ ].join("\n"),
11488
+ tsReference: true
11489
+ };
11490
+ }
11491
+ async function getEslintConfigEntry(unimport, version2, options) {
11492
+ const globals2 = (await unimport.getImports()).map((i2) => i2.as ?? i2.name).filter(Boolean).sort().reduce((globals3, name) => {
11493
+ globals3[name] = options.eslintrc.globalsPropValue;
11494
+ return globals3;
11495
+ }, {});
11496
+ if (version2 <= 8) return getEslint8ConfigEntry(options, globals2);
11497
+ else return getEslint9ConfigEntry(options, globals2);
11498
+ }
11499
+ function getEslint8ConfigEntry(options, globals2) {
11500
+ return {
11501
+ path: options.eslintrc.filePath,
11502
+ text: JSON.stringify({ globals: globals2 }, null, 2) + "\n"
11503
+ };
11504
+ }
11505
+ function getEslint9ConfigEntry(options, globals2) {
11506
+ return {
11507
+ path: options.eslintrc.filePath,
11508
+ text: `const globals = ${JSON.stringify(globals2, null, 2)}
11509
+
11510
+ export default {
11511
+ languageOptions: {
11512
+ globals,
11513
+ sourceType: "module",
11514
+ },
11515
+ };
11516
+ `
11517
+ };
11518
+ }
11519
+
11520
+ // src/builtin-modules/index.ts
11521
+ var builtinModules = [unimport_default];
11522
+
11325
11523
  // src/core/wxt.ts
11326
11524
  var wxt;
11327
11525
  async function registerWxt(command, inlineConfig = {}, getServer) {
@@ -11343,18 +11541,16 @@ async function registerWxt(command, inlineConfig = {}, getServer) {
11343
11541
  builder,
11344
11542
  server
11345
11543
  };
11346
- for (const module2 of config.modules) {
11544
+ const initModule = async (module2) => {
11347
11545
  if (module2.hooks) wxt.hooks.addHooks(module2.hooks);
11348
- if (wxt.config.imports !== false && module2.imports) {
11349
- wxt.config.imports.imports ??= [];
11350
- wxt.config.imports.imports.push(...module2.imports);
11351
- }
11352
11546
  await module2.setup?.(
11353
11547
  wxt,
11354
11548
  // @ts-expect-error: Untyped configKey field
11355
11549
  module2.configKey ? config[module2.configKey] : void 0
11356
11550
  );
11357
- }
11551
+ };
11552
+ for (const builtinModule of builtinModules) await initModule(builtinModule);
11553
+ for (const userModule of config.userModules) await initModule(userModule);
11358
11554
  wxt.hooks.addHooks(config.hooks);
11359
11555
  await wxt.hooks.callHook("ready", wxt);
11360
11556
  }
@@ -11368,13 +11564,13 @@ async function writeFileIfDifferent(file, newContents) {
11368
11564
  }
11369
11565
  async function getPublicFiles() {
11370
11566
  if (!await import_fs_extra4.default.exists(wxt.config.publicDir)) return [];
11371
- const files = await (0, import_fast_glob.default)("**/*", { cwd: wxt.config.publicDir });
11567
+ const files = await (0, import_fast_glob2.default)("**/*", { cwd: wxt.config.publicDir });
11372
11568
  return files.map(unnormalizePath);
11373
11569
  }
11374
11570
 
11375
11571
  // src/core/utils/building/build-entrypoints.ts
11376
11572
  var import_fs_extra5 = __toESM(require("fs-extra"), 1);
11377
- var import_path3 = require("path");
11573
+ var import_path2 = require("path");
11378
11574
  var import_picocolors = __toESM(require("picocolors"), 1);
11379
11575
  async function buildEntrypoints(groups, spinner) {
11380
11576
  const steps = [];
@@ -11396,19 +11592,23 @@ async function buildEntrypoints(groups, spinner) {
11396
11592
  }
11397
11593
  async function copyPublicDirectory() {
11398
11594
  const files = (await getPublicFiles()).map((file) => ({
11399
- absoluteSrc: (0, import_path3.resolve)(wxt.config.publicDir, file),
11595
+ absoluteSrc: (0, import_path2.resolve)(wxt.config.publicDir, file),
11400
11596
  relativeDest: file
11401
11597
  }));
11402
11598
  await wxt.hooks.callHook("build:publicAssets", wxt, files);
11403
11599
  if (files.length === 0) return [];
11404
11600
  const publicAssets = [];
11405
- for (const { absoluteSrc, relativeDest } of files) {
11406
- const absoluteDest = (0, import_path3.resolve)(wxt.config.outDir, relativeDest);
11407
- await import_fs_extra5.default.ensureDir((0, import_path3.dirname)(absoluteDest));
11408
- await import_fs_extra5.default.copyFile(absoluteSrc, absoluteDest);
11601
+ for (const file of files) {
11602
+ const absoluteDest = (0, import_path2.resolve)(wxt.config.outDir, file.relativeDest);
11603
+ await import_fs_extra5.default.ensureDir((0, import_path2.dirname)(absoluteDest));
11604
+ if ("absoluteSrc" in file) {
11605
+ await import_fs_extra5.default.copyFile(file.absoluteSrc, absoluteDest);
11606
+ } else {
11607
+ await import_fs_extra5.default.writeFile(absoluteDest, file.contents, "utf8");
11608
+ }
11409
11609
  publicAssets.push({
11410
11610
  type: "asset",
11411
- fileName: relativeDest
11611
+ fileName: file.relativeDest
11412
11612
  });
11413
11613
  }
11414
11614
  return publicAssets;
@@ -11507,26 +11707,26 @@ function findEffectedSteps(changedFile, currentOutput) {
11507
11707
  }
11508
11708
 
11509
11709
  // src/core/utils/building/find-entrypoints.ts
11510
- var import_path4 = require("path");
11710
+ var import_path3 = require("path");
11511
11711
  var import_fs_extra6 = __toESM(require("fs-extra"), 1);
11512
11712
  var import_minimatch = require("minimatch");
11513
11713
  var import_linkedom3 = require("linkedom");
11514
11714
  var import_json5 = __toESM(require("json5"), 1);
11515
- var import_fast_glob2 = __toESM(require("fast-glob"), 1);
11715
+ var import_fast_glob3 = __toESM(require("fast-glob"), 1);
11516
11716
  var import_picocolors2 = __toESM(require("picocolors"), 1);
11517
11717
  async function findEntrypoints() {
11518
11718
  await import_fs_extra6.default.mkdir(wxt.config.wxtDir, { recursive: true });
11519
- await import_fs_extra6.default.writeJson((0, import_path4.resolve)(wxt.config.wxtDir, "tsconfig.json"), {});
11520
- const relativePaths = await (0, import_fast_glob2.default)(Object.keys(PATH_GLOB_TO_TYPE_MAP), {
11719
+ await import_fs_extra6.default.writeJson((0, import_path3.resolve)(wxt.config.wxtDir, "tsconfig.json"), {});
11720
+ const relativePaths = await (0, import_fast_glob3.default)(Object.keys(PATH_GLOB_TO_TYPE_MAP), {
11521
11721
  cwd: wxt.config.entrypointsDir
11522
11722
  });
11523
11723
  relativePaths.sort();
11524
11724
  const pathGlobs = Object.keys(PATH_GLOB_TO_TYPE_MAP);
11525
11725
  const entrypointInfos = relativePaths.reduce((results, relativePath) => {
11526
- const inputPath = (0, import_path4.resolve)(wxt.config.entrypointsDir, relativePath);
11726
+ const inputPath = (0, import_path3.resolve)(wxt.config.entrypointsDir, relativePath);
11527
11727
  const name = getEntrypointName(wxt.config.entrypointsDir, inputPath);
11528
11728
  const matchingGlob = pathGlobs.find(
11529
- (glob7) => (0, import_minimatch.minimatch)(relativePath, glob7)
11729
+ (glob8) => (0, import_minimatch.minimatch)(relativePath, glob8)
11530
11730
  );
11531
11731
  if (matchingGlob) {
11532
11732
  const type = PATH_GLOB_TO_TYPE_MAP[matchingGlob];
@@ -11565,7 +11765,7 @@ async function findEntrypoints() {
11565
11765
  return {
11566
11766
  ...info,
11567
11767
  type,
11568
- outputDir: (0, import_path4.resolve)(wxt.config.outDir, CONTENT_SCRIPT_OUT_DIR),
11768
+ outputDir: (0, import_path3.resolve)(wxt.config.outDir, CONTENT_SCRIPT_OUT_DIR),
11569
11769
  options: {
11570
11770
  include: void 0,
11571
11771
  exclude: void 0
@@ -11639,7 +11839,7 @@ function preventDuplicateEntrypointNames(files) {
11639
11839
  if (absolutePaths.length > 1) {
11640
11840
  lines.push(`- ${name}`);
11641
11841
  absolutePaths.forEach((absolutePath) => {
11642
- lines.push(` - ${(0, import_path4.relative)(wxt.config.root, absolutePath)}`);
11842
+ lines.push(` - ${(0, import_path3.relative)(wxt.config.root, absolutePath)}`);
11643
11843
  });
11644
11844
  }
11645
11845
  return lines;
@@ -11792,7 +11992,7 @@ async function getContentScriptEntrypoint({
11792
11992
  type: "content-script",
11793
11993
  name,
11794
11994
  inputPath,
11795
- outputDir: (0, import_path4.resolve)(wxt.config.outDir, CONTENT_SCRIPT_OUT_DIR),
11995
+ outputDir: (0, import_path3.resolve)(wxt.config.outDir, CONTENT_SCRIPT_OUT_DIR),
11796
11996
  options: resolvePerBrowserOptions(options, wxt.config.browser),
11797
11997
  skipped
11798
11998
  };
@@ -11887,10 +12087,9 @@ var PATH_GLOB_TO_TYPE_MAP = {
11887
12087
  var CONTENT_SCRIPT_OUT_DIR = "content-scripts";
11888
12088
 
11889
12089
  // src/core/utils/building/generate-wxt-dir.ts
11890
- var import_unimport2 = require("unimport");
11891
12090
  var import_fs_extra7 = __toESM(require("fs-extra"), 1);
11892
- var import_path5 = require("path");
11893
- var import_node_path13 = __toESM(require("path"), 1);
12091
+ var import_node_path15 = require("path");
12092
+ var import_node_path16 = __toESM(require("path"), 1);
11894
12093
 
11895
12094
  // src/core/utils/i18n.ts
11896
12095
  var predefinedMessages = {
@@ -11932,41 +12131,32 @@ function parseI18nMessages(messagesJson) {
11932
12131
  // src/core/utils/building/generate-wxt-dir.ts
11933
12132
  async function generateTypesDir(entrypoints) {
11934
12133
  await import_fs_extra7.default.ensureDir(wxt.config.typesDir);
11935
- const references = [];
11936
- if (wxt.config.imports !== false) {
11937
- const unimport2 = (0, import_unimport2.createUnimport)(wxt.config.imports);
11938
- references.push(await writeImportsDeclarationFile(unimport2));
11939
- if (wxt.config.imports.eslintrc.enabled) {
11940
- await writeImportsEslintFile(unimport2, wxt.config.imports);
11941
- }
11942
- }
11943
- references.push(await writePathsDeclarationFile(entrypoints));
11944
- references.push(await writeI18nDeclarationFile());
11945
- references.push(await writeGlobalsDeclarationFile());
11946
- const mainReference = await writeMainDeclarationFile(references);
11947
- await writeTsConfigFile(mainReference);
11948
- }
11949
- async function writeImportsDeclarationFile(unimport2) {
11950
- const filePath = (0, import_path5.resolve)(wxt.config.typesDir, "imports.d.ts");
11951
- await unimport2.scanImportsFromDir(void 0, { cwd: wxt.config.srcDir });
11952
- await writeFileIfDifferent(
11953
- filePath,
11954
- ["// Generated by wxt", await unimport2.generateTypeDeclarations()].join(
11955
- "\n"
11956
- ) + "\n"
11957
- );
11958
- return filePath;
11959
- }
11960
- async function writeImportsEslintFile(unimport2, options) {
11961
- const globals2 = {};
11962
- const eslintrc = { globals: globals2 };
11963
- (await unimport2.getImports()).map((i2) => i2.as ?? i2.name).filter(Boolean).sort().forEach((name) => {
11964
- eslintrc.globals[name] = options.eslintrc.globalsPropValue;
12134
+ const entries = [
12135
+ // Hard-coded entries
12136
+ { module: "wxt/vite-builder-env" }
12137
+ ];
12138
+ wxt.config.userModules.forEach((module2) => {
12139
+ if (module2.type === "node_module" && module2.configKey != null)
12140
+ entries.push({ module: module2.id });
11965
12141
  });
11966
- await import_fs_extra7.default.writeJson(options.eslintrc.filePath, eslintrc, { spaces: 2 });
12142
+ entries.push(await getPathsDeclarationEntry(entrypoints));
12143
+ entries.push(await getI18nDeclarationEntry());
12144
+ entries.push(await getGlobalsDeclarationEntry());
12145
+ entries.push(await getTsConfigEntry());
12146
+ await wxt.hooks.callHook("prepare:types", wxt, entries);
12147
+ entries.push(getMainDeclarationEntry(entries));
12148
+ const absoluteFileEntries = entries.filter((entry) => "path" in entry).map((entry) => ({
12149
+ ...entry,
12150
+ path: (0, import_node_path15.resolve)(wxt.config.wxtDir, entry.path)
12151
+ }));
12152
+ await Promise.all(
12153
+ absoluteFileEntries.map(async (file) => {
12154
+ await import_fs_extra7.default.ensureDir((0, import_node_path15.dirname)(file.path));
12155
+ await writeFileIfDifferent(file.path, file.text);
12156
+ })
12157
+ );
11967
12158
  }
11968
- async function writePathsDeclarationFile(entrypoints) {
11969
- const filePath = (0, import_path5.resolve)(wxt.config.typesDir, "paths.d.ts");
12159
+ async function getPathsDeclarationEntry(entrypoints) {
11970
12160
  const unions = entrypoints.map(
11971
12161
  (entry) => getEntrypointBundlePath(
11972
12162
  entry,
@@ -11987,14 +12177,13 @@ declare module "wxt/browser" {
11987
12177
  }
11988
12178
  }
11989
12179
  `;
11990
- await writeFileIfDifferent(
11991
- filePath,
11992
- template.replace("{{ union }}", unions || " | never")
11993
- );
11994
- return filePath;
12180
+ return {
12181
+ path: "types/paths.d.ts",
12182
+ text: template.replace("{{ union }}", unions || " | never"),
12183
+ tsReference: true
12184
+ };
11995
12185
  }
11996
- async function writeI18nDeclarationFile() {
11997
- const filePath = (0, import_path5.resolve)(wxt.config.typesDir, "i18n.d.ts");
12186
+ async function getI18nDeclarationEntry() {
11998
12187
  const defaultLocale = wxt.config.manifest.default_locale;
11999
12188
  const template = `// Generated by wxt
12000
12189
  import "wxt/browser";
@@ -12017,7 +12206,7 @@ declare module "wxt/browser" {
12017
12206
  `;
12018
12207
  let messages;
12019
12208
  if (defaultLocale) {
12020
- const defaultLocalePath = import_node_path13.default.resolve(
12209
+ const defaultLocalePath = import_node_path16.default.resolve(
12021
12210
  wxt.config.publicDir,
12022
12211
  "_locales",
12023
12212
  defaultLocale,
@@ -12040,18 +12229,17 @@ declare module "wxt/browser" {
12040
12229
  options?: GetMessageOptions,
12041
12230
  ): string;`;
12042
12231
  });
12043
- await writeFileIfDifferent(
12044
- filePath,
12045
- template.replace("{{ overrides }}", overrides.join("\n"))
12046
- );
12047
- return filePath;
12232
+ return {
12233
+ path: "types/i18n.d.ts",
12234
+ text: template.replace("{{ overrides }}", overrides.join("\n")),
12235
+ tsReference: true
12236
+ };
12048
12237
  }
12049
- async function writeGlobalsDeclarationFile() {
12050
- const filePath = (0, import_path5.resolve)(wxt.config.typesDir, "globals.d.ts");
12238
+ async function getGlobalsDeclarationEntry() {
12051
12239
  const globals2 = [...getGlobals(wxt.config), ...getEntrypointGlobals("")];
12052
- await writeFileIfDifferent(
12053
- filePath,
12054
- [
12240
+ return {
12241
+ path: "types/globals.d.ts",
12242
+ text: [
12055
12243
  "// Generated by wxt",
12056
12244
  "export {}",
12057
12245
  "interface ImportMetaEnv {",
@@ -12059,36 +12247,31 @@ async function writeGlobalsDeclarationFile() {
12059
12247
  "}",
12060
12248
  "interface ImportMeta {",
12061
12249
  " readonly env: ImportMetaEnv",
12062
- "}"
12063
- ].join("\n") + "\n"
12064
- );
12065
- return filePath;
12250
+ "}",
12251
+ ""
12252
+ ].join("\n"),
12253
+ tsReference: true
12254
+ };
12066
12255
  }
12067
- async function writeMainDeclarationFile(references) {
12068
- const dir = wxt.config.wxtDir;
12069
- const filePath = (0, import_path5.resolve)(dir, "wxt.d.ts");
12070
- await writeFileIfDifferent(
12071
- filePath,
12072
- [
12073
- "// Generated by wxt",
12074
- `/// <reference types="wxt/vite-builder-env" />`,
12075
- ...references.map(
12076
- (ref) => `/// <reference types="./${normalizePath((0, import_path5.relative)(dir, ref))}" />`
12077
- ),
12078
- // Add references to modules installed from NPM to the TS project so
12079
- // their type augmentation can update InlineConfig correctly. Local
12080
- // modules defined in <root>/modules are already apart of the project, so
12081
- // we don't need to add them.
12082
- ...wxt.config.modules.filter(
12083
- (module2) => module2.type === "node_module" && module2.configKey != null
12084
- ).map((module2) => `/// <reference types="${module2.id}" />`)
12085
- ].join("\n") + "\n"
12086
- );
12087
- return filePath;
12256
+ function getMainDeclarationEntry(references) {
12257
+ const lines = ["// Generated by wxt"];
12258
+ references.forEach((ref) => {
12259
+ if ("module" in ref) {
12260
+ return lines.push(`/// <reference types="${ref.module}" />`);
12261
+ } else if (ref.tsReference) {
12262
+ const absolutePath = (0, import_node_path15.resolve)(wxt.config.wxtDir, ref.path);
12263
+ const relativePath = (0, import_node_path15.relative)(wxt.config.wxtDir, absolutePath);
12264
+ lines.push(`/// <reference types="./${normalizePath(relativePath)}" />`);
12265
+ }
12266
+ });
12267
+ return {
12268
+ path: "wxt.d.ts",
12269
+ text: lines.join("\n") + "\n"
12270
+ };
12088
12271
  }
12089
- async function writeTsConfigFile(mainReference) {
12272
+ async function getTsConfigEntry() {
12090
12273
  const dir = wxt.config.wxtDir;
12091
- const getTsconfigPath = (path12) => normalizePath((0, import_path5.relative)(dir, path12));
12274
+ const getTsconfigPath = (path12) => normalizePath((0, import_node_path15.relative)(dir, path12));
12092
12275
  const paths = Object.entries(wxt.config.alias).flatMap(([alias, absolutePath]) => {
12093
12276
  const aliasPath = getTsconfigPath(absolutePath);
12094
12277
  return [
@@ -12096,9 +12279,7 @@ async function writeTsConfigFile(mainReference) {
12096
12279
  ` "${alias}/*": ["${aliasPath}/*"]`
12097
12280
  ];
12098
12281
  }).join(",\n");
12099
- await writeFileIfDifferent(
12100
- (0, import_path5.resolve)(dir, "tsconfig.json"),
12101
- `{
12282
+ const text2 = `{
12102
12283
  "compilerOptions": {
12103
12284
  "target": "ESNext",
12104
12285
  "module": "ESNext",
@@ -12115,26 +12296,29 @@ ${paths}
12115
12296
  },
12116
12297
  "include": [
12117
12298
  "${getTsconfigPath(wxt.config.root)}/**/*",
12118
- "./${getTsconfigPath(mainReference)}"
12299
+ "./wxt.d.ts"
12119
12300
  ],
12120
12301
  "exclude": ["${getTsconfigPath(wxt.config.outBaseDir)}"]
12121
- }`
12122
- );
12302
+ }`;
12303
+ return {
12304
+ path: "tsconfig.json",
12305
+ text: text2
12306
+ };
12123
12307
  }
12124
12308
 
12125
12309
  // src/core/utils/building/resolve-config.ts
12126
12310
  var import_c12 = require("c12");
12127
- var import_node_path18 = __toESM(require("path"), 1);
12311
+ var import_node_path20 = __toESM(require("path"), 1);
12128
12312
 
12129
12313
  // src/core/utils/cache.ts
12130
12314
  var import_fs_extra8 = __toESM(require("fs-extra"), 1);
12131
- var import_path6 = require("path");
12315
+ var import_path4 = require("path");
12132
12316
  function createFsCache(wxtDir) {
12133
- const getPath = (key) => (0, import_path6.resolve)(wxtDir, "cache", encodeURIComponent(key));
12317
+ const getPath = (key) => (0, import_path4.resolve)(wxtDir, "cache", encodeURIComponent(key));
12134
12318
  return {
12135
12319
  async set(key, value) {
12136
12320
  const path12 = getPath(key);
12137
- await (0, import_fs_extra8.ensureDir)((0, import_path6.dirname)(path12));
12321
+ await (0, import_fs_extra8.ensureDir)((0, import_path4.dirname)(path12));
12138
12322
  await writeFileIfDifferent(path12, value);
12139
12323
  },
12140
12324
  async get(key) {
@@ -12156,36 +12340,29 @@ var import_node_process13 = require("process");
12156
12340
  init_utils2();
12157
12341
  var import_node_tty4 = require("tty");
12158
12342
  var import_node_util13 = require("util");
12159
- var import_node_path16 = require("path");
12343
+ var import_node_path19 = require("path");
12160
12344
 
12161
12345
  // src/core/utils/building/resolve-config.ts
12162
12346
  var import_defu = __toESM(require("defu"), 1);
12163
-
12164
- // src/core/utils/package.ts
12165
- var import_node_path17 = require("path");
12166
12347
  var import_fs_extra9 = __toESM(require("fs-extra"), 1);
12167
- async function getPackageJson() {
12168
- const file = (0, import_node_path17.resolve)(wxt.config.root, "package.json");
12348
+ var import_fast_glob4 = __toESM(require("fast-glob"), 1);
12349
+
12350
+ // src/core/utils/eslint.ts
12351
+ var import_meta = {};
12352
+ async function getEslintVersion() {
12169
12353
  try {
12170
- return await import_fs_extra9.default.readJson(file);
12171
- } catch (err) {
12172
- wxt.logger.debug(
12173
- `Failed to read package.json at: ${file}. Returning undefined.`
12354
+ const require2 = (await import("module")).default.createRequire(
12355
+ import_meta.url
12174
12356
  );
12175
- return {};
12357
+ const { ESLint } = require2("eslint");
12358
+ return ESLint.version?.split(".") ?? [];
12359
+ } catch (error) {
12360
+ return [];
12176
12361
  }
12177
12362
  }
12178
- function isModuleInstalled(name) {
12179
- return import(
12180
- /* @vite-ignore */
12181
- name
12182
- ).then(() => true).catch(() => false);
12183
- }
12184
12363
 
12185
12364
  // src/core/utils/building/resolve-config.ts
12186
- var import_fs_extra10 = __toESM(require("fs-extra"), 1);
12187
- var import_fast_glob3 = __toESM(require("fast-glob"), 1);
12188
- var import_meta = {};
12365
+ var import_meta2 = {};
12189
12366
  async function resolveConfig(inlineConfig, command) {
12190
12367
  let userConfig = {};
12191
12368
  let userConfigMetadata;
@@ -12210,28 +12387,28 @@ async function resolveConfig(inlineConfig, command) {
12210
12387
  const manifestVersion = mergedConfig.manifestVersion ?? (browser === "firefox" || browser === "safari" ? 2 : 3);
12211
12388
  const mode = mergedConfig.mode ?? COMMAND_MODES[command];
12212
12389
  const env2 = { browser, command, manifestVersion, mode };
12213
- const root = import_node_path18.default.resolve(
12390
+ const root = import_node_path20.default.resolve(
12214
12391
  inlineConfig.root ?? userConfig.root ?? process.cwd()
12215
12392
  );
12216
- const wxtDir = import_node_path18.default.resolve(root, ".wxt");
12393
+ const wxtDir = import_node_path20.default.resolve(root, ".wxt");
12217
12394
  const wxtModuleDir = await resolveWxtModuleDir();
12218
- const srcDir = import_node_path18.default.resolve(root, mergedConfig.srcDir ?? root);
12219
- const entrypointsDir = import_node_path18.default.resolve(
12395
+ const srcDir = import_node_path20.default.resolve(root, mergedConfig.srcDir ?? root);
12396
+ const entrypointsDir = import_node_path20.default.resolve(
12220
12397
  srcDir,
12221
12398
  mergedConfig.entrypointsDir ?? "entrypoints"
12222
12399
  );
12223
- const modulesDir = import_node_path18.default.resolve(srcDir, mergedConfig.modulesDir ?? "modules");
12400
+ const modulesDir = import_node_path20.default.resolve(srcDir, mergedConfig.modulesDir ?? "modules");
12224
12401
  if (await isDirMissing(entrypointsDir)) {
12225
12402
  logMissingDir(logger, "Entrypoints", entrypointsDir);
12226
12403
  }
12227
12404
  const filterEntrypoints = !!mergedConfig.filterEntrypoints?.length ? new Set(mergedConfig.filterEntrypoints) : void 0;
12228
- const publicDir = import_node_path18.default.resolve(srcDir, mergedConfig.publicDir ?? "public");
12405
+ const publicDir = import_node_path20.default.resolve(srcDir, mergedConfig.publicDir ?? "public");
12229
12406
  if (await isDirMissing(publicDir)) {
12230
12407
  logMissingDir(logger, "Public", publicDir);
12231
12408
  }
12232
- const typesDir = import_node_path18.default.resolve(wxtDir, "types");
12233
- const outBaseDir = import_node_path18.default.resolve(root, mergedConfig.outDir ?? ".output");
12234
- const outDir = import_node_path18.default.resolve(outBaseDir, `${browser}-mv${manifestVersion}`);
12409
+ const typesDir = import_node_path20.default.resolve(wxtDir, "types");
12410
+ const outBaseDir = import_node_path20.default.resolve(root, mergedConfig.outDir ?? ".output");
12411
+ const outDir = import_node_path20.default.resolve(outBaseDir, `${browser}-mv${manifestVersion}`);
12235
12412
  const reloadCommand = mergedConfig.dev?.reloadCommand ?? "Alt+R";
12236
12413
  const runnerConfig = await (0, import_c12.loadConfig)({
12237
12414
  name: "web-ext",
@@ -12248,7 +12425,7 @@ async function resolveConfig(inlineConfig, command) {
12248
12425
  "~": srcDir,
12249
12426
  "@@": root,
12250
12427
  "~~": root
12251
- }).map(([key, value]) => [key, import_node_path18.default.resolve(root, value)])
12428
+ }).map(([key, value]) => [key, import_node_path20.default.resolve(root, value)])
12252
12429
  );
12253
12430
  let devServerConfig;
12254
12431
  if (command === "serve") {
@@ -12262,14 +12439,20 @@ async function resolveConfig(inlineConfig, command) {
12262
12439
  hostname: "localhost"
12263
12440
  };
12264
12441
  }
12265
- const modules = await resolveWxtModules(modulesDir, mergedConfig.modules);
12266
- const moduleOptions = modules.reduce((map, module2) => {
12267
- if (module2.configKey) {
12268
- map[module2.configKey] = // @ts-expect-error
12269
- mergedConfig[module2.configKey];
12270
- }
12271
- return map;
12272
- }, {});
12442
+ const userModules = await resolveWxtUserModules(
12443
+ modulesDir,
12444
+ mergedConfig.modules
12445
+ );
12446
+ const moduleOptions = userModules.reduce(
12447
+ (map, module2) => {
12448
+ if (module2.configKey) {
12449
+ map[module2.configKey] = // @ts-expect-error
12450
+ mergedConfig[module2.configKey];
12451
+ }
12452
+ return map;
12453
+ },
12454
+ {}
12455
+ );
12273
12456
  return {
12274
12457
  browser,
12275
12458
  command,
@@ -12279,7 +12462,7 @@ async function resolveConfig(inlineConfig, command) {
12279
12462
  filterEntrypoints,
12280
12463
  env: env2,
12281
12464
  fsCache: createFsCache(wxtDir),
12282
- imports: await getUnimportOptions(wxtDir, logger, mergedConfig),
12465
+ imports: await getUnimportOptions(wxtDir, srcDir, logger, mergedConfig),
12283
12466
  logger,
12284
12467
  manifest: await resolveManifestConfig(env2, mergedConfig.manifest),
12285
12468
  manifestVersion,
@@ -12293,7 +12476,7 @@ async function resolveConfig(inlineConfig, command) {
12293
12476
  srcDir,
12294
12477
  typesDir,
12295
12478
  wxtDir,
12296
- zip: resolveZipConfig(root, mergedConfig),
12479
+ zip: resolveZipConfig(root, outBaseDir, mergedConfig),
12297
12480
  transformManifest: mergedConfig.transformManifest,
12298
12481
  analysis: resolveAnalysisConfig(root, mergedConfig),
12299
12482
  userConfigMetadata: userConfigMetadata ?? {},
@@ -12308,7 +12491,8 @@ async function resolveConfig(inlineConfig, command) {
12308
12491
  },
12309
12492
  hooks: mergedConfig.hooks ?? {},
12310
12493
  vite: mergedConfig.vite ?? (() => ({})),
12311
- modules,
12494
+ builtinModules,
12495
+ userModules,
12312
12496
  plugins: [],
12313
12497
  ...moduleOptions
12314
12498
  };
@@ -12337,8 +12521,8 @@ async function mergeInlineConfig(inlineConfig, userConfig) {
12337
12521
  ...builderConfig
12338
12522
  };
12339
12523
  }
12340
- function resolveZipConfig(root, mergedConfig) {
12341
- const downloadedPackagesDir = import_node_path18.default.resolve(root, ".wxt/local_modules");
12524
+ function resolveZipConfig(root, outBaseDir, mergedConfig) {
12525
+ const downloadedPackagesDir = import_node_path20.default.resolve(root, ".wxt/local_modules");
12342
12526
  return {
12343
12527
  name: void 0,
12344
12528
  sourcesTemplate: "{{name}}-{{version}}-sources.zip",
@@ -12356,6 +12540,8 @@ function resolveZipConfig(root, mergedConfig) {
12356
12540
  // Tests
12357
12541
  "**/__tests__/**",
12358
12542
  "**/*.+(test|spec).?(c|m)+(j|t)s?(x)",
12543
+ // Output directory
12544
+ `${import_node_path20.default.relative(root, outBaseDir)}/**`,
12359
12545
  // From user
12360
12546
  ...mergedConfig.zip?.excludeSources ?? []
12361
12547
  ],
@@ -12364,12 +12550,12 @@ function resolveZipConfig(root, mergedConfig) {
12364
12550
  };
12365
12551
  }
12366
12552
  function resolveAnalysisConfig(root, mergedConfig) {
12367
- const analysisOutputFile = import_node_path18.default.resolve(
12553
+ const analysisOutputFile = import_node_path20.default.resolve(
12368
12554
  root,
12369
12555
  mergedConfig.analysis?.outputFile ?? "stats.html"
12370
12556
  );
12371
- const analysisOutputDir = import_node_path18.default.dirname(analysisOutputFile);
12372
- const analysisOutputName = import_node_path18.default.parse(analysisOutputFile).name;
12557
+ const analysisOutputDir = import_node_path20.default.dirname(analysisOutputFile);
12558
+ const analysisOutputName = import_node_path20.default.parse(analysisOutputFile).name;
12373
12559
  return {
12374
12560
  enabled: mergedConfig.analysis?.enabled ?? false,
12375
12561
  open: mergedConfig.analysis?.open ?? false,
@@ -12380,18 +12566,8 @@ function resolveAnalysisConfig(root, mergedConfig) {
12380
12566
  keepArtifacts: mergedConfig.analysis?.keepArtifacts ?? false
12381
12567
  };
12382
12568
  }
12383
- async function getUnimportOptions(wxtDir, logger, config) {
12569
+ async function getUnimportOptions(wxtDir, srcDir, logger, config) {
12384
12570
  if (config.imports === false) return false;
12385
- const enabledConfig = config.imports?.eslintrc?.enabled;
12386
- let enabled;
12387
- switch (enabledConfig) {
12388
- case void 0:
12389
- case "auto":
12390
- enabled = await isModuleInstalled("eslint");
12391
- break;
12392
- default:
12393
- enabled = enabledConfig;
12394
- }
12395
12571
  const defaultOptions = {
12396
12572
  debugLog: logger.debug,
12397
12573
  imports: [
@@ -12406,28 +12582,53 @@ async function getUnimportOptions(wxtDir, logger, config) {
12406
12582
  ],
12407
12583
  warn: logger.warn,
12408
12584
  dirs: ["components", "composables", "hooks", "utils"],
12409
- eslintrc: {
12410
- enabled,
12411
- filePath: import_node_path18.default.resolve(wxtDir, "eslintrc-auto-import.json"),
12412
- globalsPropValue: true
12413
- }
12585
+ dirsScanOptions: {
12586
+ cwd: srcDir
12587
+ },
12588
+ eslintrc: await getUnimportEslintOptions(wxtDir, config.imports?.eslintrc)
12414
12589
  };
12415
12590
  return (0, import_defu.default)(
12416
12591
  config.imports ?? {},
12417
12592
  defaultOptions
12418
12593
  );
12419
12594
  }
12595
+ async function getUnimportEslintOptions(wxtDir, options) {
12596
+ const rawEslintEnabled = options?.enabled ?? "auto";
12597
+ let eslintEnabled;
12598
+ switch (rawEslintEnabled) {
12599
+ case "auto":
12600
+ const version2 = await getEslintVersion();
12601
+ let major = parseInt(version2[0]);
12602
+ if (major <= 8) eslintEnabled = 8;
12603
+ else if (major >= 9) eslintEnabled = 9;
12604
+ else eslintEnabled = 8;
12605
+ break;
12606
+ case true:
12607
+ eslintEnabled = 8;
12608
+ break;
12609
+ default:
12610
+ eslintEnabled = rawEslintEnabled;
12611
+ }
12612
+ return {
12613
+ enabled: eslintEnabled,
12614
+ filePath: import_node_path20.default.resolve(
12615
+ wxtDir,
12616
+ eslintEnabled === 9 ? "eslint-auto-imports.mjs" : "eslintrc-auto-import.json"
12617
+ ),
12618
+ globalsPropValue: true
12619
+ };
12620
+ }
12420
12621
  async function resolveWxtModuleDir() {
12421
- const requireResolve = require?.resolve ?? (await import("module")).default.createRequire(import_meta.url).resolve;
12422
- return import_node_path18.default.resolve(requireResolve("wxt"), "../..");
12622
+ const requireResolve = require?.resolve ?? (await import("module")).default.createRequire(import_meta2.url).resolve;
12623
+ return import_node_path20.default.resolve(requireResolve("wxt"), "../..");
12423
12624
  }
12424
12625
  async function isDirMissing(dir) {
12425
- return !await import_fs_extra10.default.exists(dir);
12626
+ return !await import_fs_extra9.default.exists(dir);
12426
12627
  }
12427
12628
  function logMissingDir(logger, name, expected) {
12428
12629
  logger.warn(
12429
12630
  `${name} directory not found: ./${normalizePath(
12430
- import_node_path18.default.relative(process.cwd(), expected)
12631
+ import_node_path20.default.relative(process.cwd(), expected)
12431
12632
  )}`
12432
12633
  );
12433
12634
  }
@@ -12436,19 +12637,19 @@ var COMMAND_MODES = {
12436
12637
  serve: "development"
12437
12638
  };
12438
12639
  async function mergeBuilderConfig(inlineConfig, userConfig) {
12439
- const vite = await import("vite").catch(() => void 0);
12440
- if (vite) {
12640
+ const vite2 = await import("vite").catch(() => void 0);
12641
+ if (vite2) {
12441
12642
  return {
12442
12643
  vite: async (env2) => {
12443
12644
  const resolvedInlineConfig = await inlineConfig.vite?.(env2) ?? {};
12444
12645
  const resolvedUserConfig = await userConfig.vite?.(env2) ?? {};
12445
- return vite.mergeConfig(resolvedUserConfig, resolvedInlineConfig);
12646
+ return vite2.mergeConfig(resolvedUserConfig, resolvedInlineConfig);
12446
12647
  }
12447
12648
  };
12448
12649
  }
12449
12650
  throw Error("Builder not found. Make sure vite is installed.");
12450
12651
  }
12451
- async function resolveWxtModules(modulesDir, modules = []) {
12652
+ async function resolveWxtUserModules(modulesDir, modules = []) {
12452
12653
  const npmModules = await Promise.all(
12453
12654
  modules.map(async (moduleId) => {
12454
12655
  const mod = await import(
@@ -12465,13 +12666,13 @@ async function resolveWxtModules(modulesDir, modules = []) {
12465
12666
  };
12466
12667
  })
12467
12668
  );
12468
- const localModulePaths = await (0, import_fast_glob3.default)(["*.[tj]s", "*/index.[tj]s"], {
12669
+ const localModulePaths = await (0, import_fast_glob4.default)(["*.[tj]s", "*/index.[tj]s"], {
12469
12670
  cwd: modulesDir,
12470
12671
  onlyFiles: true
12471
12672
  }).catch(() => []);
12472
12673
  const localModules = await Promise.all(
12473
12674
  localModulePaths.map(async (file) => {
12474
- const absolutePath = normalizePath(import_node_path18.default.resolve(modulesDir, file));
12675
+ const absolutePath = normalizePath(import_node_path20.default.resolve(modulesDir, file));
12475
12676
  const { config } = await (0, import_c12.loadConfig)({
12476
12677
  configFile: absolutePath,
12477
12678
  globalRc: false,
@@ -12537,34 +12738,34 @@ var ENTRY_TYPE_TO_GROUP_MAP = {
12537
12738
  // src/core/utils/building/import-entrypoint.ts
12538
12739
  var import_jiti = __toESM(require("jiti"), 1);
12539
12740
  var import_unimport3 = require("unimport");
12540
- var import_fs_extra11 = __toESM(require("fs-extra"), 1);
12541
- var import_node_path19 = require("path");
12741
+ var import_fs_extra10 = __toESM(require("fs-extra"), 1);
12742
+ var import_node_path21 = require("path");
12542
12743
  var import_esbuild = require("esbuild");
12543
12744
  var import_node_url3 = require("url");
12544
- var import_meta2 = {};
12745
+ var import_meta3 = {};
12545
12746
  async function importEntrypointFile(path12) {
12546
12747
  wxt.logger.debug("Loading file metadata:", path12);
12547
12748
  const normalPath = normalizePath(path12);
12548
- const unimport2 = (0, import_unimport3.createUnimport)({
12749
+ const unimport = (0, import_unimport3.createUnimport)({
12549
12750
  ...wxt.config.imports,
12550
12751
  // Only allow specific imports, not all from the project
12551
12752
  dirs: []
12552
12753
  });
12553
- await unimport2.init();
12554
- const text2 = await import_fs_extra11.default.readFile(path12, "utf-8");
12754
+ await unimport.init();
12755
+ const text2 = await import_fs_extra10.default.readFile(path12, "utf-8");
12555
12756
  const textNoImports = removeProjectImportStatements(text2);
12556
- const { code } = await unimport2.injectImports(textNoImports);
12757
+ const { code } = await unimport.injectImports(textNoImports);
12557
12758
  wxt.logger.debug(
12558
12759
  ["Text:", text2, "No imports:", textNoImports, "Code:", code].join("\n")
12559
12760
  );
12560
12761
  const jiti = (0, import_jiti.default)(
12561
- typeof __filename !== "undefined" ? __filename : (0, import_node_url3.fileURLToPath)(import_meta2.url),
12762
+ typeof __filename !== "undefined" ? __filename : (0, import_node_url3.fileURLToPath)(import_meta3.url),
12562
12763
  {
12563
12764
  cache: false,
12564
12765
  debug: wxt.config.debug,
12565
12766
  esmResolve: true,
12566
12767
  alias: {
12567
- "webextension-polyfill": (0, import_node_path19.resolve)(
12768
+ "webextension-polyfill": (0, import_node_path21.resolve)(
12568
12769
  wxt.config.wxtModuleDir,
12569
12770
  "dist/virtual/mock-browser.js"
12570
12771
  )
@@ -12597,7 +12798,7 @@ async function importEntrypointFile(path12) {
12597
12798
  const res = await jiti(path12);
12598
12799
  return res.default;
12599
12800
  } catch (err) {
12600
- const filePath = (0, import_node_path19.relative)(wxt.config.root, path12);
12801
+ const filePath = (0, import_node_path21.relative)(wxt.config.root, path12);
12601
12802
  if (err instanceof ReferenceError) {
12602
12803
  const variableName = err.message.replace(" is not defined", "");
12603
12804
  throw Error(
@@ -12629,12 +12830,12 @@ var import_picocolors5 = __toESM(require("picocolors"), 1);
12629
12830
  var import_fs_extra14 = __toESM(require("fs-extra"), 1);
12630
12831
 
12631
12832
  // src/core/utils/log/printBuildSummary.ts
12632
- var import_path7 = require("path");
12833
+ var import_path5 = require("path");
12633
12834
 
12634
12835
  // src/core/utils/log/printFileList.ts
12635
- var import_node_path20 = __toESM(require("path"), 1);
12836
+ var import_node_path22 = __toESM(require("path"), 1);
12636
12837
  var import_picocolors3 = __toESM(require("picocolors"), 1);
12637
- var import_fs_extra12 = __toESM(require("fs-extra"), 1);
12838
+ var import_fs_extra11 = __toESM(require("fs-extra"), 1);
12638
12839
  var import_filesize = require("filesize");
12639
12840
 
12640
12841
  // src/core/utils/log/printTable.ts
@@ -12667,12 +12868,12 @@ async function printFileList(log, header, baseDir, files) {
12667
12868
  const fileRows = await Promise.all(
12668
12869
  files.map(async (file, i2) => {
12669
12870
  const parts = [
12670
- import_node_path20.default.relative(process.cwd(), baseDir) + import_node_path20.default.sep,
12671
- import_node_path20.default.relative(baseDir, file)
12871
+ import_node_path22.default.relative(process.cwd(), baseDir) + import_node_path22.default.sep,
12872
+ import_node_path22.default.relative(baseDir, file)
12672
12873
  ];
12673
12874
  const prefix = i2 === files.length - 1 ? " \u2514\u2500" : " \u251C\u2500";
12674
12875
  const color = getChunkColor(file);
12675
- const stats = await import_fs_extra12.default.lstat(file);
12876
+ const stats = await import_fs_extra11.default.lstat(file);
12676
12877
  totalSize += stats.size;
12677
12878
  const size = String((0, import_filesize.filesize)(stats.size));
12678
12879
  return [
@@ -12713,7 +12914,7 @@ async function printBuildSummary(log, header, output) {
12713
12914
  return l2.fileName.localeCompare(r2.fileName);
12714
12915
  });
12715
12916
  const files = chunks.map(
12716
- (chunk) => (0, import_path7.resolve)(wxt.config.outDir, chunk.fileName)
12917
+ (chunk) => (0, import_path5.resolve)(wxt.config.outDir, chunk.fileName)
12717
12918
  );
12718
12919
  await printFileList(log, header, wxt.config.outDir, files);
12719
12920
  }
@@ -12735,14 +12936,14 @@ function getChunkSortWeight(filename) {
12735
12936
  var import_picocolors4 = __toESM(require("picocolors"), 1);
12736
12937
 
12737
12938
  // package.json
12738
- var version = "0.18.8";
12939
+ var version = "0.18.10";
12739
12940
 
12740
12941
  // src/core/utils/building/internal-build.ts
12741
- var import_fast_glob4 = __toESM(require("fast-glob"), 1);
12942
+ var import_fast_glob5 = __toESM(require("fast-glob"), 1);
12742
12943
 
12743
12944
  // src/core/utils/manifest.ts
12744
12945
  var import_fs_extra13 = __toESM(require("fs-extra"), 1);
12745
- var import_path8 = require("path");
12946
+ var import_path6 = require("path");
12746
12947
 
12747
12948
  // src/core/utils/content-security-policy.ts
12748
12949
  var ContentSecurityPolicy = class _ContentSecurityPolicy {
@@ -12846,12 +13047,27 @@ function getContentScriptJs(config, entrypoint) {
12846
13047
  return [getEntrypointBundlePath(entrypoint, config.outDir, ".js")];
12847
13048
  }
12848
13049
 
13050
+ // src/core/utils/package.ts
13051
+ var import_node_path23 = require("path");
13052
+ var import_fs_extra12 = __toESM(require("fs-extra"), 1);
13053
+ async function getPackageJson() {
13054
+ const file = (0, import_node_path23.resolve)(wxt.config.root, "package.json");
13055
+ try {
13056
+ return await import_fs_extra12.default.readJson(file);
13057
+ } catch (err) {
13058
+ wxt.logger.debug(
13059
+ `Failed to read package.json at: ${file}. Returning undefined.`
13060
+ );
13061
+ return {};
13062
+ }
13063
+ }
13064
+
12849
13065
  // src/core/utils/manifest.ts
12850
13066
  var import_defu2 = __toESM(require("defu"), 1);
12851
13067
  async function writeManifest(manifest, output) {
12852
13068
  const str = wxt.config.mode === "production" ? JSON.stringify(manifest) : JSON.stringify(manifest, null, 2);
12853
13069
  await import_fs_extra13.default.ensureDir(wxt.config.outDir);
12854
- await writeFileIfDifferent((0, import_path8.resolve)(wxt.config.outDir, "manifest.json"), str);
13070
+ await writeFileIfDifferent((0, import_path6.resolve)(wxt.config.outDir, "manifest.json"), str);
12855
13071
  output.publicAssets.unshift({
12856
13072
  type: "asset",
12857
13073
  fileName: "manifest.json"
@@ -13386,7 +13602,7 @@ async function rebuild(allEntrypoints, entrypointGroups, existingOutput = {
13386
13602
  }
13387
13603
 
13388
13604
  // src/core/utils/building/internal-build.ts
13389
- var import_node_path21 = require("path");
13605
+ var import_node_path24 = require("path");
13390
13606
 
13391
13607
  // src/core/utils/validation.ts
13392
13608
  function validateEntrypoints(entrypoints) {
@@ -13485,7 +13701,7 @@ async function internalBuild() {
13485
13701
  }
13486
13702
  if (wxt.config.analysis.enabled) {
13487
13703
  await combineAnalysisStats();
13488
- const statsPath = (0, import_node_path21.relative)(wxt.config.root, wxt.config.analysis.outputFile);
13704
+ const statsPath = (0, import_node_path24.relative)(wxt.config.root, wxt.config.analysis.outputFile);
13489
13705
  wxt.logger.info(
13490
13706
  `Analysis complete:
13491
13707
  ${import_picocolors5.default.gray("\u2514\u2500")} ${import_picocolors5.default.yellow(statsPath)}`
@@ -13503,7 +13719,7 @@ async function internalBuild() {
13503
13719
  return output;
13504
13720
  }
13505
13721
  async function combineAnalysisStats() {
13506
- const unixFiles = await (0, import_fast_glob4.default)(`${wxt.config.analysis.outputName}-*.json`, {
13722
+ const unixFiles = await (0, import_fast_glob5.default)(`${wxt.config.analysis.outputName}-*.json`, {
13507
13723
  cwd: wxt.config.analysis.outputDir,
13508
13724
  absolute: true
13509
13725
  });
@@ -13533,12 +13749,12 @@ function printValidationResults({
13533
13749
  return map;
13534
13750
  }, /* @__PURE__ */ new Map());
13535
13751
  Array.from(entrypointErrors.entries()).forEach(([entrypoint, errors2]) => {
13536
- consola.log((0, import_node_path21.relative)(cwd, entrypoint.inputPath));
13752
+ wxt.logger.log((0, import_node_path24.relative)(cwd, entrypoint.inputPath));
13537
13753
  console.log();
13538
13754
  errors2.forEach((err) => {
13539
13755
  const type = err.type === "error" ? import_picocolors5.default.red("ERROR") : import_picocolors5.default.yellow("WARN");
13540
13756
  const recieved = import_picocolors5.default.dim(`(recieved: ${JSON.stringify(err.value)})`);
13541
- consola.log(` - ${type} ${err.message} ${recieved}`);
13757
+ wxt.logger.log(` - ${type} ${err.message} ${recieved}`);
13542
13758
  });
13543
13759
  console.log();
13544
13760
  });
@@ -13551,36 +13767,41 @@ async function build(config) {
13551
13767
  }
13552
13768
 
13553
13769
  // src/core/clean.ts
13554
- var import_node_path22 = __toESM(require("path"), 1);
13555
- var import_fast_glob5 = __toESM(require("fast-glob"), 1);
13770
+ var import_node_path25 = __toESM(require("path"), 1);
13771
+ var import_fast_glob6 = __toESM(require("fast-glob"), 1);
13556
13772
  var import_fs_extra15 = __toESM(require("fs-extra"), 1);
13557
13773
  var import_picocolors6 = __toESM(require("picocolors"), 1);
13558
- async function clean(root = process.cwd()) {
13559
- consola.info("Cleaning Project");
13774
+ async function clean(config) {
13775
+ if (typeof config === "string") {
13776
+ config = { root: config };
13777
+ }
13778
+ await registerWxt("build", config);
13779
+ wxt.logger.info("Cleaning Project");
13780
+ const root = wxt.config.root;
13560
13781
  const tempDirs = [
13561
13782
  "node_modules/.vite",
13562
13783
  "node_modules/.cache",
13563
13784
  "**/.wxt",
13564
- ".output/*"
13785
+ `${import_node_path25.default.relative(root, wxt.config.outBaseDir)}/*`
13565
13786
  ];
13566
- consola.debug("Looking for:", tempDirs.map(import_picocolors6.default.cyan).join(", "));
13567
- const directories = await (0, import_fast_glob5.default)(tempDirs, {
13568
- cwd: import_node_path22.default.resolve(root),
13787
+ wxt.logger.debug("Looking for:", tempDirs.map(import_picocolors6.default.cyan).join(", "));
13788
+ const directories = await (0, import_fast_glob6.default)(tempDirs, {
13789
+ cwd: root,
13569
13790
  absolute: true,
13570
13791
  onlyDirectories: true,
13571
13792
  deep: 2
13572
13793
  });
13573
13794
  if (directories.length === 0) {
13574
- consola.debug("No generated files found.");
13795
+ wxt.logger.debug("No generated files found.");
13575
13796
  return;
13576
13797
  }
13577
- consola.debug(
13798
+ wxt.logger.debug(
13578
13799
  "Found:",
13579
- directories.map((dir) => import_picocolors6.default.cyan(import_node_path22.default.relative(root, dir))).join(", ")
13800
+ directories.map((dir) => import_picocolors6.default.cyan(import_node_path25.default.relative(root, dir))).join(", ")
13580
13801
  );
13581
13802
  for (const directory of directories) {
13582
13803
  await import_fs_extra15.default.rm(directory, { force: true, recursive: true });
13583
- consola.debug("Deleted " + import_picocolors6.default.cyan(import_node_path22.default.relative(root, directory)));
13804
+ wxt.logger.debug("Deleted " + import_picocolors6.default.cyan(import_node_path25.default.relative(root, directory)));
13584
13805
  }
13585
13806
  }
13586
13807
 
@@ -13595,12 +13816,12 @@ function defineRunnerConfig(config) {
13595
13816
  }
13596
13817
 
13597
13818
  // src/core/runners/wsl.ts
13598
- var import_node_path23 = require("path");
13819
+ var import_node_path26 = require("path");
13599
13820
  function createWslRunner() {
13600
13821
  return {
13601
13822
  async openBrowser() {
13602
13823
  wxt.logger.warn(
13603
- `Cannot open browser when using WSL. Load "${(0, import_node_path23.relative)(
13824
+ `Cannot open browser when using WSL. Load "${(0, import_node_path26.relative)(
13604
13825
  process.cwd(),
13605
13826
  wxt.config.outDir
13606
13827
  )}" as an unpacked extension manually`
@@ -13687,12 +13908,12 @@ var DEFAULT_CHROMIUM_PREFS = {
13687
13908
  };
13688
13909
 
13689
13910
  // src/core/runners/safari.ts
13690
- var import_node_path24 = require("path");
13911
+ var import_node_path27 = require("path");
13691
13912
  function createSafariRunner() {
13692
13913
  return {
13693
13914
  async openBrowser() {
13694
13915
  wxt.logger.warn(
13695
- `Cannot Safari using web-ext. Load "${(0, import_node_path24.relative)(
13916
+ `Cannot Safari using web-ext. Load "${(0, import_node_path27.relative)(
13696
13917
  process.cwd(),
13697
13918
  wxt.config.outDir
13698
13919
  )}" as an unpacked extension manually`
@@ -13704,12 +13925,12 @@ function createSafariRunner() {
13704
13925
  }
13705
13926
 
13706
13927
  // src/core/runners/manual.ts
13707
- var import_node_path25 = require("path");
13928
+ var import_node_path28 = require("path");
13708
13929
  function createManualRunner() {
13709
13930
  return {
13710
13931
  async openBrowser() {
13711
13932
  wxt.logger.info(
13712
- `Load "${(0, import_node_path25.relative)(
13933
+ `Load "${(0, import_node_path28.relative)(
13713
13934
  process.cwd(),
13714
13935
  wxt.config.outDir
13715
13936
  )}" as an unpacked extension manually`
@@ -13737,7 +13958,7 @@ async function createExtensionRunner() {
13737
13958
  // src/core/create-server.ts
13738
13959
  var import_async_mutex = require("async-mutex");
13739
13960
  var import_picocolors7 = __toESM(require("picocolors"), 1);
13740
- var import_node_path26 = require("path");
13961
+ var import_node_path29 = require("path");
13741
13962
  async function createServer(inlineConfig) {
13742
13963
  await registerWxt("serve", inlineConfig, async (config) => {
13743
13964
  const { port, hostname } = config.dev.server;
@@ -13839,7 +14060,7 @@ function createFileReloader(server) {
13839
14060
  return;
13840
14061
  }
13841
14062
  wxt.logger.info(
13842
- `Changed: ${Array.from(new Set(fileChanges)).map((file) => import_picocolors7.default.dim((0, import_node_path26.relative)(wxt.config.root, file))).join(", ")}`
14063
+ `Changed: ${Array.from(new Set(fileChanges)).map((file) => import_picocolors7.default.dim((0, import_node_path29.relative)(wxt.config.root, file))).join(", ")}`
13843
14064
  );
13844
14065
  const allEntrypoints = await findEntrypoints();
13845
14066
  try {
@@ -13853,19 +14074,19 @@ function createFileReloader(server) {
13853
14074
  switch (changes.type) {
13854
14075
  case "extension-reload":
13855
14076
  server.reloadExtension();
13856
- consola.success(`Reloaded extension`);
14077
+ wxt.logger.success(`Reloaded extension`);
13857
14078
  break;
13858
14079
  case "html-reload":
13859
14080
  const { reloadedNames } = reloadHtmlPages(
13860
14081
  changes.rebuildGroups,
13861
14082
  server
13862
14083
  );
13863
- consola.success(`Reloaded: ${getFilenameList(reloadedNames)}`);
14084
+ wxt.logger.success(`Reloaded: ${getFilenameList(reloadedNames)}`);
13864
14085
  break;
13865
14086
  case "content-script-reload":
13866
14087
  reloadContentScripts(changes.changedSteps, server);
13867
14088
  const rebuiltNames = changes.rebuildGroups.flat().map((entry) => entry.name);
13868
- consola.success(`Reloaded: ${getFilenameList(rebuiltNames)}`);
14089
+ wxt.logger.success(`Reloaded: ${getFilenameList(rebuiltNames)}`);
13869
14090
  break;
13870
14091
  }
13871
14092
  } catch (err) {
@@ -13928,7 +14149,7 @@ function getExternalOutputDependencies(server) {
13928
14149
  var import_prompts = __toESM(require("prompts"), 1);
13929
14150
  var import_giget = require("giget");
13930
14151
  var import_fs_extra16 = __toESM(require("fs-extra"), 1);
13931
- var import_node_path27 = __toESM(require("path"), 1);
14152
+ var import_node_path30 = __toESM(require("path"), 1);
13932
14153
  var import_picocolors8 = __toESM(require("picocolors"), 1);
13933
14154
  async function initialize(options) {
13934
14155
  consola.info("Initalizing new project");
@@ -13980,13 +14201,13 @@ async function initialize(options) {
13980
14201
  const isEmpty = (await import_fs_extra16.default.readdir(input.directory)).length === 0;
13981
14202
  if (!isEmpty) {
13982
14203
  consola.error(
13983
- `The directory ${import_node_path27.default.resolve(input.directory)} is not empty. Aborted.`
14204
+ `The directory ${import_node_path30.default.resolve(input.directory)} is not empty. Aborted.`
13984
14205
  );
13985
14206
  process.exit(1);
13986
14207
  }
13987
14208
  }
13988
14209
  await cloneProject(input);
13989
- const cdPath = import_node_path27.default.relative(process.cwd(), import_node_path27.default.resolve(input.directory));
14210
+ const cdPath = import_node_path30.default.relative(process.cwd(), import_node_path30.default.resolve(input.directory));
13990
14211
  console.log();
13991
14212
  consola.log(
13992
14213
  `\u2728 WXT project created with the ${TEMPLATE_COLORS[input.template.name]?.(input.template.name) ?? input.template.name} template.`
@@ -14029,8 +14250,8 @@ async function cloneProject({
14029
14250
  force: true
14030
14251
  });
14031
14252
  await import_fs_extra16.default.move(
14032
- import_node_path27.default.join(directory, "_gitignore"),
14033
- import_node_path27.default.join(directory, ".gitignore")
14253
+ import_node_path30.default.join(directory, "_gitignore"),
14254
+ import_node_path30.default.join(directory, ".gitignore")
14034
14255
  ).catch(
14035
14256
  (err) => consola.warn("Failed to move _gitignore to .gitignore:", err)
14036
14257
  );
@@ -14062,11 +14283,11 @@ async function prepare(config) {
14062
14283
  }
14063
14284
 
14064
14285
  // src/core/zip.ts
14065
- var import_node_path28 = __toESM(require("path"), 1);
14286
+ var import_node_path31 = __toESM(require("path"), 1);
14066
14287
  var import_fs_extra17 = __toESM(require("fs-extra"), 1);
14067
14288
  var import_minimatch2 = require("minimatch");
14068
14289
  var import_jszip = __toESM(require("jszip"), 1);
14069
- var import_fast_glob6 = __toESM(require("fast-glob"), 1);
14290
+ var import_fast_glob7 = __toESM(require("fast-glob"), 1);
14070
14291
  async function zip(config) {
14071
14292
  await registerWxt("build", config);
14072
14293
  const output = await internalBuild();
@@ -14074,7 +14295,7 @@ async function zip(config) {
14074
14295
  wxt.logger.info("Zipping extension...");
14075
14296
  const zipFiles = [];
14076
14297
  const projectName = wxt.config.zip.name ?? kebabCaseAlphanumeric(
14077
- (await getPackageJson())?.name || import_node_path28.default.dirname(process.cwd())
14298
+ (await getPackageJson())?.name || import_node_path31.default.dirname(process.cwd())
14078
14299
  );
14079
14300
  const applyTemplate = (template) => template.replaceAll("{{name}}", projectName).replaceAll("{{browser}}", wxt.config.browser).replaceAll(
14080
14301
  "{{version}}",
@@ -14082,13 +14303,13 @@ async function zip(config) {
14082
14303
  ).replaceAll("{{mode}}", wxt.config.mode).replaceAll("{{manifestVersion}}", `mv${wxt.config.manifestVersion}`);
14083
14304
  await import_fs_extra17.default.ensureDir(wxt.config.outBaseDir);
14084
14305
  const outZipFilename = applyTemplate(wxt.config.zip.artifactTemplate);
14085
- const outZipPath = import_node_path28.default.resolve(wxt.config.outBaseDir, outZipFilename);
14306
+ const outZipPath = import_node_path31.default.resolve(wxt.config.outBaseDir, outZipFilename);
14086
14307
  await zipDir(wxt.config.outDir, outZipPath);
14087
14308
  zipFiles.push(outZipPath);
14088
14309
  if (wxt.config.browser === "firefox") {
14089
14310
  const { overrides, files: downloadedPackages } = await downloadPrivatePackages();
14090
14311
  const sourcesZipFilename = applyTemplate(wxt.config.zip.sourcesTemplate);
14091
- const sourcesZipPath = import_node_path28.default.resolve(
14312
+ const sourcesZipPath = import_node_path31.default.resolve(
14092
14313
  wxt.config.outBaseDir,
14093
14314
  sourcesZipFilename
14094
14315
  );
@@ -14114,7 +14335,7 @@ async function zip(config) {
14114
14335
  }
14115
14336
  async function zipDir(directory, outputPath, options) {
14116
14337
  const archive = new import_jszip.default();
14117
- const files = (await (0, import_fast_glob6.default)("**/*", {
14338
+ const files = (await (0, import_fast_glob7.default)("**/*", {
14118
14339
  cwd: directory,
14119
14340
  // Ignore node_modules, otherwise this glob step takes forever
14120
14341
  ignore: ["**/node_modules"],
@@ -14127,11 +14348,11 @@ async function zipDir(directory, outputPath, options) {
14127
14348
  const filesToZip = [
14128
14349
  ...files,
14129
14350
  ...(options?.additionalFiles ?? []).map(
14130
- (file) => import_node_path28.default.relative(directory, file)
14351
+ (file) => import_node_path31.default.relative(directory, file)
14131
14352
  )
14132
14353
  ];
14133
14354
  for (const file of filesToZip) {
14134
- const absolutePath = import_node_path28.default.resolve(directory, file);
14355
+ const absolutePath = import_node_path31.default.resolve(directory, file);
14135
14356
  if (file.endsWith(".json")) {
14136
14357
  const content = await import_fs_extra17.default.readFile(absolutePath, "utf-8");
14137
14358
  archive.file(
@@ -14180,14 +14401,14 @@ async function downloadPrivatePackages() {
14180
14401
  }
14181
14402
  function addOverridesToPackageJson(absolutePackageJsonPath, content, overrides) {
14182
14403
  if (Object.keys(overrides).length === 0) return content;
14183
- const packageJsonDir = import_node_path28.default.dirname(absolutePackageJsonPath);
14404
+ const packageJsonDir = import_node_path31.default.dirname(absolutePackageJsonPath);
14184
14405
  const oldPackage = JSON.parse(content);
14185
14406
  const newPackage = {
14186
14407
  ...oldPackage,
14187
14408
  [wxt.pm.overridesKey]: { ...oldPackage[wxt.pm.overridesKey] }
14188
14409
  };
14189
14410
  Object.entries(overrides).forEach(([key, absolutePath]) => {
14190
- newPackage[wxt.pm.overridesKey][key] = "file://./" + normalizePath(import_node_path28.default.relative(packageJsonDir, absolutePath));
14411
+ newPackage[wxt.pm.overridesKey][key] = "file://./" + normalizePath(import_node_path31.default.relative(packageJsonDir, absolutePath));
14191
14412
  });
14192
14413
  return JSON.stringify(newPackage, null, 2);
14193
14414
  }