create-tamagui 1.110.3 → 1.110.5

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.js CHANGED
@@ -1007,8 +1007,8 @@ var require_source = __commonJS({
1007
1007
  // ../../../node_modules/commander/index.js
1008
1008
  var require_commander = __commonJS({
1009
1009
  "../../../node_modules/commander/index.js"(exports2, module2) {
1010
- var EventEmitter3 = require("events").EventEmitter, spawn2 = require("child_process").spawn, path6 = require("path"), dirname = path6.dirname, basename2 = path6.basename, fs7 = require("fs");
1011
- require("util").inherits(Command, EventEmitter3);
1010
+ var EventEmitter2 = require("events").EventEmitter, spawn2 = require("child_process").spawn, path6 = require("path"), dirname = path6.dirname, basename2 = path6.basename, fs7 = require("fs");
1011
+ require("util").inherits(Command, EventEmitter2);
1012
1012
  exports2 = module2.exports = new Command();
1013
1013
  exports2.Command = Command;
1014
1014
  exports2.Option = Option;
@@ -1100,16 +1100,16 @@ var require_commander = __commonJS({
1100
1100
  baseDir = dirname(resolvedLink);
1101
1101
  var localBin = path6.join(baseDir, bin), isExplicitJS = !1;
1102
1102
  exists(localBin + ".js") ? (bin = localBin + ".js", isExplicitJS = !0) : exists(localBin + ".ts") ? (bin = localBin + ".ts", isExplicitJS = !0) : exists(localBin) && (bin = localBin), args = args.slice(1);
1103
- var proc3;
1104
- process.platform !== "win32" ? isExplicitJS ? (args.unshift(bin), args = (process.execArgv || []).concat(args), proc3 = spawn2(process.argv[0], args, { stdio: "inherit", customFds: [0, 1, 2] })) : proc3 = spawn2(bin, args, { stdio: "inherit", customFds: [0, 1, 2] }) : (args.unshift(bin), proc3 = spawn2(process.execPath, args, { stdio: "inherit" }));
1103
+ var proc2;
1104
+ process.platform !== "win32" ? isExplicitJS ? (args.unshift(bin), args = (process.execArgv || []).concat(args), proc2 = spawn2(process.argv[0], args, { stdio: "inherit", customFds: [0, 1, 2] })) : proc2 = spawn2(bin, args, { stdio: "inherit", customFds: [0, 1, 2] }) : (args.unshift(bin), proc2 = spawn2(process.execPath, args, { stdio: "inherit" }));
1105
1105
  var signals = ["SIGUSR1", "SIGUSR2", "SIGTERM", "SIGINT", "SIGHUP"];
1106
1106
  signals.forEach(function(signal) {
1107
1107
  process.on(signal, function() {
1108
- proc3.killed === !1 && proc3.exitCode === null && proc3.kill(signal);
1108
+ proc2.killed === !1 && proc2.exitCode === null && proc2.kill(signal);
1109
1109
  });
1110
- }), proc3.on("close", process.exit.bind(process)), proc3.on("error", function(err) {
1110
+ }), proc2.on("close", process.exit.bind(process)), proc2.on("error", function(err) {
1111
1111
  err.code === "ENOENT" ? console.error("error: %s(1) does not exist, try --help", bin) : err.code === "EACCES" && console.error("error: %s(1) not executable. try chmod or run with root", bin), process.exit(1);
1112
- }), this.runningCommand = proc3;
1112
+ }), this.runningCommand = proc2;
1113
1113
  };
1114
1114
  Command.prototype.normalize = function(args) {
1115
1115
  for (var ret = [], arg, lastOpt, index, i = 0, len = args.length; i < len; ++i)
@@ -2349,12 +2349,12 @@ var require_kill = __commonJS({
2349
2349
  var require_is_stream = __commonJS({
2350
2350
  "../../../node_modules/is-stream/index.js"(exports2, module2) {
2351
2351
  "use strict";
2352
- var isStream3 = (stream2) => stream2 !== null && typeof stream2 == "object" && typeof stream2.pipe == "function";
2353
- isStream3.writable = (stream2) => isStream3(stream2) && stream2.writable !== !1 && typeof stream2._write == "function" && typeof stream2._writableState == "object";
2354
- isStream3.readable = (stream2) => isStream3(stream2) && stream2.readable !== !1 && typeof stream2._read == "function" && typeof stream2._readableState == "object";
2355
- isStream3.duplex = (stream2) => isStream3.writable(stream2) && isStream3.readable(stream2);
2356
- isStream3.transform = (stream2) => isStream3.duplex(stream2) && typeof stream2._transform == "function";
2357
- module2.exports = isStream3;
2352
+ var isStream2 = (stream2) => stream2 !== null && typeof stream2 == "object" && typeof stream2.pipe == "function";
2353
+ isStream2.writable = (stream2) => isStream2(stream2) && stream2.writable !== !1 && typeof stream2._write == "function" && typeof stream2._writableState == "object";
2354
+ isStream2.readable = (stream2) => isStream2(stream2) && stream2.readable !== !1 && typeof stream2._read == "function" && typeof stream2._readableState == "object";
2355
+ isStream2.duplex = (stream2) => isStream2.writable(stream2) && isStream2.readable(stream2);
2356
+ isStream2.transform = (stream2) => isStream2.duplex(stream2) && typeof stream2._transform == "function";
2357
+ module2.exports = isStream2;
2358
2358
  }
2359
2359
  });
2360
2360
 
@@ -2443,8 +2443,8 @@ var require_merge_stream = __commonJS({
2443
2443
  var require_stream = __commonJS({
2444
2444
  "../../../node_modules/execa/lib/stream.js"(exports2, module2) {
2445
2445
  "use strict";
2446
- var isStream3 = require_is_stream(), getStream = require_get_stream(), mergeStream = require_merge_stream(), handleInput = (spawned, input) => {
2447
- input === void 0 || spawned.stdin === void 0 || (isStream3(input) ? input.pipe(spawned.stdin) : spawned.stdin.end(input));
2446
+ var isStream2 = require_is_stream(), getStream = require_get_stream(), mergeStream = require_merge_stream(), handleInput = (spawned, input) => {
2447
+ input === void 0 || spawned.stdin === void 0 || (isStream2(input) ? input.pipe(spawned.stdin) : spawned.stdin.end(input));
2448
2448
  }, makeAllStream = (spawned, { all }) => {
2449
2449
  if (!all || !spawned.stdout && !spawned.stderr)
2450
2450
  return;
@@ -2475,7 +2475,7 @@ var require_stream = __commonJS({
2475
2475
  ]);
2476
2476
  }
2477
2477
  }, validateInputSync = ({ input }) => {
2478
- if (isStream3(input))
2478
+ if (isStream2(input))
2479
2479
  throw new TypeError("The `input` option cannot be a stream in sync mode");
2480
2480
  };
2481
2481
  module2.exports = {
@@ -2715,11 +2715,7 @@ var require_universalify = __commonJS({
2715
2715
  if (typeof args[args.length - 1] == "function") fn.apply(this, args);
2716
2716
  else
2717
2717
  return new Promise((resolve7, reject) => {
2718
- fn.call(
2719
- this,
2720
- ...args,
2721
- (err, res) => err != null ? reject(err) : resolve7(res)
2722
- );
2718
+ args.push((err, res) => err != null ? reject(err) : resolve7(res)), fn.apply(this, args);
2723
2719
  });
2724
2720
  }, "name", { value: fn.name });
2725
2721
  };
@@ -2727,7 +2723,7 @@ var require_universalify = __commonJS({
2727
2723
  return Object.defineProperty(function(...args) {
2728
2724
  let cb = args[args.length - 1];
2729
2725
  if (typeof cb != "function") return fn.apply(this, args);
2730
- fn.apply(this, args.slice(0, -1)).then((r) => cb(null, r), cb);
2726
+ args.pop(), fn.apply(this, args).then((r) => cb(null, r), cb);
2731
2727
  }, "name", { value: fn.name });
2732
2728
  };
2733
2729
  }
@@ -2926,7 +2922,7 @@ var require_polyfills = __commonJS({
2926
2922
  // ../../../node_modules/graceful-fs/legacy-streams.js
2927
2923
  var require_legacy_streams = __commonJS({
2928
2924
  "../../../node_modules/graceful-fs/legacy-streams.js"(exports2, module2) {
2929
- var Stream3 = require("stream").Stream;
2925
+ var Stream2 = require("stream").Stream;
2930
2926
  module2.exports = legacy;
2931
2927
  function legacy(fs7) {
2932
2928
  return {
@@ -2935,7 +2931,7 @@ var require_legacy_streams = __commonJS({
2935
2931
  };
2936
2932
  function ReadStream(path6, options) {
2937
2933
  if (!(this instanceof ReadStream)) return new ReadStream(path6, options);
2938
- Stream3.call(this);
2934
+ Stream2.call(this);
2939
2935
  var self = this;
2940
2936
  this.path = path6, this.fd = null, this.readable = !0, this.paused = !1, this.flags = "r", this.mode = 438, this.bufferSize = 64 * 1024, options = options || {};
2941
2937
  for (var keys = Object.keys(options), index = 0, length = keys.length; index < length; index++) {
@@ -2969,7 +2965,7 @@ var require_legacy_streams = __commonJS({
2969
2965
  }
2970
2966
  function WriteStream(path6, options) {
2971
2967
  if (!(this instanceof WriteStream)) return new WriteStream(path6, options);
2972
- Stream3.call(this), this.path = path6, this.fd = null, this.writable = !0, this.flags = "w", this.encoding = "binary", this.mode = 438, this.bytesWritten = 0, options = options || {};
2968
+ Stream2.call(this), this.path = path6, this.fd = null, this.writable = !0, this.flags = "w", this.encoding = "binary", this.mode = 438, this.bytesWritten = 0, options = options || {};
2973
2969
  for (var keys = Object.keys(options), index = 0, length = keys.length; index < length; index++) {
2974
2970
  var key = keys[index];
2975
2971
  this[key] = options[key];
@@ -4027,8 +4023,8 @@ var require_utils2 = __commonJS({
4027
4023
  "../../../node_modules/jsonfile/utils.js"(exports2, module2) {
4028
4024
  function stringify(obj, { EOL = `
4029
4025
  `, finalEOL = !0, replacer = null, spaces } = {}) {
4030
- let EOF3 = finalEOL ? EOL : "";
4031
- return JSON.stringify(obj, replacer, spaces).replace(/\n/g, EOL) + EOF3;
4026
+ let EOF2 = finalEOL ? EOL : "";
4027
+ return JSON.stringify(obj, replacer, spaces).replace(/\n/g, EOL) + EOF2;
4032
4028
  }
4033
4029
  function stripBom(content) {
4034
4030
  return Buffer.isBuffer(content) && (content = content.toString("utf8")), content.replace(/^\uFEFF/, "");
@@ -4561,7 +4557,7 @@ var require_util2 = __commonJS({
4561
4557
  var require_prompt = __commonJS({
4562
4558
  "../../../node_modules/prompts/dist/elements/prompt.js"(exports2, module2) {
4563
4559
  "use strict";
4564
- var readline = require("readline"), _require = require_util2(), action = _require.action, EventEmitter3 = require("events"), _require2 = require_src(), beep = _require2.beep, cursor = _require2.cursor, color = require_kleur(), Prompt = class extends EventEmitter3 {
4560
+ var readline = require("readline"), _require = require_util2(), action = _require.action, EventEmitter2 = require("events"), _require2 = require_src(), beep = _require2.beep, cursor = _require2.cursor, color = require_kleur(), Prompt = class extends EventEmitter2 {
4565
4561
  constructor(opts = {}) {
4566
4562
  super(), this.firstRender = !0, this.in = opts.in || process.stdin, this.out = opts.out || process.stdout, this.onRender = (opts.onRender || (() => {
4567
4563
  })).bind(this);
@@ -6065,7 +6061,7 @@ var require_util3 = __commonJS({
6065
6061
  var require_prompt2 = __commonJS({
6066
6062
  "../../../node_modules/prompts/lib/elements/prompt.js"(exports2, module2) {
6067
6063
  "use strict";
6068
- var readline = require("readline"), { action } = require_util3(), EventEmitter3 = require("events"), { beep, cursor } = require_src(), color = require_kleur(), Prompt = class extends EventEmitter3 {
6064
+ var readline = require("readline"), { action } = require_util3(), EventEmitter2 = require("events"), { beep, cursor } = require_src(), color = require_kleur(), Prompt = class extends EventEmitter2 {
6069
6065
  constructor(opts = {}) {
6070
6066
  super(), this.firstRender = !0, this.in = opts.in || process.stdin, this.out = opts.out || process.stdout, this.onRender = (opts.onRender || (() => {
6071
6067
  })).bind(this);
@@ -7303,7 +7299,7 @@ var require_lib3 = __commonJS({
7303
7299
  "").split(optDelimiter)
7304
7300
  ];
7305
7301
  if (isWindows) {
7306
- let pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter), pathExt = pathExtExe.split(optDelimiter);
7302
+ let pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter), pathExt = pathExtExe.split(optDelimiter).reduce((acc, item) => (acc.push(item), acc.push(item.toLowerCase()), acc), []);
7307
7303
  return cmd.includes(".") && pathExt[0] !== "" && pathExt.unshift(""), { pathEnv, pathExt, pathExtExe };
7308
7304
  }
7309
7305
  return { pathEnv, pathExt: [""] };
@@ -7355,7 +7351,7 @@ var require_lib3 = __commonJS({
7355
7351
  // ../../../node_modules/through/index.js
7356
7352
  var require_through = __commonJS({
7357
7353
  "../../../node_modules/through/index.js"(exports2, module2) {
7358
- var Stream3 = require("stream");
7354
+ var Stream2 = require("stream");
7359
7355
  exports2 = module2.exports = through;
7360
7356
  through.through = through;
7361
7357
  function through(write, end, opts) {
@@ -7364,7 +7360,7 @@ var require_through = __commonJS({
7364
7360
  }, end = end || function() {
7365
7361
  this.queue(null);
7366
7362
  };
7367
- var ended = !1, destroyed = !1, buffer = [], _ended = !1, stream2 = new Stream3();
7363
+ var ended = !1, destroyed = !1, buffer = [], _ended = !1, stream2 = new Stream2();
7368
7364
  stream2.readable = stream2.writable = !0, stream2.paused = !1, stream2.autoDestroy = !(opts && opts.autoDestroy === !1), stream2.write = function(data) {
7369
7365
  return write.call(this, data), !stream2.paused;
7370
7366
  };
@@ -7406,7 +7402,7 @@ var require_through = __commonJS({
7406
7402
  var require_from = __commonJS({
7407
7403
  "../../../node_modules/from/index.js"(exports2, module2) {
7408
7404
  "use strict";
7409
- var Stream3 = require("stream");
7405
+ var Stream2 = require("stream");
7410
7406
  module2.exports = function from(source) {
7411
7407
  if (Array.isArray(source)) {
7412
7408
  var source_index = 0, source_len = source.length;
@@ -7414,7 +7410,7 @@ var require_from = __commonJS({
7414
7410
  return source_index < source_len ? this.emit("data", source[source_index++]) : this.emit("end"), !0;
7415
7411
  });
7416
7412
  }
7417
- var s = new Stream3(), i = 0;
7413
+ var s = new Stream2(), i = 0;
7418
7414
  s.ended = !1, s.started = !1, s.readable = !0, s.writable = !1, s.paused = !1, s.ended = !1, s.pause = function() {
7419
7415
  s.started = !0, s.paused = !0;
7420
7416
  };
@@ -7441,7 +7437,7 @@ var require_from = __commonJS({
7441
7437
  // ../../../node_modules/duplexer/index.js
7442
7438
  var require_duplexer = __commonJS({
7443
7439
  "../../../node_modules/duplexer/index.js"(exports2, module2) {
7444
- var Stream3 = require("stream"), writeMethods = ["write", "end", "destroy"], readMethods = ["resume", "pause"], readEvents = ["data", "close"], slice = Array.prototype.slice;
7440
+ var Stream2 = require("stream"), writeMethods = ["write", "end", "destroy"], readMethods = ["resume", "pause"], readEvents = ["data", "close"], slice = Array.prototype.slice;
7445
7441
  module2.exports = duplex;
7446
7442
  function forEach(arr, fn) {
7447
7443
  if (arr.forEach)
@@ -7450,7 +7446,7 @@ var require_duplexer = __commonJS({
7450
7446
  fn(arr[i], i);
7451
7447
  }
7452
7448
  function duplex(writer, reader) {
7453
- var stream2 = new Stream3(), ended = !1;
7449
+ var stream2 = new Stream2(), ended = !1;
7454
7450
  return forEach(writeMethods, proxyWriter), forEach(readMethods, proxyReader), forEach(readEvents, proxyStream), reader.on("end", handleEnd), writer.on("drain", function() {
7455
7451
  stream2.emit("drain");
7456
7452
  }), writer.on("error", reemit), reader.on("error", reemit), stream2.writable = writer.writable, stream2.readable = reader.readable, stream2;
@@ -7494,9 +7490,9 @@ var require_duplexer = __commonJS({
7494
7490
  // ../../../node_modules/map-stream/index.js
7495
7491
  var require_map_stream = __commonJS({
7496
7492
  "../../../node_modules/map-stream/index.js"(exports2, module2) {
7497
- var Stream3 = require("stream").Stream;
7493
+ var Stream2 = require("stream").Stream;
7498
7494
  module2.exports = function(mapper, opts) {
7499
- var stream2 = new Stream3(), self = this, inputs = 0, outputs = 0, ended = !1, paused = !1, destroyed = !1, lastWritten = 0, inNext = !1;
7495
+ var stream2 = new Stream2(), self = this, inputs = 0, outputs = 0, ended = !1, paused = !1, destroyed = !1, lastWritten = 0, inNext = !1;
7500
7496
  this.opts = opts || {};
7501
7497
  var errorEventName = this.opts.failures ? "failure" : "error", writeQueue = {};
7502
7498
  stream2.writable = !0, stream2.readable = !0;
@@ -7622,8 +7618,8 @@ var require_stream_combiner = __commonJS({
7622
7618
  // ../../../node_modules/event-stream/index.js
7623
7619
  var require_event_stream = __commonJS({
7624
7620
  "../../../node_modules/event-stream/index.js"(exports2) {
7625
- var Stream3 = require("stream").Stream, es = exports2, through = require_through(), from = require_from(), duplex = require_duplexer(), map = require_map_stream(), pause = require_pause_stream(), split = require_split(), pipeline = require_stream_combiner(), immediately = global.setImmediate || process.nextTick;
7626
- es.Stream = Stream3;
7621
+ var Stream2 = require("stream").Stream, es = exports2, through = require_through(), from = require_from(), duplex = require_duplexer(), map = require_map_stream(), pause = require_pause_stream(), split = require_split(), pipeline = require_stream_combiner(), immediately = global.setImmediate || process.nextTick;
7622
+ es.Stream = Stream2;
7627
7623
  es.through = through;
7628
7624
  es.from = from;
7629
7625
  es.duplex = duplex;
@@ -7635,7 +7631,7 @@ var require_event_stream = __commonJS({
7635
7631
  es.merge = function() {
7636
7632
  var toMerge = [].slice.call(arguments);
7637
7633
  toMerge.length === 1 && toMerge[0] instanceof Array && (toMerge = toMerge[0]);
7638
- var stream2 = new Stream3();
7634
+ var stream2 = new Stream2();
7639
7635
  stream2.setMaxListeners(0);
7640
7636
  var endCount = 0;
7641
7637
  return stream2.writable = stream2.readable = !0, toMerge.length ? toMerge.forEach(function(e) {
@@ -7657,7 +7653,7 @@ var require_event_stream = __commonJS({
7657
7653
  es.writeArray = function(done) {
7658
7654
  if (typeof done != "function")
7659
7655
  throw new Error("function writeArray (done): done must be function");
7660
- var a = new Stream3(), array = [], isDone = !1;
7656
+ var a = new Stream2(), array = [], isDone = !1;
7661
7657
  return a.write = function(l) {
7662
7658
  array.push(l);
7663
7659
  }, a.end = function() {
@@ -7667,7 +7663,7 @@ var require_event_stream = __commonJS({
7667
7663
  }, a;
7668
7664
  };
7669
7665
  es.readArray = function(array) {
7670
- var stream2 = new Stream3(), i = 0, paused = !1, ended = !1;
7666
+ var stream2 = new Stream2(), i = 0, paused = !1, ended = !1;
7671
7667
  if (stream2.readable = !0, stream2.writable = !1, !Array.isArray(array))
7672
7668
  throw new Error("event-stream.read expects an array");
7673
7669
  return stream2.resume = function() {
@@ -7684,7 +7680,7 @@ var require_event_stream = __commonJS({
7684
7680
  }, stream2;
7685
7681
  };
7686
7682
  es.readable = function(func, continueOnError) {
7687
- var stream2 = new Stream3(), i = 0, paused = !1, ended = !1, reading = !1;
7683
+ var stream2 = new Stream2(), i = 0, paused = !1, ended = !1, reading = !1;
7688
7684
  if (stream2.readable = !0, stream2.writable = !1, typeof func != "function")
7689
7685
  throw new Error("event-stream.readable expects async function");
7690
7686
  stream2.on("end", function() {
@@ -7803,8 +7799,8 @@ var require_ps_tree = __commonJS({
7803
7799
  }),
7804
7800
  es.writeArray(function(err, ps) {
7805
7801
  var parents = {}, children = [];
7806
- parents[pid] = !0, ps.forEach(function(proc3) {
7807
- parents[proc3.PPID] && (parents[proc3.PID] = !0, children.push(proc3));
7802
+ parents[pid] = !0, ps.forEach(function(proc2) {
7803
+ parents[proc2.PPID] && (parents[proc2.PID] = !0, children.push(proc2));
7808
7804
  }), callback(null, children);
7809
7805
  })
7810
7806
  ).on("error", callback);
@@ -7832,7 +7828,7 @@ var require_ps_tree = __commonJS({
7832
7828
  var require_merge2 = __commonJS({
7833
7829
  "../../../node_modules/merge2/index.js"(exports2, module2) {
7834
7830
  "use strict";
7835
- var Stream3 = require("stream"), PassThrough = Stream3.PassThrough, slice = Array.prototype.slice;
7831
+ var Stream2 = require("stream"), PassThrough = Stream2.PassThrough, slice = Array.prototype.slice;
7836
7832
  module2.exports = merge22;
7837
7833
  function merge22() {
7838
7834
  let streamsQueue = [], args = slice.call(arguments), merging = !1, options = args[args.length - 1];
@@ -9676,7 +9672,10 @@ var require_picomatch2 = __commonJS({
9676
9672
  var require_micromatch = __commonJS({
9677
9673
  "../../../node_modules/micromatch/index.js"(exports2, module2) {
9678
9674
  "use strict";
9679
- var util = require("util"), braces = require_braces(), picomatch = require_picomatch2(), utils = require_utils4(), isEmptyString = (val) => val === "" || val === "./", micromatch = (list, patterns, options) => {
9675
+ var util = require("util"), braces = require_braces(), picomatch = require_picomatch2(), utils = require_utils4(), isEmptyString = (v) => v === "" || v === "./", hasBraces = (v) => {
9676
+ let index = v.indexOf("{");
9677
+ return index > -1 && v.indexOf("}", index) > -1;
9678
+ }, micromatch = (list, patterns, options) => {
9680
9679
  patterns = [].concat(patterns), list = [].concat(list);
9681
9680
  let omit = /* @__PURE__ */ new Set(), keep = /* @__PURE__ */ new Set(), items = /* @__PURE__ */ new Set(), negatives = 0, onResult = (state) => {
9682
9681
  items.add(state.output), options && options.onResult && options.onResult(state);
@@ -9770,12 +9769,13 @@ var require_micromatch = __commonJS({
9770
9769
  };
9771
9770
  micromatch.braces = (pattern, options) => {
9772
9771
  if (typeof pattern != "string") throw new TypeError("Expected a string");
9773
- return options && options.nobrace === !0 || !/\{.*\}/.test(pattern) ? [pattern] : braces(pattern, options);
9772
+ return options && options.nobrace === !0 || !hasBraces(pattern) ? [pattern] : braces(pattern, options);
9774
9773
  };
9775
9774
  micromatch.braceExpand = (pattern, options) => {
9776
9775
  if (typeof pattern != "string") throw new TypeError("Expected a string");
9777
9776
  return micromatch.braces(pattern, { ...options, expand: !0 });
9778
9777
  };
9778
+ micromatch.hasBraces = hasBraces;
9779
9779
  module2.exports = micromatch;
9780
9780
  }
9781
9781
  });
@@ -10480,16 +10480,25 @@ var require_queue = __commonJS({
10480
10480
  "../../../node_modules/fastq/queue.js"(exports2, module2) {
10481
10481
  "use strict";
10482
10482
  var reusify = require_reusify();
10483
- function fastqueue(context, worker, concurrency) {
10484
- if (typeof context == "function" && (concurrency = worker, worker = context, context = null), concurrency < 1)
10485
- throw new Error("fastqueue concurrency must be greater than 1");
10483
+ function fastqueue(context, worker, _concurrency) {
10484
+ if (typeof context == "function" && (_concurrency = worker, worker = context, context = null), !(_concurrency >= 1))
10485
+ throw new Error("fastqueue concurrency must be equal to or greater than 1");
10486
10486
  var cache2 = reusify(Task), queueHead = null, queueTail = null, _running = 0, errorHandler = null, self = {
10487
10487
  push,
10488
10488
  drain: noop2,
10489
10489
  saturated: noop2,
10490
10490
  pause,
10491
10491
  paused: !1,
10492
- concurrency,
10492
+ get concurrency() {
10493
+ return _concurrency;
10494
+ },
10495
+ set concurrency(value) {
10496
+ if (!(value >= 1))
10497
+ throw new Error("fastqueue concurrency must be equal to or greater than 1");
10498
+ if (_concurrency = value, !self.paused)
10499
+ for (; queueHead && _running < _concurrency; )
10500
+ _running++, release();
10501
+ },
10493
10502
  running,
10494
10503
  resume,
10495
10504
  idle,
@@ -10520,8 +10529,11 @@ var require_queue = __commonJS({
10520
10529
  }
10521
10530
  function resume() {
10522
10531
  if (self.paused) {
10523
- self.paused = !1;
10524
- for (var i = 0; i < self.concurrency; i++)
10532
+ if (self.paused = !1, queueHead === null) {
10533
+ _running++, release();
10534
+ return;
10535
+ }
10536
+ for (; queueHead && _running < _concurrency; )
10525
10537
  _running++, release();
10526
10538
  }
10527
10539
  }
@@ -10530,16 +10542,16 @@ var require_queue = __commonJS({
10530
10542
  }
10531
10543
  function push(value, done) {
10532
10544
  var current = cache2.get();
10533
- current.context = context, current.release = release, current.value = value, current.callback = done || noop2, current.errorHandler = errorHandler, _running === self.concurrency || self.paused ? queueTail ? (queueTail.next = current, queueTail = current) : (queueHead = current, queueTail = current, self.saturated()) : (_running++, worker.call(context, current.value, current.worked));
10545
+ current.context = context, current.release = release, current.value = value, current.callback = done || noop2, current.errorHandler = errorHandler, _running >= _concurrency || self.paused ? queueTail ? (queueTail.next = current, queueTail = current) : (queueHead = current, queueTail = current, self.saturated()) : (_running++, worker.call(context, current.value, current.worked));
10534
10546
  }
10535
10547
  function unshift(value, done) {
10536
10548
  var current = cache2.get();
10537
- current.context = context, current.release = release, current.value = value, current.callback = done || noop2, _running === self.concurrency || self.paused ? queueHead ? (current.next = queueHead, queueHead = current) : (queueHead = current, queueTail = current, self.saturated()) : (_running++, worker.call(context, current.value, current.worked));
10549
+ current.context = context, current.release = release, current.value = value, current.callback = done || noop2, current.errorHandler = errorHandler, _running >= _concurrency || self.paused ? queueHead ? (current.next = queueHead, queueHead = current) : (queueHead = current, queueTail = current, self.saturated()) : (_running++, worker.call(context, current.value, current.worked));
10538
10550
  }
10539
10551
  function release(holder) {
10540
10552
  holder && cache2.release(holder);
10541
10553
  var next = queueHead;
10542
- next ? self.paused ? _running-- : (queueTail === queueHead && (queueTail = null), queueHead = next.next, next.next = null, worker.call(context, next.value, next.worked), queueTail === null && self.empty()) : --_running === 0 && self.drain();
10554
+ next && _running <= _concurrency ? self.paused ? _running-- : (queueTail === queueHead && (queueTail = null), queueHead = next.next, next.next = null, worker.call(context, next.value, next.worked), queueTail === null && self.empty()) : --_running === 0 && self.drain();
10543
10555
  }
10544
10556
  function kill() {
10545
10557
  queueHead = null, queueTail = null, self.drain = noop2;
@@ -10561,14 +10573,14 @@ var require_queue = __commonJS({
10561
10573
  self.value = null, self.callback = noop2, self.errorHandler && errorHandler(err, val), callback.call(self.context, err, result), self.release(self);
10562
10574
  };
10563
10575
  }
10564
- function queueAsPromised(context, worker, concurrency) {
10565
- typeof context == "function" && (concurrency = worker, worker = context, context = null);
10576
+ function queueAsPromised(context, worker, _concurrency) {
10577
+ typeof context == "function" && (_concurrency = worker, worker = context, context = null);
10566
10578
  function asyncWrapper(arg, cb) {
10567
10579
  worker.call(this, arg).then(function(res) {
10568
10580
  cb(null, res);
10569
10581
  }, cb);
10570
10582
  }
10571
- var queue = fastqueue(context, asyncWrapper, concurrency), pushCb = queue.push, unshiftCb = queue.unshift;
10583
+ var queue = fastqueue(context, asyncWrapper, _concurrency), pushCb = queue.push, unshiftCb = queue.unshift;
10572
10584
  return queue.push = push, queue.unshift = unshift, queue.drained = drained, queue;
10573
10585
  function push(value) {
10574
10586
  var p = new Promise(function(resolve7, reject) {
@@ -11531,18 +11543,32 @@ var require_ignore = __commonJS({
11531
11543
  let { length } = slashes;
11532
11544
  return slashes.slice(0, length - length % 2);
11533
11545
  }, REPLACERS = [
11546
+ [
11547
+ // remove BOM
11548
+ // TODO:
11549
+ // Other similar zero-width characters?
11550
+ /^\uFEFF/,
11551
+ () => EMPTY
11552
+ ],
11534
11553
  // > Trailing spaces are ignored unless they are quoted with backslash ("\")
11535
11554
  [
11536
11555
  // (a\ ) -> (a )
11537
11556
  // (a ) -> (a)
11557
+ // (a ) -> (a)
11538
11558
  // (a \ ) -> (a )
11539
- /\\?\s+$/,
11540
- (match2) => match2.indexOf("\\") === 0 ? SPACE : EMPTY
11559
+ /((?:\\\\)*?)(\\?\s+)$/,
11560
+ (_, m1, m2) => m1 + (m2.indexOf("\\") === 0 ? SPACE : EMPTY)
11541
11561
  ],
11542
11562
  // replace (\ ) with ' '
11563
+ // (\ ) -> ' '
11564
+ // (\\ ) -> '\\ '
11565
+ // (\\\ ) -> '\\ '
11543
11566
  [
11544
- /\\\s/g,
11545
- () => SPACE
11567
+ /(\\+?)\s/g,
11568
+ (_, m1) => {
11569
+ let { length } = m1;
11570
+ return m1.slice(0, length - length % 2) + SPACE;
11571
+ }
11546
11572
  ],
11547
11573
  // Escape metacharacters
11548
11574
  // which is written down by users but means special for regular expressions.
@@ -11671,7 +11697,7 @@ var require_ignore = __commonJS({
11671
11697
  ], regexCache = /* @__PURE__ */ Object.create(null), makeRegex = (pattern, ignoreCase) => {
11672
11698
  let source = regexCache[pattern];
11673
11699
  return source || (source = REPLACERS.reduce(
11674
- (prev, current) => prev.replace(current[0], current[1].bind(pattern)),
11700
+ (prev, [matcher, replacer]) => prev.replace(matcher, replacer.bind(pattern)),
11675
11701
  pattern
11676
11702
  ), regexCache[pattern] = source), ignoreCase ? new RegExp(source, "i") : new RegExp(source);
11677
11703
  }, isString2 = (subject) => typeof subject == "string", checkPattern = (pattern) => pattern && isString2(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0, splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF), IgnoreRule = class {
@@ -12644,7 +12670,6 @@ var require_Collection = __commonJS({
12644
12670
  }
12645
12671
  }
12646
12672
  };
12647
- Collection.maxFlowStringSingleLineLength = 60;
12648
12673
  exports2.Collection = Collection;
12649
12674
  exports2.collectionFromPath = collectionFromPath;
12650
12675
  exports2.isEmptyPath = isEmptyPath;
@@ -12677,13 +12702,14 @@ var require_foldFlowLines = __commonJS({
12677
12702
  function foldFlowLines(text, indent, mode = "flow", { indentAtStart, lineWidth = 80, minContentWidth = 20, onFold, onOverflow } = {}) {
12678
12703
  if (!lineWidth || lineWidth < 0)
12679
12704
  return text;
12705
+ lineWidth < minContentWidth && (minContentWidth = 0);
12680
12706
  let endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
12681
12707
  if (text.length <= endStep)
12682
12708
  return text;
12683
12709
  let folds = [], escapedFolds = {}, end = lineWidth - indent.length;
12684
12710
  typeof indentAtStart == "number" && (indentAtStart > lineWidth - Math.max(2, minContentWidth) ? folds.push(0) : end = lineWidth - indentAtStart);
12685
12711
  let split, prev, overflow = !1, i = -1, escStart = -1, escEnd = -1;
12686
- mode === FOLD_BLOCK && (i = consumeMoreIndentedLines(text, i), i !== -1 && (end = i + endStep));
12712
+ mode === FOLD_BLOCK && (i = consumeMoreIndentedLines(text, i, indent.length), i !== -1 && (end = i + endStep));
12687
12713
  for (let ch; ch = text[i += 1]; ) {
12688
12714
  if (mode === FOLD_QUOTED && ch === "\\") {
12689
12715
  switch (escStart = i, text[i + 1]) {
@@ -12703,7 +12729,7 @@ var require_foldFlowLines = __commonJS({
12703
12729
  }
12704
12730
  if (ch === `
12705
12731
  `)
12706
- mode === FOLD_BLOCK && (i = consumeMoreIndentedLines(text, i)), end = i + endStep, split = void 0;
12732
+ mode === FOLD_BLOCK && (i = consumeMoreIndentedLines(text, i, indent.length)), end = i + indent.length + endStep, split = void 0;
12707
12733
  else {
12708
12734
  if (ch === " " && prev && prev !== " " && prev !== `
12709
12735
  ` && prev !== " ") {
@@ -12738,16 +12764,19 @@ ${indent}${text.slice(fold + 1, end2)}`);
12738
12764
  }
12739
12765
  return res;
12740
12766
  }
12741
- function consumeMoreIndentedLines(text, i) {
12742
- let ch = text[i + 1];
12743
- for (; ch === " " || ch === " "; ) {
12744
- do
12745
- ch = text[i += 1];
12746
- while (ch && ch !== `
12767
+ function consumeMoreIndentedLines(text, i, indent) {
12768
+ let end = i, start = i + 1, ch = text[start];
12769
+ for (; ch === " " || ch === " "; )
12770
+ if (i < start + indent)
12771
+ ch = text[++i];
12772
+ else {
12773
+ do
12774
+ ch = text[++i];
12775
+ while (ch && ch !== `
12747
12776
  `);
12748
- ch = text[i + 1];
12749
- }
12750
- return i;
12777
+ end = i, start = i + 1, ch = text[start];
12778
+ }
12779
+ return end;
12751
12780
  }
12752
12781
  exports2.FOLD_BLOCK = FOLD_BLOCK;
12753
12782
  exports2.FOLD_FLOW = FOLD_FLOW;
@@ -13071,7 +13100,7 @@ var require_stringifyPair = __commonJS({
13071
13100
  if (simpleKeys) {
13072
13101
  if (keyComment)
13073
13102
  throw new Error("With simple keys, key nodes cannot have comments");
13074
- if (identity.isCollection(key)) {
13103
+ if (identity.isCollection(key) || !identity.isNode(key) && typeof key == "object") {
13075
13104
  let msg = "With simple keys, collection cannot be used as a key value";
13076
13105
  throw new Error(msg);
13077
13106
  }
@@ -13251,7 +13280,7 @@ var require_Pair = __commonJS({
13251
13280
  var require_stringifyCollection = __commonJS({
13252
13281
  "../../../node_modules/yaml/dist/stringify/stringifyCollection.js"(exports2) {
13253
13282
  "use strict";
13254
- var Collection = require_Collection(), identity = require_identity(), stringify = require_stringify2(), stringifyComment = require_stringifyComment();
13283
+ var identity = require_identity(), stringify = require_stringify2(), stringifyComment = require_stringifyComment();
13255
13284
  function stringifyCollection(collection, ctx, options) {
13256
13285
  return (ctx.inFlow ?? collection.flow ? stringifyFlowCollection : stringifyBlockCollection)(collection, ctx, options);
13257
13286
  }
@@ -13284,7 +13313,7 @@ ${indent}${line}` : `
13284
13313
  return comment ? (str += `
13285
13314
  ` + stringifyComment.indentComment(commentString(comment), indent), onComment && onComment()) : chompKeep && onChompKeep && onChompKeep(), str;
13286
13315
  }
13287
- function stringifyFlowCollection({ comment, items }, ctx, { flowChars, itemIndent, onComment }) {
13316
+ function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) {
13288
13317
  let { indent, indentStep, flowCollectionPadding: fcPadding, options: { commentString } } = ctx;
13289
13318
  itemIndent += indentStep;
13290
13319
  let itemCtx = Object.assign({}, ctx, {
@@ -13293,34 +13322,37 @@ ${indent}${line}` : `
13293
13322
  type: null
13294
13323
  }), reqNewline = !1, linesAtValue = 0, lines = [];
13295
13324
  for (let i = 0; i < items.length; ++i) {
13296
- let item = items[i], comment2 = null;
13325
+ let item = items[i], comment = null;
13297
13326
  if (identity.isNode(item))
13298
- item.spaceBefore && lines.push(""), addCommentBefore(ctx, lines, item.commentBefore, !1), item.comment && (comment2 = item.comment);
13327
+ item.spaceBefore && lines.push(""), addCommentBefore(ctx, lines, item.commentBefore, !1), item.comment && (comment = item.comment);
13299
13328
  else if (identity.isPair(item)) {
13300
13329
  let ik = identity.isNode(item.key) ? item.key : null;
13301
13330
  ik && (ik.spaceBefore && lines.push(""), addCommentBefore(ctx, lines, ik.commentBefore, !1), ik.comment && (reqNewline = !0));
13302
13331
  let iv = identity.isNode(item.value) ? item.value : null;
13303
- iv ? (iv.comment && (comment2 = iv.comment), iv.commentBefore && (reqNewline = !0)) : item.value == null && ik?.comment && (comment2 = ik.comment);
13332
+ iv ? (iv.comment && (comment = iv.comment), iv.commentBefore && (reqNewline = !0)) : item.value == null && ik?.comment && (comment = ik.comment);
13304
13333
  }
13305
- comment2 && (reqNewline = !0);
13306
- let str2 = stringify.stringify(item, itemCtx, () => comment2 = null);
13307
- i < items.length - 1 && (str2 += ","), comment2 && (str2 += stringifyComment.lineComment(str2, itemIndent, commentString(comment2))), !reqNewline && (lines.length > linesAtValue || str2.includes(`
13308
- `)) && (reqNewline = !0), lines.push(str2), linesAtValue = lines.length;
13334
+ comment && (reqNewline = !0);
13335
+ let str = stringify.stringify(item, itemCtx, () => comment = null);
13336
+ i < items.length - 1 && (str += ","), comment && (str += stringifyComment.lineComment(str, itemIndent, commentString(comment))), !reqNewline && (lines.length > linesAtValue || str.includes(`
13337
+ `)) && (reqNewline = !0), lines.push(str), linesAtValue = lines.length;
13309
13338
  }
13310
- let str, { start, end } = flowChars;
13339
+ let { start, end } = flowChars;
13311
13340
  if (lines.length === 0)
13312
- str = start + end;
13313
- else if (reqNewline || (reqNewline = lines.reduce((sum, line) => sum + line.length + 2, 2) > Collection.Collection.maxFlowStringSingleLineLength), reqNewline) {
13314
- str = start;
13341
+ return start + end;
13342
+ if (!reqNewline) {
13343
+ let len = lines.reduce((sum, line) => sum + line.length + 2, 2);
13344
+ reqNewline = ctx.options.lineWidth > 0 && len > ctx.options.lineWidth;
13345
+ }
13346
+ if (reqNewline) {
13347
+ let str = start;
13315
13348
  for (let line of lines)
13316
13349
  str += line ? `
13317
13350
  ${indentStep}${indent}${line}` : `
13318
13351
  `;
13319
- str += `
13352
+ return `${str}
13320
13353
  ${indent}${end}`;
13321
13354
  } else
13322
- str = `${start}${fcPadding}${lines.join(" ")}${fcPadding}${end}`;
13323
- return comment && (str += stringifyComment.lineComment(str, indent, commentString(comment)), onComment && onComment()), str;
13355
+ return `${start}${fcPadding}${lines.join(" ")}${fcPadding}${end}`;
13324
13356
  }
13325
13357
  function addCommentBefore({ indent, options: { commentString } }, lines, comment, chompKeep) {
13326
13358
  if (comment && chompKeep && (comment = comment.replace(/^\n+/, "")), comment) {
@@ -13658,7 +13690,7 @@ var require_float = __commonJS({
13658
13690
  identify: (value) => typeof value == "number",
13659
13691
  default: !0,
13660
13692
  tag: "tag:yaml.org,2002:float",
13661
- test: /^(?:[-+]?\.(?:inf|Inf|INF|nan|NaN|NAN))$/,
13693
+ test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,
13662
13694
  resolve: (str) => str.slice(-3).toLowerCase() === "nan" ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
13663
13695
  stringify: stringifyNumber.stringifyNumber
13664
13696
  }, floatExp = {
@@ -13816,6 +13848,7 @@ var require_binary = __commonJS({
13816
13848
  "use strict";
13817
13849
  var Scalar = require_Scalar(), stringifyString = require_stringifyString(), binary = {
13818
13850
  identify: (value) => value instanceof Uint8Array,
13851
+ // Buffer inherits from Uint8Array
13819
13852
  default: !1,
13820
13853
  tag: "tag:yaml.org,2002:binary",
13821
13854
  /**
@@ -13997,7 +14030,7 @@ var require_bool2 = __commonJS({
13997
14030
  identify: (value) => value === !1,
13998
14031
  default: !0,
13999
14032
  tag: "tag:yaml.org,2002:bool",
14000
- test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
14033
+ test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,
14001
14034
  resolve: () => new Scalar.Scalar(!1),
14002
14035
  stringify: boolStringify
14003
14036
  };
@@ -14014,7 +14047,7 @@ var require_float2 = __commonJS({
14014
14047
  identify: (value) => typeof value == "number",
14015
14048
  default: !0,
14016
14049
  tag: "tag:yaml.org,2002:float",
14017
- test: /^[-+]?\.(?:inf|Inf|INF|nan|NaN|NAN)$/,
14050
+ test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,
14018
14051
  resolve: (str) => str.slice(-3).toLowerCase() === "nan" ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
14019
14052
  stringify: stringifyNumber.stringifyNumber
14020
14053
  }, floatExp = {
@@ -14687,12 +14720,12 @@ ${pointer}
14687
14720
  var require_resolve_props = __commonJS({
14688
14721
  "../../../node_modules/yaml/dist/compose/resolve-props.js"(exports2) {
14689
14722
  "use strict";
14690
- function resolveProps(tokens, { flow, indicator, next, offset, onError, startOnNewline }) {
14691
- let spaceBefore = !1, atNewline = startOnNewline, hasSpace = startOnNewline, comment = "", commentSep = "", hasNewline = !1, hasNewlineAfterProp = !1, reqSpace = !1, anchor = null, tag = null, comma = null, found = null, start = null;
14723
+ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIndent, startOnNewline }) {
14724
+ let spaceBefore = !1, atNewline = startOnNewline, hasSpace = startOnNewline, comment = "", commentSep = "", hasNewline = !1, reqSpace = !1, tab = null, anchor = null, tag = null, newlineAfterProp = null, comma = null, found = null, start = null;
14692
14725
  for (let token of tokens)
14693
- switch (reqSpace && (token.type !== "space" && token.type !== "newline" && token.type !== "comma" && onError(token.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"), reqSpace = !1), token.type) {
14726
+ switch (reqSpace && (token.type !== "space" && token.type !== "newline" && token.type !== "comma" && onError(token.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"), reqSpace = !1), tab && (atNewline && token.type !== "comment" && token.type !== "newline" && onError(tab, "TAB_AS_INDENT", "Tabs are not allowed as indentation"), tab = null), token.type) {
14694
14727
  case "space":
14695
- !flow && atNewline && indicator !== "doc-start" && token.source[0] === " " && onError(token, "TAB_AS_INDENT", "Tabs are not allowed as indentation"), hasSpace = !0;
14728
+ !flow && (indicator !== "doc-start" || next?.type !== "flow-collection") && token.source.includes(" ") && (tab = token), hasSpace = !0;
14696
14729
  break;
14697
14730
  case "comment": {
14698
14731
  hasSpace || onError(token, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters");
@@ -14701,7 +14734,7 @@ var require_resolve_props = __commonJS({
14701
14734
  break;
14702
14735
  }
14703
14736
  case "newline":
14704
- atNewline ? comment ? comment += token.source : spaceBefore = !0 : commentSep += token.source, atNewline = !0, hasNewline = !0, (anchor || tag) && (hasNewlineAfterProp = !0), hasSpace = !0;
14737
+ atNewline ? comment ? comment += token.source : spaceBefore = !0 : commentSep += token.source, atNewline = !0, hasNewline = !0, (anchor || tag) && (newlineAfterProp = token), hasSpace = !0;
14705
14738
  break;
14706
14739
  case "anchor":
14707
14740
  anchor && onError(token, "MULTIPLE_ANCHORS", "A node can have at most one anchor"), token.source.endsWith(":") && onError(token.offset + token.source.length - 1, "BAD_ALIAS", "Anchor ending in : is ambiguous", !0), anchor = token, start === null && (start = token.offset), atNewline = !1, hasSpace = !1, reqSpace = !0;
@@ -14711,7 +14744,7 @@ var require_resolve_props = __commonJS({
14711
14744
  break;
14712
14745
  }
14713
14746
  case indicator:
14714
- (anchor || tag) && onError(token, "BAD_PROP_ORDER", `Anchors and tags must be after the ${token.source} indicator`), found && onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.source} in ${flow ?? "collection"}`), found = token, atNewline = !1, hasSpace = !1;
14747
+ (anchor || tag) && onError(token, "BAD_PROP_ORDER", `Anchors and tags must be after the ${token.source} indicator`), found && onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.source} in ${flow ?? "collection"}`), found = token, atNewline = indicator === "seq-item-ind" || indicator === "explicit-key-ind", hasSpace = !1;
14715
14748
  break;
14716
14749
  case "comma":
14717
14750
  if (flow) {
@@ -14723,15 +14756,15 @@ var require_resolve_props = __commonJS({
14723
14756
  onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.type} token`), atNewline = !1, hasSpace = !1;
14724
14757
  }
14725
14758
  let last = tokens[tokens.length - 1], end = last ? last.offset + last.source.length : offset;
14726
- return reqSpace && next && next.type !== "space" && next.type !== "newline" && next.type !== "comma" && (next.type !== "scalar" || next.source !== "") && onError(next.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"), {
14759
+ return reqSpace && next && next.type !== "space" && next.type !== "newline" && next.type !== "comma" && (next.type !== "scalar" || next.source !== "") && onError(next.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"), tab && (atNewline && tab.indent <= parentIndent || next?.type === "block-map" || next?.type === "block-seq") && onError(tab, "TAB_AS_INDENT", "Tabs are not allowed as indentation"), {
14727
14760
  comma,
14728
14761
  found,
14729
14762
  spaceBefore,
14730
14763
  comment,
14731
14764
  hasNewline,
14732
- hasNewlineAfterProp,
14733
14765
  anchor,
14734
14766
  tag,
14767
+ newlineAfterProp,
14735
14768
  end,
14736
14769
  start: start ?? end
14737
14770
  };
@@ -14829,6 +14862,7 @@ var require_resolve_block_map = __commonJS({
14829
14862
  next: key ?? sep2?.[0],
14830
14863
  offset,
14831
14864
  onError,
14865
+ parentIndent: bm.indent,
14832
14866
  startOnNewline: !0
14833
14867
  }), implicitKey = !keyProps.found;
14834
14868
  if (implicitKey) {
@@ -14837,7 +14871,7 @@ var require_resolve_block_map = __commonJS({
14837
14871
  ` + keyProps.comment : map.comment = keyProps.comment);
14838
14872
  continue;
14839
14873
  }
14840
- (keyProps.hasNewlineAfterProp || utilContainsNewline.containsNewline(key)) && onError(key ?? start[start.length - 1], "MULTILINE_IMPLICIT_KEY", "Implicit keys need to be on a single line");
14874
+ (keyProps.newlineAfterProp || utilContainsNewline.containsNewline(key)) && onError(key ?? start[start.length - 1], "MULTILINE_IMPLICIT_KEY", "Implicit keys need to be on a single line");
14841
14875
  } else keyProps.found?.indent !== bm.indent && onError(offset, "BAD_INDENT", startColMsg);
14842
14876
  let keyStart = keyProps.end, keyNode = key ? composeNode(ctx, key, keyProps, onError) : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError);
14843
14877
  ctx.schema.compat && utilFlowIndentCheck.flowIndentCheck(bm.indent, key, onError), utilMapIncludes.mapIncludes(ctx, map.items, keyNode) && onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
@@ -14846,6 +14880,7 @@ var require_resolve_block_map = __commonJS({
14846
14880
  next: value,
14847
14881
  offset: keyNode.range[2],
14848
14882
  onError,
14883
+ parentIndent: bm.indent,
14849
14884
  startOnNewline: !key || key.type === "block-scalar"
14850
14885
  });
14851
14886
  if (offset = valueProps.end, valueProps.found) {
@@ -14882,6 +14917,7 @@ var require_resolve_block_seq = __commonJS({
14882
14917
  next: value,
14883
14918
  offset,
14884
14919
  onError,
14920
+ parentIndent: bs.indent,
14885
14921
  startOnNewline: !0
14886
14922
  });
14887
14923
  if (!props.found)
@@ -14953,6 +14989,7 @@ var require_resolve_flow_collection = __commonJS({
14953
14989
  next: key ?? sep2?.[0],
14954
14990
  offset,
14955
14991
  onError,
14992
+ parentIndent: fc.indent,
14956
14993
  startOnNewline: !1
14957
14994
  });
14958
14995
  if (!props.found) {
@@ -15001,6 +15038,7 @@ var require_resolve_flow_collection = __commonJS({
15001
15038
  next: value,
15002
15039
  offset: keyNode.range[2],
15003
15040
  onError,
15041
+ parentIndent: fc.indent,
15004
15042
  startOnNewline: !1
15005
15043
  });
15006
15044
  if (valueProps.found) {
@@ -15026,7 +15064,9 @@ var require_resolve_flow_collection = __commonJS({
15026
15064
  utilMapIncludes.mapIncludes(ctx, map.items, keyNode) && onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique"), map.items.push(pair);
15027
15065
  } else {
15028
15066
  let map = new YAMLMap.YAMLMap(ctx.schema);
15029
- map.flow = !0, map.items.push(pair), coll.items.push(map);
15067
+ map.flow = !0, map.items.push(pair);
15068
+ let endRange = (valueNode ?? keyNode).range;
15069
+ map.range = [keyNode.range[0], endRange[1], endRange[2]], coll.items.push(map);
15030
15070
  }
15031
15071
  offset = valueNode ? valueNode.range[2] : valueProps.end;
15032
15072
  }
@@ -15059,9 +15099,14 @@ var require_compose_collection = __commonJS({
15059
15099
  let coll = token.type === "block-map" ? resolveBlockMap.resolveBlockMap(CN, ctx, token, onError, tag) : token.type === "block-seq" ? resolveBlockSeq.resolveBlockSeq(CN, ctx, token, onError, tag) : resolveFlowCollection.resolveFlowCollection(CN, ctx, token, onError, tag), Coll = coll.constructor;
15060
15100
  return tagName === "!" || tagName === Coll.tagName ? (coll.tag = Coll.tagName, coll) : (tagName && (coll.tag = tagName), coll);
15061
15101
  }
15062
- function composeCollection(CN, ctx, token, tagToken, onError) {
15063
- let tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null, expType = token.type === "block-map" ? "map" : token.type === "block-seq" ? "seq" : token.start.source === "{" ? "map" : "seq";
15064
- if (!tagToken || !tagName || tagName === "!" || tagName === YAMLMap.YAMLMap.tagName && expType === "map" || tagName === YAMLSeq.YAMLSeq.tagName && expType === "seq" || !expType)
15102
+ function composeCollection(CN, ctx, token, props, onError) {
15103
+ let tagToken = props.tag, tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null;
15104
+ if (token.type === "block-seq") {
15105
+ let { anchor, newlineAfterProp: nl } = props, lastProp = anchor && tagToken ? anchor.offset > tagToken.offset ? anchor : tagToken : anchor ?? tagToken;
15106
+ lastProp && (!nl || nl.offset < lastProp.offset) && onError(lastProp, "MISSING_CHAR", "Missing newline after block sequence props");
15107
+ }
15108
+ let expType = token.type === "block-map" ? "map" : token.type === "block-seq" ? "seq" : token.start.source === "{" ? "map" : "seq";
15109
+ if (!tagToken || !tagName || tagName === "!" || tagName === YAMLMap.YAMLMap.tagName && expType === "map" || tagName === YAMLSeq.YAMLSeq.tagName && expType === "seq")
15065
15110
  return resolveCollection(CN, ctx, token, onError, tagName);
15066
15111
  let tag = ctx.schema.tags.find((t) => t.tag === tagName && t.collection === expType);
15067
15112
  if (!tag) {
@@ -15083,8 +15128,8 @@ var require_resolve_block_scalar = __commonJS({
15083
15128
  "../../../node_modules/yaml/dist/compose/resolve-block-scalar.js"(exports2) {
15084
15129
  "use strict";
15085
15130
  var Scalar = require_Scalar();
15086
- function resolveBlockScalar(scalar, strict, onError) {
15087
- let start = scalar.offset, header = parseBlockScalarHeader(scalar, strict, onError);
15131
+ function resolveBlockScalar(ctx, scalar, onError) {
15132
+ let start = scalar.offset, header = parseBlockScalarHeader(scalar, ctx.options.strict, onError);
15088
15133
  if (!header)
15089
15134
  return { value: "", type: null, comment: "", range: [start, start, start] };
15090
15135
  let type = header.mode === ">" ? Scalar.Scalar.BLOCK_FOLDED : Scalar.Scalar.BLOCK_LITERAL, lines = scalar.source ? splitLines(scalar.source) : [], chompStart = lines.length;
@@ -15106,7 +15151,7 @@ var require_resolve_block_scalar = __commonJS({
15106
15151
  if (content === "" || content === "\r")
15107
15152
  header.indent === 0 && indent.length > trimIndent && (trimIndent = indent.length);
15108
15153
  else {
15109
- indent.length < trimIndent && onError(offset + indent.length, "MISSING_CHAR", "Block scalars with more-indented leading empty lines must use an explicit indentation indicator"), header.indent === 0 && (trimIndent = indent.length), contentStart = i;
15154
+ indent.length < trimIndent && onError(offset + indent.length, "MISSING_CHAR", "Block scalars with more-indented leading empty lines must use an explicit indentation indicator"), header.indent === 0 && (trimIndent = indent.length), contentStart = i, trimIndent === 0 && !ctx.atRoot && onError(offset, "BAD_INDENT", "Block scalar values in collections must be indented");
15110
15155
  break;
15111
15156
  }
15112
15157
  offset += indent.length + content.length + 1;
@@ -15341,19 +15386,32 @@ var require_resolve_flow_scalar = __commonJS({
15341
15386
  }
15342
15387
  var escapeCodes = {
15343
15388
  0: "\0",
15389
+ // null character
15344
15390
  a: "\x07",
15391
+ // bell character
15345
15392
  b: "\b",
15393
+ // backspace
15346
15394
  e: "\x1B",
15395
+ // escape character
15347
15396
  f: "\f",
15397
+ // form feed
15348
15398
  n: `
15349
15399
  `,
15400
+ // line feed
15350
15401
  r: "\r",
15402
+ // carriage return
15351
15403
  t: " ",
15404
+ // horizontal tab
15352
15405
  v: "\v",
15406
+ // vertical tab
15353
15407
  N: "\x85",
15408
+ // Unicode next line
15354
15409
  _: "\xA0",
15410
+ // Unicode non-breaking space
15355
15411
  L: "\u2028",
15412
+ // Unicode line separator
15356
15413
  P: "\u2029",
15414
+ // Unicode paragraph separator
15357
15415
  " ": " ",
15358
15416
  '"': '"',
15359
15417
  "/": "/",
@@ -15378,7 +15436,7 @@ var require_compose_scalar = __commonJS({
15378
15436
  "use strict";
15379
15437
  var identity = require_identity(), Scalar = require_Scalar(), resolveBlockScalar = require_resolve_block_scalar(), resolveFlowScalar = require_resolve_flow_scalar();
15380
15438
  function composeScalar(ctx, token, tagToken, onError) {
15381
- let { value, type, comment, range } = token.type === "block-scalar" ? resolveBlockScalar.resolveBlockScalar(token, ctx.options.strict, onError) : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError), tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null, tag = tagToken && tagName ? findScalarTagByName(ctx.schema, value, tagName, tagToken, onError) : token.type === "scalar" ? findScalarTagByTest(ctx, value, token, onError) : ctx.schema[identity.SCALAR], scalar;
15439
+ let { value, type, comment, range } = token.type === "block-scalar" ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError) : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError), tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null, tag = tagToken && tagName ? findScalarTagByName(ctx.schema, value, tagName, tagToken, onError) : token.type === "scalar" ? findScalarTagByTest(ctx, value, token, onError) : ctx.schema[identity.SCALAR], scalar;
15382
15440
  try {
15383
15441
  let res = tag.resolve(value, (msg) => onError(tagToken ?? token, "TAG_RESOLVE_FAILED", msg), ctx.options);
15384
15442
  scalar = identity.isScalar(res) ? res : new Scalar.Scalar(res);
@@ -15466,7 +15524,7 @@ var require_compose_node = __commonJS({
15466
15524
  case "block-map":
15467
15525
  case "block-seq":
15468
15526
  case "flow-collection":
15469
- node = composeCollection.composeCollection(CN, ctx, token, tag, onError), anchor && (node.anchor = anchor.source.substring(1));
15527
+ node = composeCollection.composeCollection(CN, ctx, token, props, onError), anchor && (node.anchor = anchor.source.substring(1));
15470
15528
  break;
15471
15529
  default: {
15472
15530
  let message = token.type === "error" ? token.message : `Unsupported token (type: ${token.type})`;
@@ -15511,6 +15569,7 @@ var require_compose_doc = __commonJS({
15511
15569
  next: value ?? end?.[0],
15512
15570
  offset,
15513
15571
  onError,
15572
+ parentIndent: 0,
15514
15573
  startOnNewline: !0
15515
15574
  });
15516
15575
  props.found && (doc.directives.docStart = !0, value && (value.type === "block-map" || value.type === "block-seq") && !props.hasNewline && onError(props.end, "MISSING_CHAR", "Block collection cannot start on same line with directives-end marker")), doc.contents = value ? composeNode.composeNode(ctx, value, props, onError) : composeNode.composeEmptyNode(ctx, props.end, start, null, props, onError);
@@ -15693,7 +15752,7 @@ var require_cst_scalar = __commonJS({
15693
15752
  case "double-quoted-scalar":
15694
15753
  return resolveFlowScalar.resolveFlowScalar(token, strict, _onError);
15695
15754
  case "block-scalar":
15696
- return resolveBlockScalar.resolveBlockScalar(token, strict, _onError);
15755
+ return resolveBlockScalar.resolveBlockScalar({ options: { strict } }, token, _onError);
15697
15756
  }
15698
15757
  }
15699
15758
  return null;
@@ -16062,8 +16121,8 @@ var require_lexer = __commonJS({
16062
16121
  return !1;
16063
16122
  }
16064
16123
  }
16065
- var hexDigits = "0123456789ABCDEFabcdef".split(""), tagChars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()".split(""), invalidFlowScalarChars = ",[]{}".split(""), invalidAnchorChars = ` ,[]{}
16066
- \r `.split(""), isNotAnchorChar = (ch) => !ch || invalidAnchorChars.includes(ch), Lexer = class {
16124
+ var hexDigits = new Set("0123456789ABCDEFabcdef"), tagChars = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"), flowIndicatorChars = new Set(",[]{}"), invalidAnchorChars = new Set(` ,[]{}
16125
+ \r `), isNotAnchorChar = (ch) => !ch || invalidAnchorChars.has(ch), Lexer = class {
16067
16126
  constructor() {
16068
16127
  this.atEnd = !1, this.blockScalarIndent = -1, this.blockScalarKeep = !1, this.buffer = "", this.flowKey = !1, this.flowLevel = 0, this.indentNext = 0, this.indentValue = 0, this.lineEndPos = null, this.next = null, this.pos = 0;
16069
16128
  }
@@ -16074,7 +16133,12 @@ var require_lexer = __commonJS({
16074
16133
  * @returns A generator of lexical tokens
16075
16134
  */
16076
16135
  *lex(source, incomplete = !1) {
16077
- source && (this.buffer = this.buffer ? this.buffer + source : source, this.lineEndPos = null), this.atEnd = !incomplete;
16136
+ if (source) {
16137
+ if (typeof source != "string")
16138
+ throw TypeError("source is not a string");
16139
+ this.buffer = this.buffer ? this.buffer + source : source, this.lineEndPos = null;
16140
+ }
16141
+ this.atEnd = !incomplete;
16078
16142
  let next = this.next ?? "stream";
16079
16143
  for (; next && (incomplete || this.hasChars(1)); )
16080
16144
  next = yield* this.parseNext(next);
@@ -16152,9 +16216,13 @@ var require_lexer = __commonJS({
16152
16216
  return this.setNext("stream");
16153
16217
  if (line[0] === cst.BOM && (yield* this.pushCount(1), line = line.substring(1)), line[0] === "%") {
16154
16218
  let dirEnd = line.length, cs = line.indexOf("#");
16155
- if (cs !== -1) {
16219
+ for (; cs !== -1; ) {
16156
16220
  let ch = line[cs - 1];
16157
- (ch === " " || ch === " ") && (dirEnd = cs - 1);
16221
+ if (ch === " " || ch === " ") {
16222
+ dirEnd = cs - 1;
16223
+ break;
16224
+ } else
16225
+ cs = line.indexOf("#", cs + 1);
16158
16226
  }
16159
16227
  for (; ; ) {
16160
16228
  let ch = line[dirEnd - 1];
@@ -16180,10 +16248,8 @@ var require_lexer = __commonJS({
16180
16248
  if (!this.atEnd && !this.hasChars(4))
16181
16249
  return this.setNext("line-start");
16182
16250
  let s = this.peek(3);
16183
- if (s === "---" && isEmpty(this.charAt(3)))
16184
- return yield* this.pushCount(3), this.indentValue = 0, this.indentNext = 0, "doc";
16185
- if (s === "..." && isEmpty(this.charAt(3)))
16186
- return yield* this.pushCount(3), "stream";
16251
+ if ((s === "---" || s === "...") && isEmpty(this.charAt(3)))
16252
+ return yield* this.pushCount(3), this.indentValue = 0, this.indentNext = 0, s === "---" ? "doc" : "stream";
16187
16253
  }
16188
16254
  return this.indentValue = yield* this.pushSpaces(!1), this.indentNext > this.indentValue && !isEmpty(this.charAt(1)) && (this.indentNext = this.indentValue), yield* this.parseBlockStart();
16189
16255
  }
@@ -16315,17 +16381,17 @@ var require_lexer = __commonJS({
16315
16381
  }
16316
16382
  *parseBlockScalar() {
16317
16383
  let nl = this.pos - 1, indent = 0, ch;
16318
- loop: for (let i = this.pos; ch = this.buffer[i]; ++i)
16384
+ loop: for (let i2 = this.pos; ch = this.buffer[i2]; ++i2)
16319
16385
  switch (ch) {
16320
16386
  case " ":
16321
16387
  indent += 1;
16322
16388
  break;
16323
16389
  case `
16324
16390
  `:
16325
- nl = i, indent = 0;
16391
+ nl = i2, indent = 0;
16326
16392
  break;
16327
16393
  case "\r": {
16328
- let next = this.buffer[i + 1];
16394
+ let next = this.buffer[i2 + 1];
16329
16395
  if (!next && !this.atEnd)
16330
16396
  return this.setNext("block-scalar");
16331
16397
  if (next === `
@@ -16339,7 +16405,7 @@ var require_lexer = __commonJS({
16339
16405
  if (!ch && !this.atEnd)
16340
16406
  return this.setNext("block-scalar");
16341
16407
  if (indent >= this.indentNext) {
16342
- this.blockScalarIndent === -1 ? this.indentNext = indent : this.indentNext += this.blockScalarIndent;
16408
+ this.blockScalarIndent === -1 ? this.indentNext = indent : this.indentNext = this.blockScalarIndent + (this.indentNext === 0 ? 1 : this.indentNext);
16343
16409
  do {
16344
16410
  let cs = this.continueScalar(nl + 1);
16345
16411
  if (cs === -1)
@@ -16353,16 +16419,24 @@ var require_lexer = __commonJS({
16353
16419
  nl = this.buffer.length;
16354
16420
  }
16355
16421
  }
16356
- if (!this.blockScalarKeep)
16422
+ let i = nl + 1;
16423
+ for (ch = this.buffer[i]; ch === " "; )
16424
+ ch = this.buffer[++i];
16425
+ if (ch === " ") {
16426
+ for (; ch === " " || ch === " " || ch === "\r" || ch === `
16427
+ `; )
16428
+ ch = this.buffer[++i];
16429
+ nl = i - 1;
16430
+ } else if (!this.blockScalarKeep)
16357
16431
  do {
16358
- let i = nl - 1, ch2 = this.buffer[i];
16359
- ch2 === "\r" && (ch2 = this.buffer[--i]);
16360
- let lastChar = i;
16361
- for (; ch2 === " " || ch2 === " "; )
16362
- ch2 = this.buffer[--i];
16432
+ let i2 = nl - 1, ch2 = this.buffer[i2];
16433
+ ch2 === "\r" && (ch2 = this.buffer[--i2]);
16434
+ let lastChar = i2;
16435
+ for (; ch2 === " "; )
16436
+ ch2 = this.buffer[--i2];
16363
16437
  if (ch2 === `
16364
- ` && i >= this.pos && i + 1 + indent > lastChar)
16365
- nl = i;
16438
+ ` && i2 >= this.pos && i2 + 1 + indent > lastChar)
16439
+ nl = i2;
16366
16440
  else
16367
16441
  break;
16368
16442
  } while (!0);
@@ -16373,14 +16447,14 @@ var require_lexer = __commonJS({
16373
16447
  for (; ch = this.buffer[++i]; )
16374
16448
  if (ch === ":") {
16375
16449
  let next = this.buffer[i + 1];
16376
- if (isEmpty(next) || inFlow && next === ",")
16450
+ if (isEmpty(next) || inFlow && flowIndicatorChars.has(next))
16377
16451
  break;
16378
16452
  end = i;
16379
16453
  } else if (isEmpty(ch)) {
16380
16454
  let next = this.buffer[i + 1];
16381
16455
  if (ch === "\r" && (next === `
16382
16456
  ` ? (i += 1, ch = `
16383
- `, next = this.buffer[i + 1]) : end = i), next === "#" || inFlow && invalidFlowScalarChars.includes(next))
16457
+ `, next = this.buffer[i + 1]) : end = i), next === "#" || inFlow && flowIndicatorChars.has(next))
16384
16458
  break;
16385
16459
  if (ch === `
16386
16460
  `) {
@@ -16390,7 +16464,7 @@ var require_lexer = __commonJS({
16390
16464
  i = Math.max(i, cs - 2);
16391
16465
  }
16392
16466
  } else {
16393
- if (inFlow && invalidFlowScalarChars.includes(ch))
16467
+ if (inFlow && flowIndicatorChars.has(ch))
16394
16468
  break;
16395
16469
  end = i;
16396
16470
  }
@@ -16415,7 +16489,7 @@ var require_lexer = __commonJS({
16415
16489
  // this is an error outside flow collections
16416
16490
  case ":": {
16417
16491
  let inFlow = this.flowLevel > 0, ch1 = this.charAt(1);
16418
- if (isEmpty(ch1) || inFlow && invalidFlowScalarChars.includes(ch1))
16492
+ if (isEmpty(ch1) || inFlow && flowIndicatorChars.has(ch1))
16419
16493
  return inFlow ? this.flowKey && (this.flowKey = !1) : this.indentNext = this.indentValue + 1, (yield* this.pushCount(1)) + (yield* this.pushSpaces(!0)) + (yield* this.pushIndicators());
16420
16494
  }
16421
16495
  }
@@ -16430,9 +16504,9 @@ var require_lexer = __commonJS({
16430
16504
  } else {
16431
16505
  let i = this.pos + 1, ch = this.buffer[i];
16432
16506
  for (; ch; )
16433
- if (tagChars.includes(ch))
16507
+ if (tagChars.has(ch))
16434
16508
  ch = this.buffer[++i];
16435
- else if (ch === "%" && hexDigits.includes(this.buffer[i + 1]) && hexDigits.includes(this.buffer[i + 2]))
16509
+ else if (ch === "%" && hexDigits.has(this.buffer[i + 1]) && hexDigits.has(this.buffer[i + 2]))
16436
16510
  ch = this.buffer[i += 3];
16437
16511
  else
16438
16512
  break;
@@ -16695,7 +16769,7 @@ var require_parser = __commonJS({
16695
16769
  } else if (it.sep)
16696
16770
  it.value = token;
16697
16771
  else {
16698
- Object.assign(it, { key: token, sep: [] }), this.onKeyLine = !includesToken(it.start, "explicit-key-ind");
16772
+ Object.assign(it, { key: token, sep: [] }), this.onKeyLine = !it.explicitKey;
16699
16773
  return;
16700
16774
  }
16701
16775
  break;
@@ -16837,7 +16911,7 @@ var require_parser = __commonJS({
16837
16911
  return;
16838
16912
  }
16839
16913
  if (this.indent >= map.indent) {
16840
- let atNextItem = !this.onKeyLine && this.indent === map.indent && it.sep, start = [];
16914
+ let atMapIndent = !this.onKeyLine && this.indent === map.indent, atNextItem = atMapIndent && (it.sep || it.explicitKey) && this.type !== "seq-item-ind", start = [];
16841
16915
  if (atNextItem && it.sep && !it.value) {
16842
16916
  let nl = [];
16843
16917
  for (let i = 0; i < it.sep.length; ++i) {
@@ -16863,15 +16937,15 @@ var require_parser = __commonJS({
16863
16937
  atNextItem || it.value ? (start.push(this.sourceToken), map.items.push({ start }), this.onKeyLine = !0) : it.sep ? it.sep.push(this.sourceToken) : it.start.push(this.sourceToken);
16864
16938
  return;
16865
16939
  case "explicit-key-ind":
16866
- !it.sep && !includesToken(it.start, "explicit-key-ind") ? it.start.push(this.sourceToken) : atNextItem || it.value ? (start.push(this.sourceToken), map.items.push({ start })) : this.stack.push({
16940
+ !it.sep && !it.explicitKey ? (it.start.push(this.sourceToken), it.explicitKey = !0) : atNextItem || it.value ? (start.push(this.sourceToken), map.items.push({ start, explicitKey: !0 })) : this.stack.push({
16867
16941
  type: "block-map",
16868
16942
  offset: this.offset,
16869
16943
  indent: this.indent,
16870
- items: [{ start: [this.sourceToken] }]
16944
+ items: [{ start: [this.sourceToken], explicitKey: !0 }]
16871
16945
  }), this.onKeyLine = !0;
16872
16946
  return;
16873
16947
  case "map-value-ind":
16874
- if (includesToken(it.start, "explicit-key-ind"))
16948
+ if (it.explicitKey)
16875
16949
  if (it.sep)
16876
16950
  if (it.value)
16877
16951
  map.items.push({ start: [], key: null, sep: [this.sourceToken] });
@@ -16922,7 +16996,7 @@ var require_parser = __commonJS({
16922
16996
  default: {
16923
16997
  let bv = this.startBlockValue(map);
16924
16998
  if (bv) {
16925
- atNextItem && bv.type !== "block-seq" && includesToken(it.start, "explicit-key-ind") && map.items.push({ start }), this.stack.push(bv);
16999
+ atMapIndent && bv.type !== "block-seq" && map.items.push({ start }), this.stack.push(bv);
16926
17000
  return;
16927
17001
  }
16928
17002
  }
@@ -17088,7 +17162,7 @@ var require_parser = __commonJS({
17088
17162
  type: "block-map",
17089
17163
  offset: this.offset,
17090
17164
  indent: this.indent,
17091
- items: [{ start }]
17165
+ items: [{ start, explicitKey: !0 }]
17092
17166
  };
17093
17167
  }
17094
17168
  case "map-value-ind": {
@@ -18685,40 +18759,62 @@ var require_lib4 = __commonJS({
18685
18759
  // ../../../node_modules/picocolors/picocolors.js
18686
18760
  var require_picocolors = __commonJS({
18687
18761
  "../../../node_modules/picocolors/picocolors.js"(exports2, module2) {
18688
- var tty2 = require("tty"), isColorSupported = !("NO_COLOR" in process.env || process.argv.includes("--no-color")) && ("FORCE_COLOR" in process.env || process.argv.includes("--color") || process.platform === "win32" || tty2.isatty(1) && process.env.TERM !== "dumb" || "CI" in process.env), formatter = (open3, close, replace = open3) => (input) => {
18762
+ var argv2 = process.argv || [], env2 = process.env, isColorSupported = !("NO_COLOR" in env2 || argv2.includes("--no-color")) && ("FORCE_COLOR" in env2 || argv2.includes("--color") || process.platform === "win32" || require != null && require("tty").isatty(1) && env2.TERM !== "dumb" || "CI" in env2), formatter = (open3, close, replace = open3) => (input) => {
18689
18763
  let string = "" + input, index = string.indexOf(close, open3.length);
18690
18764
  return ~index ? open3 + replaceClose(string, close, replace, index) + close : open3 + string + close;
18691
18765
  }, replaceClose = (string, close, replace, index) => {
18692
- let start = string.substring(0, index) + replace, end = string.substring(index + close.length), nextIndex = end.indexOf(close);
18693
- return ~nextIndex ? start + replaceClose(end, close, replace, nextIndex) : start + end;
18694
- }, createColors = (enabled = isColorSupported) => ({
18695
- isColorSupported: enabled,
18696
- reset: enabled ? (s) => `\x1B[0m${s}\x1B[0m` : String,
18697
- bold: enabled ? formatter("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m") : String,
18698
- dim: enabled ? formatter("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m") : String,
18699
- italic: enabled ? formatter("\x1B[3m", "\x1B[23m") : String,
18700
- underline: enabled ? formatter("\x1B[4m", "\x1B[24m") : String,
18701
- inverse: enabled ? formatter("\x1B[7m", "\x1B[27m") : String,
18702
- hidden: enabled ? formatter("\x1B[8m", "\x1B[28m") : String,
18703
- strikethrough: enabled ? formatter("\x1B[9m", "\x1B[29m") : String,
18704
- black: enabled ? formatter("\x1B[30m", "\x1B[39m") : String,
18705
- red: enabled ? formatter("\x1B[31m", "\x1B[39m") : String,
18706
- green: enabled ? formatter("\x1B[32m", "\x1B[39m") : String,
18707
- yellow: enabled ? formatter("\x1B[33m", "\x1B[39m") : String,
18708
- blue: enabled ? formatter("\x1B[34m", "\x1B[39m") : String,
18709
- magenta: enabled ? formatter("\x1B[35m", "\x1B[39m") : String,
18710
- cyan: enabled ? formatter("\x1B[36m", "\x1B[39m") : String,
18711
- white: enabled ? formatter("\x1B[37m", "\x1B[39m") : String,
18712
- gray: enabled ? formatter("\x1B[90m", "\x1B[39m") : String,
18713
- bgBlack: enabled ? formatter("\x1B[40m", "\x1B[49m") : String,
18714
- bgRed: enabled ? formatter("\x1B[41m", "\x1B[49m") : String,
18715
- bgGreen: enabled ? formatter("\x1B[42m", "\x1B[49m") : String,
18716
- bgYellow: enabled ? formatter("\x1B[43m", "\x1B[49m") : String,
18717
- bgBlue: enabled ? formatter("\x1B[44m", "\x1B[49m") : String,
18718
- bgMagenta: enabled ? formatter("\x1B[45m", "\x1B[49m") : String,
18719
- bgCyan: enabled ? formatter("\x1B[46m", "\x1B[49m") : String,
18720
- bgWhite: enabled ? formatter("\x1B[47m", "\x1B[49m") : String
18721
- });
18766
+ let result = "", cursor = 0;
18767
+ do
18768
+ result += string.substring(cursor, index) + replace, cursor = index + close.length, index = string.indexOf(close, cursor);
18769
+ while (~index);
18770
+ return result + string.substring(cursor);
18771
+ }, createColors = (enabled = isColorSupported) => {
18772
+ let init = enabled ? formatter : () => String;
18773
+ return {
18774
+ isColorSupported: enabled,
18775
+ reset: init("\x1B[0m", "\x1B[0m"),
18776
+ bold: init("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
18777
+ dim: init("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
18778
+ italic: init("\x1B[3m", "\x1B[23m"),
18779
+ underline: init("\x1B[4m", "\x1B[24m"),
18780
+ inverse: init("\x1B[7m", "\x1B[27m"),
18781
+ hidden: init("\x1B[8m", "\x1B[28m"),
18782
+ strikethrough: init("\x1B[9m", "\x1B[29m"),
18783
+ black: init("\x1B[30m", "\x1B[39m"),
18784
+ red: init("\x1B[31m", "\x1B[39m"),
18785
+ green: init("\x1B[32m", "\x1B[39m"),
18786
+ yellow: init("\x1B[33m", "\x1B[39m"),
18787
+ blue: init("\x1B[34m", "\x1B[39m"),
18788
+ magenta: init("\x1B[35m", "\x1B[39m"),
18789
+ cyan: init("\x1B[36m", "\x1B[39m"),
18790
+ white: init("\x1B[37m", "\x1B[39m"),
18791
+ gray: init("\x1B[90m", "\x1B[39m"),
18792
+ bgBlack: init("\x1B[40m", "\x1B[49m"),
18793
+ bgRed: init("\x1B[41m", "\x1B[49m"),
18794
+ bgGreen: init("\x1B[42m", "\x1B[49m"),
18795
+ bgYellow: init("\x1B[43m", "\x1B[49m"),
18796
+ bgBlue: init("\x1B[44m", "\x1B[49m"),
18797
+ bgMagenta: init("\x1B[45m", "\x1B[49m"),
18798
+ bgCyan: init("\x1B[46m", "\x1B[49m"),
18799
+ bgWhite: init("\x1B[47m", "\x1B[49m"),
18800
+ blackBright: init("\x1B[90m", "\x1B[39m"),
18801
+ redBright: init("\x1B[91m", "\x1B[39m"),
18802
+ greenBright: init("\x1B[92m", "\x1B[39m"),
18803
+ yellowBright: init("\x1B[93m", "\x1B[39m"),
18804
+ blueBright: init("\x1B[94m", "\x1B[39m"),
18805
+ magentaBright: init("\x1B[95m", "\x1B[39m"),
18806
+ cyanBright: init("\x1B[96m", "\x1B[39m"),
18807
+ whiteBright: init("\x1B[97m", "\x1B[39m"),
18808
+ bgBlackBright: init("\x1B[100m", "\x1B[49m"),
18809
+ bgRedBright: init("\x1B[101m", "\x1B[49m"),
18810
+ bgGreenBright: init("\x1B[102m", "\x1B[49m"),
18811
+ bgYellowBright: init("\x1B[103m", "\x1B[49m"),
18812
+ bgBlueBright: init("\x1B[104m", "\x1B[49m"),
18813
+ bgMagentaBright: init("\x1B[105m", "\x1B[49m"),
18814
+ bgCyanBright: init("\x1B[106m", "\x1B[49m"),
18815
+ bgWhiteBright: init("\x1B[107m", "\x1B[49m")
18816
+ };
18817
+ };
18722
18818
  module2.exports = createColors();
18723
18819
  module2.exports.createColors = createColors;
18724
18820
  }
@@ -21880,12 +21976,24 @@ var require_semver = __commonJS({
21880
21976
  };
21881
21977
  exports2.SEMVER_SPEC_VERSION = "2.0.0";
21882
21978
  var MAX_LENGTH = 256, MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
21883
- 9007199254740991, MAX_SAFE_COMPONENT_LENGTH = 16, re = exports2.re = [], src = exports2.src = [], R = 0, NUMERICIDENTIFIER = R++;
21979
+ 9007199254740991, MAX_SAFE_COMPONENT_LENGTH = 16, MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6, re = exports2.re = [], safeRe = exports2.safeRe = [], src = exports2.src = [], R = 0, LETTERDASHNUMBER = "[a-zA-Z0-9-]", safeRegexReplacements = [
21980
+ ["\\s", 1],
21981
+ ["\\d", MAX_LENGTH],
21982
+ [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
21983
+ ];
21984
+ function makeSafeRe(value) {
21985
+ for (var i2 = 0; i2 < safeRegexReplacements.length; i2++) {
21986
+ var token = safeRegexReplacements[i2][0], max = safeRegexReplacements[i2][1];
21987
+ value = value.split(token + "*").join(token + "{0," + max + "}").split(token + "+").join(token + "{1," + max + "}");
21988
+ }
21989
+ return value;
21990
+ }
21991
+ var NUMERICIDENTIFIER = R++;
21884
21992
  src[NUMERICIDENTIFIER] = "0|[1-9]\\d*";
21885
21993
  var NUMERICIDENTIFIERLOOSE = R++;
21886
- src[NUMERICIDENTIFIERLOOSE] = "[0-9]+";
21994
+ src[NUMERICIDENTIFIERLOOSE] = "\\d+";
21887
21995
  var NONNUMERICIDENTIFIER = R++;
21888
- src[NONNUMERICIDENTIFIER] = "\\d*[a-zA-Z-][a-zA-Z0-9-]*";
21996
+ src[NONNUMERICIDENTIFIER] = "\\d*[a-zA-Z-]" + LETTERDASHNUMBER + "*";
21889
21997
  var MAINVERSION = R++;
21890
21998
  src[MAINVERSION] = "(" + src[NUMERICIDENTIFIER] + ")\\.(" + src[NUMERICIDENTIFIER] + ")\\.(" + src[NUMERICIDENTIFIER] + ")";
21891
21999
  var MAINVERSIONLOOSE = R++;
@@ -21899,7 +22007,7 @@ var require_semver = __commonJS({
21899
22007
  var PRERELEASELOOSE = R++;
21900
22008
  src[PRERELEASELOOSE] = "(?:-?(" + src[PRERELEASEIDENTIFIERLOOSE] + "(?:\\." + src[PRERELEASEIDENTIFIERLOOSE] + ")*))";
21901
22009
  var BUILDIDENTIFIER = R++;
21902
- src[BUILDIDENTIFIER] = "[0-9A-Za-z-]+";
22010
+ src[BUILDIDENTIFIER] = LETTERDASHNUMBER + "+";
21903
22011
  var BUILD = R++;
21904
22012
  src[BUILD] = "(?:\\+(" + src[BUILDIDENTIFIER] + "(?:\\." + src[BUILDIDENTIFIER] + ")*))";
21905
22013
  var FULL = R++, FULLPLAIN = "v?" + src[MAINVERSION] + src[PRERELEASE] + "?" + src[BUILD] + "?";
@@ -21927,6 +22035,7 @@ var require_semver = __commonJS({
21927
22035
  var TILDETRIM = R++;
21928
22036
  src[TILDETRIM] = "(\\s*)" + src[LONETILDE] + "\\s+";
21929
22037
  re[TILDETRIM] = new RegExp(src[TILDETRIM], "g");
22038
+ safeRe[TILDETRIM] = new RegExp(makeSafeRe(src[TILDETRIM]), "g");
21930
22039
  var tildeTrimReplace = "$1~", TILDE = R++;
21931
22040
  src[TILDE] = "^" + src[LONETILDE] + src[XRANGEPLAIN] + "$";
21932
22041
  var TILDELOOSE = R++;
@@ -21936,6 +22045,7 @@ var require_semver = __commonJS({
21936
22045
  var CARETTRIM = R++;
21937
22046
  src[CARETTRIM] = "(\\s*)" + src[LONECARET] + "\\s+";
21938
22047
  re[CARETTRIM] = new RegExp(src[CARETTRIM], "g");
22048
+ safeRe[CARETTRIM] = new RegExp(makeSafeRe(src[CARETTRIM]), "g");
21939
22049
  var caretTrimReplace = "$1^", CARET = R++;
21940
22050
  src[CARET] = "^" + src[LONECARET] + src[XRANGEPLAIN] + "$";
21941
22051
  var CARETLOOSE = R++;
@@ -21947,6 +22057,7 @@ var require_semver = __commonJS({
21947
22057
  var COMPARATORTRIM = R++;
21948
22058
  src[COMPARATORTRIM] = "(\\s*)" + src[GTLT] + "\\s*(" + LOOSEPLAIN + "|" + src[XRANGEPLAIN] + ")";
21949
22059
  re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], "g");
22060
+ safeRe[COMPARATORTRIM] = new RegExp(makeSafeRe(src[COMPARATORTRIM]), "g");
21950
22061
  var comparatorTrimReplace = "$1$2$3", HYPHENRANGE = R++;
21951
22062
  src[HYPHENRANGE] = "^\\s*(" + src[XRANGEPLAIN] + ")\\s+-\\s+(" + src[XRANGEPLAIN] + ")\\s*$";
21952
22063
  var HYPHENRANGELOOSE = R++;
@@ -21954,7 +22065,7 @@ var require_semver = __commonJS({
21954
22065
  var STAR = R++;
21955
22066
  src[STAR] = "(<|>)?=?\\s*\\*";
21956
22067
  for (i = 0; i < R; i++)
21957
- debug(i, src[i]), re[i] || (re[i] = new RegExp(src[i]));
22068
+ debug(i, src[i]), re[i] || (re[i] = new RegExp(src[i]), safeRe[i] = new RegExp(makeSafeRe(src[i])));
21958
22069
  var i;
21959
22070
  exports2.parse = parse6;
21960
22071
  function parse6(version2, options) {
@@ -21965,7 +22076,7 @@ var require_semver = __commonJS({
21965
22076
  return version2;
21966
22077
  if (typeof version2 != "string" || version2.length > MAX_LENGTH)
21967
22078
  return null;
21968
- var r = options.loose ? re[LOOSE] : re[FULL];
22079
+ var r = options.loose ? safeRe[LOOSE] : safeRe[FULL];
21969
22080
  if (!r.test(version2))
21970
22081
  return null;
21971
22082
  try {
@@ -22000,7 +22111,7 @@ var require_semver = __commonJS({
22000
22111
  if (!(this instanceof SemVer))
22001
22112
  return new SemVer(version2, options);
22002
22113
  debug("SemVer", version2, options), this.options = options, this.loose = !!options.loose;
22003
- var m = version2.trim().match(options.loose ? re[LOOSE] : re[FULL]);
22114
+ var m = version2.trim().match(options.loose ? safeRe[LOOSE] : safeRe[FULL]);
22004
22115
  if (!m)
22005
22116
  throw new TypeError("Invalid Version: " + version2);
22006
22117
  if (this.raw = version2, this.major = +m[1], this.minor = +m[2], this.patch = +m[3], this.major > MAX_SAFE_INTEGER || this.major < 0)
@@ -22126,12 +22237,12 @@ var require_semver = __commonJS({
22126
22237
  function rcompareIdentifiers(a, b) {
22127
22238
  return compareIdentifiers(b, a);
22128
22239
  }
22129
- exports2.major = major;
22130
- function major(a, loose) {
22240
+ exports2.major = major2;
22241
+ function major2(a, loose) {
22131
22242
  return new SemVer(a, loose).major;
22132
22243
  }
22133
- exports2.minor = minor;
22134
- function minor(a, loose) {
22244
+ exports2.minor = minor2;
22245
+ function minor2(a, loose) {
22135
22246
  return new SemVer(a, loose).minor;
22136
22247
  }
22137
22248
  exports2.patch = patch;
@@ -22223,11 +22334,11 @@ var require_semver = __commonJS({
22223
22334
  }
22224
22335
  if (!(this instanceof Comparator))
22225
22336
  return new Comparator(comp, options);
22226
- debug("comparator", comp, options), this.options = options, this.loose = !!options.loose, this.parse(comp), this.semver === ANY ? this.value = "" : this.value = this.operator + this.semver.version, debug("comp", this);
22337
+ comp = comp.trim().split(/\s+/).join(" "), debug("comparator", comp, options), this.options = options, this.loose = !!options.loose, this.parse(comp), this.semver === ANY ? this.value = "" : this.value = this.operator + this.semver.version, debug("comp", this);
22227
22338
  }
22228
22339
  var ANY = {};
22229
22340
  Comparator.prototype.parse = function(comp) {
22230
- var r = this.options.loose ? re[COMPARATORLOOSE] : re[COMPARATOR], m = comp.match(r);
22341
+ var r = this.options.loose ? safeRe[COMPARATORLOOSE] : safeRe[COMPARATOR], m = comp.match(r);
22231
22342
  if (!m)
22232
22343
  throw new TypeError("Invalid comparator: " + comp);
22233
22344
  this.operator = m[1], this.operator === "=" && (this.operator = ""), m[2] ? this.semver = new SemVer(m[2], this.options.loose) : this.semver = ANY;
@@ -22264,12 +22375,12 @@ var require_semver = __commonJS({
22264
22375
  return new Range(range.value, options);
22265
22376
  if (!(this instanceof Range))
22266
22377
  return new Range(range, options);
22267
- if (this.options = options, this.loose = !!options.loose, this.includePrerelease = !!options.includePrerelease, this.raw = range, this.set = range.split(/\s*\|\|\s*/).map(function(range2) {
22378
+ if (this.options = options, this.loose = !!options.loose, this.includePrerelease = !!options.includePrerelease, this.raw = range.trim().split(/\s+/).join(" "), this.set = this.raw.split("||").map(function(range2) {
22268
22379
  return this.parseRange(range2.trim());
22269
22380
  }, this).filter(function(c) {
22270
22381
  return c.length;
22271
22382
  }), !this.set.length)
22272
- throw new TypeError("Invalid SemVer Range: " + range);
22383
+ throw new TypeError("Invalid SemVer Range: " + this.raw);
22273
22384
  this.format();
22274
22385
  }
22275
22386
  Range.prototype.format = function() {
@@ -22281,11 +22392,9 @@ var require_semver = __commonJS({
22281
22392
  return this.range;
22282
22393
  };
22283
22394
  Range.prototype.parseRange = function(range) {
22284
- var loose = this.options.loose;
22285
- range = range.trim();
22286
- var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE];
22287
- range = range.replace(hr, hyphenReplace), debug("hyphen replace", range), range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace), debug("comparator trim", range, re[COMPARATORTRIM]), range = range.replace(re[TILDETRIM], tildeTrimReplace), range = range.replace(re[CARETTRIM], caretTrimReplace), range = range.split(/\s+/).join(" ");
22288
- var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR], set = range.split(" ").map(function(comp) {
22395
+ var loose = this.options.loose, hr = loose ? safeRe[HYPHENRANGELOOSE] : safeRe[HYPHENRANGE];
22396
+ range = range.replace(hr, hyphenReplace), debug("hyphen replace", range), range = range.replace(safeRe[COMPARATORTRIM], comparatorTrimReplace), debug("comparator trim", range, safeRe[COMPARATORTRIM]), range = range.replace(safeRe[TILDETRIM], tildeTrimReplace), range = range.replace(safeRe[CARETTRIM], caretTrimReplace);
22397
+ var compRe = loose ? safeRe[COMPARATORLOOSE] : safeRe[COMPARATOR], set = range.split(" ").map(function(comp) {
22289
22398
  return parseComparator(comp, this.options);
22290
22399
  }, this).join(" ").split(/\s+/);
22291
22400
  return this.options.loose && (set = set.filter(function(comp) {
@@ -22327,7 +22436,7 @@ var require_semver = __commonJS({
22327
22436
  }).join(" ");
22328
22437
  }
22329
22438
  function replaceTilde(comp, options) {
22330
- var r = options.loose ? re[TILDELOOSE] : re[TILDE];
22439
+ var r = options.loose ? safeRe[TILDELOOSE] : safeRe[TILDE];
22331
22440
  return comp.replace(r, function(_, M, m, p, pr) {
22332
22441
  debug("tilde", comp, _, M, m, p, pr);
22333
22442
  var ret;
@@ -22341,7 +22450,7 @@ var require_semver = __commonJS({
22341
22450
  }
22342
22451
  function replaceCaret(comp, options) {
22343
22452
  debug("caret", comp, options);
22344
- var r = options.loose ? re[CARETLOOSE] : re[CARET];
22453
+ var r = options.loose ? safeRe[CARETLOOSE] : safeRe[CARET];
22345
22454
  return comp.replace(r, function(_, M, m, p, pr) {
22346
22455
  debug("caret", comp, _, M, m, p, pr);
22347
22456
  var ret;
@@ -22355,7 +22464,7 @@ var require_semver = __commonJS({
22355
22464
  }
22356
22465
  function replaceXRange(comp, options) {
22357
22466
  comp = comp.trim();
22358
- var r = options.loose ? re[XRANGELOOSE] : re[XRANGE];
22467
+ var r = options.loose ? safeRe[XRANGELOOSE] : safeRe[XRANGE];
22359
22468
  return comp.replace(r, function(ret, gtlt, M, m, p, pr) {
22360
22469
  debug("xRange", comp, ret, gtlt, M, m, p, pr);
22361
22470
  var xM = isX(M), xm = xM || isX(m), xp = xm || isX(p), anyX = xp;
@@ -22363,7 +22472,7 @@ var require_semver = __commonJS({
22363
22472
  });
22364
22473
  }
22365
22474
  function replaceStars(comp, options) {
22366
- return debug("replaceStars", comp, options), comp.trim().replace(re[STAR], "");
22475
+ return debug("replaceStars", comp, options), comp.trim().replace(safeRe[STAR], "");
22367
22476
  }
22368
22477
  function hyphenReplace($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) {
22369
22478
  return isX(fM) ? from = "" : isX(fm) ? from = ">=" + fM + ".0.0" : isX(fp) ? from = ">=" + fM + "." + fm + ".0" : from = ">=" + from, isX(tM) ? to = "" : isX(tm) ? to = "<" + (+tM + 1) + ".0.0" : isX(tp) ? to = "<" + tM + "." + (+tm + 1) + ".0" : tpr ? to = "<=" + tM + "." + tm + "." + tp + "-" + tpr : to = "<=" + to, (from + " " + to).trim();
@@ -22513,7 +22622,7 @@ var require_semver = __commonJS({
22513
22622
  return version2;
22514
22623
  if (typeof version2 != "string")
22515
22624
  return null;
22516
- var match2 = version2.match(re[COERCE]);
22625
+ var match2 = version2.match(safeRe[COERCE]);
22517
22626
  return match2 == null ? null : parse6(match2[1] + "." + (match2[2] || "0") + "." + (match2[3] || "0"));
22518
22627
  }
22519
22628
  }
@@ -22766,9 +22875,9 @@ var require_yocto_queue = __commonJS({
22766
22875
  }
22767
22876
  });
22768
22877
 
22769
- // ../../../node_modules/find-up/node_modules/p-limit/index.js
22878
+ // ../../../node_modules/@expo/package-manager/node_modules/p-limit/index.js
22770
22879
  var require_p_limit = __commonJS({
22771
- "../../../node_modules/find-up/node_modules/p-limit/index.js"(exports2, module2) {
22880
+ "../../../node_modules/@expo/package-manager/node_modules/p-limit/index.js"(exports2, module2) {
22772
22881
  "use strict";
22773
22882
  var Queue = require_yocto_queue(), pLimit = (concurrency) => {
22774
22883
  if (!((Number.isInteger(concurrency) || concurrency === 1 / 0) && concurrency > 0))
@@ -22807,9 +22916,9 @@ var require_p_limit = __commonJS({
22807
22916
  }
22808
22917
  });
22809
22918
 
22810
- // ../../../node_modules/find-up/node_modules/p-locate/index.js
22919
+ // ../../../node_modules/@expo/package-manager/node_modules/p-locate/index.js
22811
22920
  var require_p_locate = __commonJS({
22812
- "../../../node_modules/find-up/node_modules/p-locate/index.js"(exports2, module2) {
22921
+ "../../../node_modules/@expo/package-manager/node_modules/p-locate/index.js"(exports2, module2) {
22813
22922
  "use strict";
22814
22923
  var pLimit = require_p_limit(), EndError = class extends Error {
22815
22924
  constructor(value) {
@@ -22839,9 +22948,9 @@ var require_p_locate = __commonJS({
22839
22948
  }
22840
22949
  });
22841
22950
 
22842
- // ../../../node_modules/find-up/node_modules/locate-path/index.js
22951
+ // ../../../node_modules/@expo/package-manager/node_modules/locate-path/index.js
22843
22952
  var require_locate_path = __commonJS({
22844
- "../../../node_modules/find-up/node_modules/locate-path/index.js"(exports2, module2) {
22953
+ "../../../node_modules/@expo/package-manager/node_modules/locate-path/index.js"(exports2, module2) {
22845
22954
  "use strict";
22846
22955
  var path6 = require("path"), fs7 = require("fs"), { promisify: promisify2 } = require("util"), pLocate = require_p_locate(), fsStat = promisify2(fs7.stat), fsLStat = promisify2(fs7.lstat), typeMappings = {
22847
22956
  directory: "isDirectory",
@@ -22910,9 +23019,9 @@ var require_path_exists2 = __commonJS({
22910
23019
  }
22911
23020
  });
22912
23021
 
22913
- // ../../../node_modules/find-up/index.js
23022
+ // ../../../node_modules/@expo/package-manager/node_modules/find-up/index.js
22914
23023
  var require_find_up = __commonJS({
22915
- "../../../node_modules/find-up/index.js"(exports2, module2) {
23024
+ "../../../node_modules/@expo/package-manager/node_modules/find-up/index.js"(exports2, module2) {
22916
23025
  "use strict";
22917
23026
  var path6 = require("path"), locatePath = require_locate_path(), pathExists3 = require_path_exists2(), stop = Symbol("findUp.stop");
22918
23027
  module2.exports = async (name, options = {}) => {
@@ -23900,8 +24009,8 @@ var require_loader = __commonJS({
23900
24009
  }
23901
24010
  var directiveHandlers = {
23902
24011
  YAML: function(state, name, args) {
23903
- var match2, major, minor;
23904
- state.version !== null && throwError(state, "duplication of %YAML directive"), args.length !== 1 && throwError(state, "YAML directive accepts exactly one argument"), match2 = /^([0-9]+)\.([0-9]+)$/.exec(args[0]), match2 === null && throwError(state, "ill-formed argument of the YAML directive"), major = parseInt(match2[1], 10), minor = parseInt(match2[2], 10), major !== 1 && throwError(state, "unacceptable YAML version of the document"), state.version = args[0], state.checkLineBreaks = minor < 2, minor !== 1 && minor !== 2 && throwWarning(state, "unsupported YAML version of the document");
24012
+ var match2, major2, minor2;
24013
+ state.version !== null && throwError(state, "duplication of %YAML directive"), args.length !== 1 && throwError(state, "YAML directive accepts exactly one argument"), match2 = /^([0-9]+)\.([0-9]+)$/.exec(args[0]), match2 === null && throwError(state, "ill-formed argument of the YAML directive"), major2 = parseInt(match2[1], 10), minor2 = parseInt(match2[2], 10), major2 !== 1 && throwError(state, "unacceptable YAML version of the document"), state.version = args[0], state.checkLineBreaks = minor2 < 2, minor2 !== 1 && minor2 !== 2 && throwWarning(state, "unsupported YAML version of the document");
23905
24014
  },
23906
24015
  TAG: function(state, name, args) {
23907
24016
  var handle, prefix;
@@ -25005,7 +25114,7 @@ var require_build = __commonJS({
25005
25114
  });
25006
25115
 
25007
25116
  // src/index.ts
25008
- var import_node_child_process3 = require("node:child_process"), import_node_fs3 = __toESM(require("node:fs")), import_node_path5 = __toESM(require("node:path")), import_node_process3 = require("node:process"), import_chalk15 = __toESM(require_source()), import_commander = __toESM(require_commander());
25117
+ var import_node_child_process3 = require("node:child_process"), import_node_fs3 = __toESM(require("node:fs")), import_node_path5 = __toESM(require("node:path")), import_node_process3 = require("node:process"), import_chalk13 = __toESM(require_source()), import_commander = __toESM(require_commander());
25009
25118
 
25010
25119
  // ../../../node_modules/detect-package-manager/dist/index.mjs
25011
25120
  var import_fs = require("fs"), import_path = require("path"), import_execa = __toESM(require_execa(), 1);
@@ -25238,7 +25347,7 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = !0 } = {}) {
25238
25347
  return Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586 ? Number(osRelease[2]) >= 14931 ? 3 : 2 : 1;
25239
25348
  }
25240
25349
  if ("CI" in env)
25241
- return "GITHUB_ACTIONS" in env ? 3 : ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship" ? 1 : min;
25350
+ return "GITHUB_ACTIONS" in env || "GITEA_ACTIONS" in env ? 3 : ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship" ? 1 : min;
25242
25351
  if ("TEAMCITY_VERSION" in env)
25243
25352
  return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
25244
25353
  if (env.COLORTERM === "truecolor" || env.TERM === "xterm-kitty")
@@ -26082,7 +26191,7 @@ var globby2 = Object.assign(function(patterns, options) {
26082
26191
  // package.json
26083
26192
  var package_default = {
26084
26193
  name: "create-tamagui",
26085
- version: "1.110.2",
26194
+ version: "1.110.4",
26086
26195
  bin: "./run.js",
26087
26196
  main: "dist",
26088
26197
  files: [
@@ -26105,7 +26214,7 @@ var package_default = {
26105
26214
  devDependencies: {
26106
26215
  "@expo/package-manager": "^1.1.2",
26107
26216
  "@playwright/test": "^1.45.2",
26108
- "@tamagui/build": "1.110.2",
26217
+ "@tamagui/build": "1.110.4",
26109
26218
  "@types/async-retry": "1.4.2",
26110
26219
  "@types/cross-spawn": "^6.0.2",
26111
26220
  "@types/node": "^22.1.0",
@@ -26145,10 +26254,10 @@ var package_default = {
26145
26254
  var IS_TEST = process.env.NODE_ENV === "test";
26146
26255
 
26147
26256
  // src/helpers/asciiArts.ts
26148
- var import_chalk6 = __toESM(require_source());
26257
+ var import_chalk4 = __toESM(require_source());
26149
26258
 
26150
26259
  // src/helpers/rainbowChalk.ts
26151
- var import_chalk5 = __toESM(require_source()), rainbowColors = [
26260
+ var import_chalk3 = __toESM(require_source()), rainbowColors = [
26152
26261
  "#f76808",
26153
26262
  "#f5d90a",
26154
26263
  "#30a46c",
@@ -26160,7 +26269,7 @@ var import_chalk5 = __toESM(require_source()), rainbowColors = [
26160
26269
 
26161
26270
  // src/helpers/asciiArts.ts
26162
26271
  var tamaguiRainbowAsciiArt = function() {
26163
- let char0_1 = import_chalk6.default.hex(rainbowColors[0])("\u2580\u2588\u2580"), char0_2 = import_chalk6.default.hex(rainbowColors[0])(" \u2588 "), char1_1 = import_chalk6.default.hex(rainbowColors[1])("\u2584\u2580\u2588"), char1_2 = import_chalk6.default.hex(rainbowColors[1])("\u2588\u2580\u2588"), char2_1 = import_chalk6.default.hex(rainbowColors[2])("\u2588\u2580\u2584\u2580\u2588"), char2_2 = import_chalk6.default.hex(rainbowColors[2])("\u2588 \u2580 \u2588"), char3_1 = import_chalk6.default.hex(rainbowColors[3])("\u2584\u2580\u2588"), char3_2 = import_chalk6.default.hex(rainbowColors[3])("\u2588\u2580\u2588"), char4_1 = import_chalk6.default.hex(rainbowColors[4])("\u2588\u2580\u2580"), char4_2 = import_chalk6.default.hex(rainbowColors[4])("\u2588\u2584\u2588"), char5_1 = import_chalk6.default.hex(rainbowColors[5])("\u2588 \u2588"), char5_2 = import_chalk6.default.hex(rainbowColors[5])("\u2588\u2584\u2588"), char6_1 = import_chalk6.default.hex(rainbowColors[6])("\u2588"), char6_2 = import_chalk6.default.hex(rainbowColors[6])("\u2588");
26272
+ let char0_1 = import_chalk4.default.hex(rainbowColors[0])("\u2580\u2588\u2580"), char0_2 = import_chalk4.default.hex(rainbowColors[0])(" \u2588 "), char1_1 = import_chalk4.default.hex(rainbowColors[1])("\u2584\u2580\u2588"), char1_2 = import_chalk4.default.hex(rainbowColors[1])("\u2588\u2580\u2588"), char2_1 = import_chalk4.default.hex(rainbowColors[2])("\u2588\u2580\u2584\u2580\u2588"), char2_2 = import_chalk4.default.hex(rainbowColors[2])("\u2588 \u2580 \u2588"), char3_1 = import_chalk4.default.hex(rainbowColors[3])("\u2584\u2580\u2588"), char3_2 = import_chalk4.default.hex(rainbowColors[3])("\u2588\u2580\u2588"), char4_1 = import_chalk4.default.hex(rainbowColors[4])("\u2588\u2580\u2580"), char4_2 = import_chalk4.default.hex(rainbowColors[4])("\u2588\u2584\u2588"), char5_1 = import_chalk4.default.hex(rainbowColors[5])("\u2588 \u2588"), char5_2 = import_chalk4.default.hex(rainbowColors[5])("\u2588\u2584\u2588"), char6_1 = import_chalk4.default.hex(rainbowColors[6])("\u2588"), char6_2 = import_chalk4.default.hex(rainbowColors[6])("\u2588");
26164
26273
  return `${char0_1}\u2003${char1_1}\u2003${char2_1}\u2003${char3_1}\u2003${char4_1}\u2003${char5_1}\u2003${char6_1}
26165
26274
  ${char0_2}\u2003${char1_2}\u2003${char2_2}\u2003${char3_2}\u2003${char4_2}\u2003${char5_2}\u2003${char6_2}
26166
26275
  `;
@@ -26180,72 +26289,7 @@ ${char0_2}\u2003${char1_2}\u2003${char2_2}\u2003${char3_2}\u2003${char4_2}\u2003
26180
26289
  \u2588\u2588 \u2588\u2588 `;
26181
26290
 
26182
26291
  // src/helpers/cloneStarter.ts
26183
- var import_node_child_process2 = require("node:child_process"), import_node_os2 = require("node:os"), import_node_path4 = require("node:path"), import_chalk7 = __toESM(require_source()), import_fs_extra = __toESM(require_lib());
26184
-
26185
- // ../../../node_modules/rimraf/dist/mjs/opt-arg.js
26186
- var optArgT = (opt) => {
26187
- assertRimrafOptions(opt);
26188
- let { glob: glob2, ...options } = opt;
26189
- if (!glob2)
26190
- return options;
26191
- let globOpt = glob2 === !0 ? opt.signal ? { signal: opt.signal } : {} : opt.signal ? {
26192
- signal: opt.signal,
26193
- ...glob2
26194
- } : glob2;
26195
- return {
26196
- ...options,
26197
- glob: {
26198
- ...globOpt,
26199
- // always get absolute paths from glob, to ensure
26200
- // that we are referencing the correct thing.
26201
- absolute: !0,
26202
- withFileTypes: !1
26203
- }
26204
- };
26205
- }, optArg = (opt = {}) => optArgT(opt), optArgSync = (opt = {}) => optArgT(opt);
26206
-
26207
- // ../../../node_modules/rimraf/dist/mjs/path-arg.js
26208
- var import_path2 = require("path"), import_util4 = require("util");
26209
-
26210
- // ../../../node_modules/rimraf/dist/mjs/platform.js
26211
- var platform_default = process.env.__TESTING_RIMRAF_PLATFORM__ || process.platform;
26212
-
26213
- // ../../../node_modules/rimraf/dist/mjs/path-arg.js
26214
- var pathArg = (path6, opt = {}) => {
26215
- let type = typeof path6;
26216
- if (type !== "string") {
26217
- let ctor = path6 && type === "object" && path6.constructor, msg = `The "path" argument must be of type string. Received ${ctor && ctor.name ? `an instance of ${ctor.name}` : type === "object" ? (0, import_util4.inspect)(path6) : `type ${type} ${path6}`}`;
26218
- throw Object.assign(new TypeError(msg), {
26219
- path: path6,
26220
- code: "ERR_INVALID_ARG_TYPE"
26221
- });
26222
- }
26223
- if (/\0/.test(path6)) {
26224
- let msg = "path must be a string without null bytes";
26225
- throw Object.assign(new TypeError(msg), {
26226
- path: path6,
26227
- code: "ERR_INVALID_ARG_VALUE"
26228
- });
26229
- }
26230
- path6 = (0, import_path2.resolve)(path6);
26231
- let { root } = (0, import_path2.parse)(path6);
26232
- if (path6 === root && opt.preserveRoot !== !1) {
26233
- let msg = "refusing to remove root directory without preserveRoot:false";
26234
- throw Object.assign(new Error(msg), {
26235
- path: path6,
26236
- code: "ERR_PRESERVE_ROOT"
26237
- });
26238
- }
26239
- if (platform_default === "win32") {
26240
- let badWinChars = /[*|"<>?:]/, { root: root2 } = (0, import_path2.parse)(path6);
26241
- if (badWinChars.test(path6.substring(root2.length)))
26242
- throw Object.assign(new Error("Illegal characters in path."), {
26243
- path: path6,
26244
- code: "EINVAL"
26245
- });
26246
- }
26247
- return path6;
26248
- }, path_arg_default = pathArg;
26292
+ var import_node_child_process2 = require("node:child_process"), import_node_os2 = require("node:os"), import_node_path4 = require("node:path"), import_chalk5 = __toESM(require_source()), import_fs_extra = __toESM(require_lib());
26249
26293
 
26250
26294
  // ../../../node_modules/rimraf/node_modules/minimatch/dist/esm/index.js
26251
26295
  var import_brace_expansion = __toESM(require_brace_expansion(), 1);
@@ -27155,14 +27199,13 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27155
27199
  return this.heap[--this.length];
27156
27200
  }
27157
27201
  }, LRUCache = class _LRUCache {
27158
- // properties coming in from the options of these, only max and maxSize
27159
- // really *need* to be protected. The rest can be modified, as they just
27160
- // set defaults for various methods.
27202
+ // options that cannot be changed without disaster
27161
27203
  #max;
27162
27204
  #maxSize;
27163
27205
  #dispose;
27164
27206
  #disposeAfter;
27165
27207
  #fetchMethod;
27208
+ #memoMethod;
27166
27209
  /**
27167
27210
  * {@link LRUCache.OptionsBase.ttl}
27168
27211
  */
@@ -27308,6 +27351,9 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27308
27351
  get fetchMethod() {
27309
27352
  return this.#fetchMethod;
27310
27353
  }
27354
+ get memoMethod() {
27355
+ return this.#memoMethod;
27356
+ }
27311
27357
  /**
27312
27358
  * {@link LRUCache.OptionsBase.dispose} (read-only)
27313
27359
  */
@@ -27321,7 +27367,7 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27321
27367
  return this.#disposeAfter;
27322
27368
  }
27323
27369
  constructor(options) {
27324
- let { max = 0, ttl, ttlResolution = 1, ttlAutopurge, updateAgeOnGet, updateAgeOnHas, allowStale, dispose, disposeAfter, noDisposeOnSet, noUpdateTTL, maxSize = 0, maxEntrySize = 0, sizeCalculation, fetchMethod, noDeleteOnFetchRejection, noDeleteOnStaleGet, allowStaleOnFetchRejection, allowStaleOnFetchAbort, ignoreFetchAbort } = options;
27370
+ let { max = 0, ttl, ttlResolution = 1, ttlAutopurge, updateAgeOnGet, updateAgeOnHas, allowStale, dispose, disposeAfter, noDisposeOnSet, noUpdateTTL, maxSize = 0, maxEntrySize = 0, sizeCalculation, fetchMethod, memoMethod, noDeleteOnFetchRejection, noDeleteOnStaleGet, allowStaleOnFetchRejection, allowStaleOnFetchAbort, ignoreFetchAbort } = options;
27325
27371
  if (max !== 0 && !isPosInt(max))
27326
27372
  throw new TypeError("max option must be a nonnegative integer");
27327
27373
  let UintArray = max ? getUintArray(max) : Array;
@@ -27333,7 +27379,9 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27333
27379
  if (typeof this.sizeCalculation != "function")
27334
27380
  throw new TypeError("sizeCalculation set to non-function");
27335
27381
  }
27336
- if (fetchMethod !== void 0 && typeof fetchMethod != "function")
27382
+ if (memoMethod !== void 0 && typeof memoMethod != "function")
27383
+ throw new TypeError("memoMethod must be a function if defined");
27384
+ if (this.#memoMethod = memoMethod, fetchMethod !== void 0 && typeof fetchMethod != "function")
27337
27385
  throw new TypeError("fetchMethod must be a function if specified");
27338
27386
  if (this.#fetchMethod = fetchMethod, this.#hasFetchMethod = !!fetchMethod, this.#keyMap = /* @__PURE__ */ new Map(), this.#keyList = new Array(max).fill(void 0), this.#valList = new Array(max).fill(void 0), this.#next = new UintArray(max), this.#prev = new UintArray(max), this.#head = 0, this.#tail = 0, this.#free = Stack.create(max), this.#size = 0, this.#calculatedSize = 0, typeof dispose == "function" && (this.#dispose = dispose), typeof disposeAfter == "function" ? (this.#disposeAfter = disposeAfter, this.#disposed = []) : (this.#disposeAfter = void 0, this.#disposed = void 0), this.#hasDispose = !!this.#dispose, this.#hasDisposeAfter = !!this.#disposeAfter, this.noDisposeOnSet = !!noDisposeOnSet, this.noUpdateTTL = !!noUpdateTTL, this.noDeleteOnFetchRejection = !!noDeleteOnFetchRejection, this.allowStaleOnFetchRejection = !!allowStaleOnFetchRejection, this.allowStaleOnFetchAbort = !!allowStaleOnFetchAbort, this.ignoreFetchAbort = !!ignoreFetchAbort, this.maxEntrySize !== 0) {
27339
27387
  if (this.#maxSize !== 0 && !isPosInt(this.#maxSize))
@@ -27355,7 +27403,8 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27355
27403
  }
27356
27404
  }
27357
27405
  /**
27358
- * Return the remaining TTL time for a given entry key
27406
+ * Return the number of ms left in the item's TTL. If item is not in cache,
27407
+ * returns `0`. Returns `Infinity` if item is in cache without a defined TTL.
27359
27408
  */
27360
27409
  getRemainingTTL(key) {
27361
27410
  return this.#keyMap.has(key) ? 1 / 0 : 0;
@@ -27365,7 +27414,7 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27365
27414
  this.#ttls = ttls, this.#starts = starts, this.#setItemTTL = (index, ttl, start = perf.now()) => {
27366
27415
  if (starts[index] = ttl !== 0 ? start : 0, ttls[index] = ttl, ttl !== 0 && this.ttlAutopurge) {
27367
27416
  let t = setTimeout(() => {
27368
- this.#isStale(index) && this.delete(this.#keyList[index]);
27417
+ this.#isStale(index) && this.#delete(this.#keyList[index], "expire");
27369
27418
  }, ttl + 1);
27370
27419
  t.unref && t.unref();
27371
27420
  }
@@ -27526,13 +27575,14 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27526
27575
  return this.entries();
27527
27576
  }
27528
27577
  /**
27529
- * A String value that is used in the creation of the default string description of an object.
27530
- * Called by the built-in method Object.prototype.toString.
27578
+ * A String value that is used in the creation of the default string
27579
+ * description of an object. Called by the built-in method
27580
+ * `Object.prototype.toString`.
27531
27581
  */
27532
27582
  [Symbol.toStringTag] = "LRUCache";
27533
27583
  /**
27534
27584
  * Find a value for which the supplied fn method returns a truthy value,
27535
- * similar to Array.find(). fn is called as fn(value, key, cache).
27585
+ * similar to `Array.find()`. fn is called as `fn(value, key, cache)`.
27536
27586
  */
27537
27587
  find(fn, getOptions = {}) {
27538
27588
  for (let i of this.#indexes()) {
@@ -27542,10 +27592,15 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27542
27592
  }
27543
27593
  }
27544
27594
  /**
27545
- * Call the supplied function on each item in the cache, in order from
27546
- * most recently used to least recently used. fn is called as
27547
- * fn(value, key, cache). Does not update age or recenty of use.
27548
- * Does not iterate over stale values.
27595
+ * Call the supplied function on each item in the cache, in order from most
27596
+ * recently used to least recently used.
27597
+ *
27598
+ * `fn` is called as `fn(value, key, cache)`.
27599
+ *
27600
+ * If `thisp` is provided, function will be called in the `this`-context of
27601
+ * the provided object, or the cache if no `thisp` object is provided.
27602
+ *
27603
+ * Does not update age or recenty of use, or iterate over stale values.
27549
27604
  */
27550
27605
  forEach(fn, thisp = this) {
27551
27606
  for (let i of this.#indexes()) {
@@ -27570,14 +27625,20 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27570
27625
  purgeStale() {
27571
27626
  let deleted = !1;
27572
27627
  for (let i of this.#rindexes({ allowStale: !0 }))
27573
- this.#isStale(i) && (this.delete(this.#keyList[i]), deleted = !0);
27628
+ this.#isStale(i) && (this.#delete(this.#keyList[i], "expire"), deleted = !0);
27574
27629
  return deleted;
27575
27630
  }
27576
27631
  /**
27577
27632
  * Get the extended info about a given entry, to get its value, size, and
27578
- * TTL info simultaneously. Like {@link LRUCache#dump}, but just for a
27579
- * single key. Always returns stale values, if their info is found in the
27580
- * cache, so be sure to check for expired TTLs if relevant.
27633
+ * TTL info simultaneously. Returns `undefined` if the key is not present.
27634
+ *
27635
+ * Unlike {@link LRUCache#dump}, which is designed to be portable and survive
27636
+ * serialization, the `start` value is always the current timestamp, and the
27637
+ * `ttl` is a calculated remaining time to live (negative if expired).
27638
+ *
27639
+ * Always returns stale values, if their info is found in the cache, so be
27640
+ * sure to check for expirations (ie, a negative {@link LRUCache.Entry#ttl})
27641
+ * if relevant.
27581
27642
  */
27582
27643
  info(key) {
27583
27644
  let i = this.#keyMap.get(key);
@@ -27598,7 +27659,16 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27598
27659
  }
27599
27660
  /**
27600
27661
  * Return an array of [key, {@link LRUCache.Entry}] tuples which can be
27601
- * passed to cache.load()
27662
+ * passed to {@link LRLUCache#load}.
27663
+ *
27664
+ * The `start` fields are calculated relative to a portable `Date.now()`
27665
+ * timestamp, even if `performance.now()` is available.
27666
+ *
27667
+ * Stale entries are always included in the `dump`, even if
27668
+ * {@link LRUCache.OptionsBase.allowStale} is false.
27669
+ *
27670
+ * Note: this returns an actual array, not a generator, so it can be more
27671
+ * easily passed around.
27602
27672
  */
27603
27673
  dump() {
27604
27674
  let arr = [];
@@ -27618,8 +27688,12 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27618
27688
  }
27619
27689
  /**
27620
27690
  * Reset the cache and load in the items in entries in the order listed.
27621
- * Note that the shape of the resulting cache may be different if the
27622
- * same options are not used in both caches.
27691
+ *
27692
+ * The shape of the resulting cache may be different if the same options are
27693
+ * not used in both caches.
27694
+ *
27695
+ * The `start` fields are assumed to be calculated relative to a portable
27696
+ * `Date.now()` timestamp, even if `performance.now()` is available.
27623
27697
  */
27624
27698
  load(arr) {
27625
27699
  this.clear();
@@ -27636,13 +27710,37 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27636
27710
  *
27637
27711
  * Note: if `undefined` is specified as a value, this is an alias for
27638
27712
  * {@link LRUCache#delete}
27713
+ *
27714
+ * Fields on the {@link LRUCache.SetOptions} options param will override
27715
+ * their corresponding values in the constructor options for the scope
27716
+ * of this single `set()` operation.
27717
+ *
27718
+ * If `start` is provided, then that will set the effective start
27719
+ * time for the TTL calculation. Note that this must be a previous
27720
+ * value of `performance.now()` if supported, or a previous value of
27721
+ * `Date.now()` if not.
27722
+ *
27723
+ * Options object may also include `size`, which will prevent
27724
+ * calling the `sizeCalculation` function and just use the specified
27725
+ * number if it is a positive integer, and `noDisposeOnSet` which
27726
+ * will prevent calling a `dispose` function in the case of
27727
+ * overwrites.
27728
+ *
27729
+ * If the `size` (or return value of `sizeCalculation`) for a given
27730
+ * entry is greater than `maxEntrySize`, then the item will not be
27731
+ * added to the cache.
27732
+ *
27733
+ * Will update the recency of the entry.
27734
+ *
27735
+ * If the value is `undefined`, then this is an alias for
27736
+ * `cache.delete(key)`. `undefined` is never stored in the cache.
27639
27737
  */
27640
27738
  set(k, v, setOptions = {}) {
27641
27739
  if (v === void 0)
27642
27740
  return this.delete(k), this;
27643
27741
  let { ttl = this.ttl, start, noDisposeOnSet = this.noDisposeOnSet, sizeCalculation = this.sizeCalculation, status } = setOptions, { noUpdateTTL = this.noUpdateTTL } = setOptions, size = this.#requireSize(k, v, setOptions.size || 0, sizeCalculation);
27644
27742
  if (this.maxEntrySize && size > this.maxEntrySize)
27645
- return status && (status.set = "miss", status.maxEntrySizeExceeded = !0), this.delete(k), this;
27743
+ return status && (status.set = "miss", status.maxEntrySizeExceeded = !0), this.#delete(k, "set"), this;
27646
27744
  let index = this.#size === 0 ? void 0 : this.#keyMap.get(k);
27647
27745
  if (index === void 0)
27648
27746
  index = this.#size === 0 ? this.#tail : this.#free.length !== 0 ? this.#free.pop() : this.#size === this.#max ? this.#evict(!1) : this.#size, this.#keyList[index] = k, this.#valList[index] = v, this.#keyMap.set(k, index), this.#next[this.#tail] = index, this.#prev[index] = this.#tail, this.#tail = index, this.#size++, this.#addItemSize(index, size, status), status && (status.set = "add"), noUpdateTTL = !1;
@@ -27700,6 +27798,14 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27700
27798
  * Will return false if the item is stale, even though it is technically
27701
27799
  * in the cache.
27702
27800
  *
27801
+ * Check if a key is in the cache, without updating the recency of
27802
+ * use. Age is updated if {@link LRUCache.OptionsBase.updateAgeOnHas} is set
27803
+ * to `true` in either the options or the constructor.
27804
+ *
27805
+ * Will return `false` if the item is stale, even though it is technically in
27806
+ * the cache. The difference can be determined (if it matters) by using a
27807
+ * `status` argument, and inspecting the `has` field.
27808
+ *
27703
27809
  * Will not update item age unless
27704
27810
  * {@link LRUCache.OptionsBase.updateAgeOnHas} is set.
27705
27811
  */
@@ -27746,10 +27852,10 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27746
27852
  if (options.status && (aborted && !updateCache ? (options.status.fetchAborted = !0, options.status.fetchError = ac.signal.reason, ignoreAbort && (options.status.fetchAbortIgnored = !0)) : options.status.fetchResolved = !0), aborted && !ignoreAbort && !updateCache)
27747
27853
  return fetchFail(ac.signal.reason);
27748
27854
  let bf2 = p;
27749
- return this.#valList[index] === p && (v2 === void 0 ? bf2.__staleWhileFetching ? this.#valList[index] = bf2.__staleWhileFetching : this.delete(k) : (options.status && (options.status.fetchUpdated = !0), this.set(k, v2, fetchOpts.options))), v2;
27855
+ return this.#valList[index] === p && (v2 === void 0 ? bf2.__staleWhileFetching ? this.#valList[index] = bf2.__staleWhileFetching : this.#delete(k, "fetch") : (options.status && (options.status.fetchUpdated = !0), this.set(k, v2, fetchOpts.options))), v2;
27750
27856
  }, eb = (er) => (options.status && (options.status.fetchRejected = !0, options.status.fetchError = er), fetchFail(er)), fetchFail = (er) => {
27751
27857
  let { aborted } = ac.signal, allowStaleAborted = aborted && options.allowStaleOnFetchAbort, allowStale = allowStaleAborted || options.allowStaleOnFetchRejection, noDelete = allowStale || options.noDeleteOnFetchRejection, bf2 = p;
27752
- if (this.#valList[index] === p && (!noDelete || bf2.__staleWhileFetching === void 0 ? this.delete(k) : allowStaleAborted || (this.#valList[index] = bf2.__staleWhileFetching)), allowStale)
27858
+ if (this.#valList[index] === p && (!noDelete || bf2.__staleWhileFetching === void 0 ? this.#delete(k, "fetch") : allowStaleAborted || (this.#valList[index] = bf2.__staleWhileFetching)), allowStale)
27753
27859
  return options.status && bf2.__staleWhileFetching !== void 0 && (options.status.returnedStale = !0), bf2.__staleWhileFetching;
27754
27860
  if (bf2.__returned === bf2)
27755
27861
  throw er;
@@ -27835,6 +27941,25 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27835
27941
  return status && (status.fetch = isStale ? "stale" : "refresh", staleVal && isStale && (status.returnedStale = !0)), staleVal ? p.__staleWhileFetching : p.__returned = p;
27836
27942
  }
27837
27943
  }
27944
+ async forceFetch(k, fetchOptions = {}) {
27945
+ let v = await this.fetch(k, fetchOptions);
27946
+ if (v === void 0)
27947
+ throw new Error("fetch() returned undefined");
27948
+ return v;
27949
+ }
27950
+ memo(k, memoOptions = {}) {
27951
+ let memoMethod = this.#memoMethod;
27952
+ if (!memoMethod)
27953
+ throw new Error("no memoMethod provided to constructor");
27954
+ let { context, forceRefresh, ...options } = memoOptions, v = this.get(k, options);
27955
+ if (!forceRefresh && v !== void 0)
27956
+ return v;
27957
+ let vv = memoMethod(k, v, {
27958
+ options,
27959
+ context
27960
+ });
27961
+ return this.set(k, vv, options), vv;
27962
+ }
27838
27963
  /**
27839
27964
  * Return a value from the cache. Will update the recency of the cache
27840
27965
  * entry found.
@@ -27845,7 +27970,7 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27845
27970
  let { allowStale = this.allowStale, updateAgeOnGet = this.updateAgeOnGet, noDeleteOnStaleGet = this.noDeleteOnStaleGet, status } = getOptions, index = this.#keyMap.get(k);
27846
27971
  if (index !== void 0) {
27847
27972
  let value = this.#valList[index], fetching = this.#isBackgroundFetch(value);
27848
- return status && this.#statusTTL(status, index), this.#isStale(index) ? (status && (status.get = "stale"), fetching ? (status && allowStale && value.__staleWhileFetching !== void 0 && (status.returnedStale = !0), allowStale ? value.__staleWhileFetching : void 0) : (noDeleteOnStaleGet || this.delete(k), status && allowStale && (status.returnedStale = !0), allowStale ? value : void 0)) : (status && (status.get = "hit"), fetching ? value.__staleWhileFetching : (this.#moveToTail(index), updateAgeOnGet && this.#updateItemAge(index), value));
27973
+ return status && this.#statusTTL(status, index), this.#isStale(index) ? (status && (status.get = "stale"), fetching ? (status && allowStale && value.__staleWhileFetching !== void 0 && (status.returnedStale = !0), allowStale ? value.__staleWhileFetching : void 0) : (noDeleteOnStaleGet || this.#delete(k, "expire"), status && allowStale && (status.returnedStale = !0), allowStale ? value : void 0)) : (status && (status.get = "hit"), fetching ? value.__staleWhileFetching : (this.#moveToTail(index), updateAgeOnGet && this.#updateItemAge(index), value));
27849
27974
  } else status && (status.get = "miss");
27850
27975
  }
27851
27976
  #connect(p, n) {
@@ -27856,19 +27981,23 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27856
27981
  }
27857
27982
  /**
27858
27983
  * Deletes a key out of the cache.
27984
+ *
27859
27985
  * Returns true if the key was deleted, false otherwise.
27860
27986
  */
27861
27987
  delete(k) {
27988
+ return this.#delete(k, "delete");
27989
+ }
27990
+ #delete(k, reason) {
27862
27991
  let deleted = !1;
27863
27992
  if (this.#size !== 0) {
27864
27993
  let index = this.#keyMap.get(k);
27865
27994
  if (index !== void 0)
27866
27995
  if (deleted = !0, this.#size === 1)
27867
- this.clear();
27996
+ this.#clear(reason);
27868
27997
  else {
27869
27998
  this.#removeItemSize(index);
27870
27999
  let v = this.#valList[index];
27871
- if (this.#isBackgroundFetch(v) ? v.__abortController.abort(new Error("deleted")) : (this.#hasDispose || this.#hasDisposeAfter) && (this.#hasDispose && this.#dispose?.(v, k, "delete"), this.#hasDisposeAfter && this.#disposed?.push([v, k, "delete"])), this.#keyMap.delete(k), this.#keyList[index] = void 0, this.#valList[index] = void 0, index === this.#tail)
28000
+ if (this.#isBackgroundFetch(v) ? v.__abortController.abort(new Error("deleted")) : (this.#hasDispose || this.#hasDisposeAfter) && (this.#hasDispose && this.#dispose?.(v, k, reason), this.#hasDisposeAfter && this.#disposed?.push([v, k, reason])), this.#keyMap.delete(k), this.#keyList[index] = void 0, this.#valList[index] = void 0, index === this.#tail)
27872
28001
  this.#tail = this.#prev[index];
27873
28002
  else if (index === this.#head)
27874
28003
  this.#head = this.#next[index];
@@ -27892,13 +28021,16 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27892
28021
  * Clear the cache entirely, throwing away all values.
27893
28022
  */
27894
28023
  clear() {
28024
+ return this.#clear("delete");
28025
+ }
28026
+ #clear(reason) {
27895
28027
  for (let index of this.#rindexes({ allowStale: !0 })) {
27896
28028
  let v = this.#valList[index];
27897
28029
  if (this.#isBackgroundFetch(v))
27898
28030
  v.__abortController.abort(new Error("deleted"));
27899
28031
  else {
27900
28032
  let k = this.#keyList[index];
27901
- this.#hasDispose && this.#dispose?.(v, k, "delete"), this.#hasDisposeAfter && this.#disposed?.push([v, k, "delete"]);
28033
+ this.#hasDispose && this.#dispose?.(v, k, reason), this.#hasDisposeAfter && this.#disposed?.push([v, k, reason]);
27902
28034
  }
27903
28035
  }
27904
28036
  if (this.#keyMap.clear(), this.#valList.fill(void 0), this.#keyList.fill(void 0), this.#ttls && this.#starts && (this.#ttls.fill(0), this.#starts.fill(0)), this.#sizes && this.#sizes.fill(0), this.#head = 0, this.#tail = 0, this.#free.length = 0, this.#calculatedSize = 0, this.#size = 0, this.#hasDisposeAfter && this.#disposed) {
@@ -27912,7 +28044,7 @@ var shouldWarn = (code) => !warned.has(code), TYPE = Symbol("type"), isPosInt =
27912
28044
  // ../../../node_modules/path-scurry/dist/esm/index.js
27913
28045
  var import_node_path3 = require("node:path"), import_node_url2 = require("node:url"), import_fs2 = require("fs"), actualFS = __toESM(require("node:fs"), 1), import_promises = require("node:fs/promises");
27914
28046
 
27915
- // ../../../node_modules/path-scurry/node_modules/minipass/dist/esm/index.js
28047
+ // ../../../node_modules/minipass/dist/esm/index.js
27916
28048
  var import_node_events = require("node:events"), import_node_stream2 = __toESM(require("node:stream"), 1), import_node_string_decoder = require("node:string_decoder"), proc = typeof process == "object" && process ? process : {
27917
28049
  stdout: null,
27918
28050
  stderr: null
@@ -29891,648 +30023,92 @@ var isPatternList = (pl) => pl.length >= 1, isGlobList = (gl) => gl.length >= 1,
29891
30023
  }
29892
30024
  };
29893
30025
 
29894
- // ../../../node_modules/rimraf/node_modules/minipass/dist/esm/index.js
29895
- var import_node_events2 = require("node:events"), import_node_stream3 = __toESM(require("node:stream"), 1), import_node_string_decoder2 = require("node:string_decoder"), proc2 = typeof process == "object" && process ? process : {
29896
- stdout: null,
29897
- stderr: null
29898
- }, isStream2 = (s) => !!s && typeof s == "object" && (s instanceof Minipass2 || s instanceof import_node_stream3.default || isReadable2(s) || isWritable2(s)), isReadable2 = (s) => !!s && typeof s == "object" && s instanceof import_node_events2.EventEmitter && typeof s.pipe == "function" && // node core Writable streams have a pipe() method, but it throws
29899
- s.pipe !== import_node_stream3.default.Writable.prototype.pipe, isWritable2 = (s) => !!s && typeof s == "object" && s instanceof import_node_events2.EventEmitter && typeof s.write == "function" && typeof s.end == "function", EOF2 = Symbol("EOF"), MAYBE_EMIT_END2 = Symbol("maybeEmitEnd"), EMITTED_END2 = Symbol("emittedEnd"), EMITTING_END2 = Symbol("emittingEnd"), EMITTED_ERROR2 = Symbol("emittedError"), CLOSED2 = Symbol("closed"), READ2 = Symbol("read"), FLUSH2 = Symbol("flush"), FLUSHCHUNK2 = Symbol("flushChunk"), ENCODING2 = Symbol("encoding"), DECODER2 = Symbol("decoder"), FLOWING2 = Symbol("flowing"), PAUSED2 = Symbol("paused"), RESUME2 = Symbol("resume"), BUFFER2 = Symbol("buffer"), PIPES2 = Symbol("pipes"), BUFFERLENGTH2 = Symbol("bufferLength"), BUFFERPUSH2 = Symbol("bufferPush"), BUFFERSHIFT2 = Symbol("bufferShift"), OBJECTMODE2 = Symbol("objectMode"), DESTROYED2 = Symbol("destroyed"), ERROR2 = Symbol("error"), EMITDATA2 = Symbol("emitData"), EMITEND3 = Symbol("emitEnd"), EMITEND22 = Symbol("emitEnd2"), ASYNC2 = Symbol("async"), ABORT2 = Symbol("abort"), ABORTED2 = Symbol("aborted"), SIGNAL2 = Symbol("signal"), DATALISTENERS2 = Symbol("dataListeners"), DISCARDED2 = Symbol("discarded"), defer2 = (fn) => Promise.resolve().then(fn), nodefer2 = (fn) => fn(), isEndish2 = (ev) => ev === "end" || ev === "finish" || ev === "prefinish", isArrayBufferLike2 = (b) => b instanceof ArrayBuffer || !!b && typeof b == "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0, isArrayBufferView2 = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b), Pipe2 = class {
29900
- src;
29901
- dest;
29902
- opts;
29903
- ondrain;
29904
- constructor(src, dest, opts) {
29905
- this.src = src, this.dest = dest, this.opts = opts, this.ondrain = () => src[RESUME2](), this.dest.on("drain", this.ondrain);
30026
+ // ../../../node_modules/rimraf/node_modules/glob/dist/esm/ignore.js
30027
+ var defaultPlatform2 = typeof process == "object" && process && typeof process.platform == "string" ? process.platform : "linux", Ignore = class {
30028
+ relative;
30029
+ relativeChildren;
30030
+ absolute;
30031
+ absoluteChildren;
30032
+ platform;
30033
+ mmopts;
30034
+ constructor(ignored, { nobrace, nocase, noext, noglobstar, platform = defaultPlatform2 }) {
30035
+ this.relative = [], this.absolute = [], this.relativeChildren = [], this.absoluteChildren = [], this.platform = platform, this.mmopts = {
30036
+ dot: !0,
30037
+ nobrace,
30038
+ nocase,
30039
+ noext,
30040
+ noglobstar,
30041
+ optimizationLevel: 2,
30042
+ platform,
30043
+ nocomment: !0,
30044
+ nonegate: !0
30045
+ };
30046
+ for (let ign of ignored)
30047
+ this.add(ign);
29906
30048
  }
29907
- unpipe() {
29908
- this.dest.removeListener("drain", this.ondrain);
30049
+ add(ign) {
30050
+ let mm = new Minimatch(ign, this.mmopts);
30051
+ for (let i = 0; i < mm.set.length; i++) {
30052
+ let parsed = mm.set[i], globParts = mm.globParts[i];
30053
+ if (!parsed || !globParts)
30054
+ throw new Error("invalid pattern object");
30055
+ for (; parsed[0] === "." && globParts[0] === "."; )
30056
+ parsed.shift(), globParts.shift();
30057
+ let p = new Pattern(parsed, globParts, 0, this.platform), m = new Minimatch(p.globString(), this.mmopts), children = globParts[globParts.length - 1] === "**", absolute = p.isAbsolute();
30058
+ absolute ? this.absolute.push(m) : this.relative.push(m), children && (absolute ? this.absoluteChildren.push(m) : this.relativeChildren.push(m));
30059
+ }
29909
30060
  }
29910
- // only here for the prototype
29911
- /* c8 ignore start */
29912
- proxyErrors(_er) {
30061
+ ignored(p) {
30062
+ let fullpath = p.fullpath(), fullpaths = `${fullpath}/`, relative = p.relative() || ".", relatives = `${relative}/`;
30063
+ for (let m of this.relative)
30064
+ if (m.match(relative) || m.match(relatives))
30065
+ return !0;
30066
+ for (let m of this.absolute)
30067
+ if (m.match(fullpath) || m.match(fullpaths))
30068
+ return !0;
30069
+ return !1;
29913
30070
  }
29914
- /* c8 ignore stop */
29915
- end() {
29916
- this.unpipe(), this.opts.end && this.dest.end();
30071
+ childrenIgnored(p) {
30072
+ let fullpath = p.fullpath() + "/", relative = (p.relative() || ".") + "/";
30073
+ for (let m of this.relativeChildren)
30074
+ if (m.match(relative))
30075
+ return !0;
30076
+ for (let m of this.absoluteChildren)
30077
+ if (m.match(fullpath))
30078
+ return !0;
30079
+ return !1;
29917
30080
  }
29918
- }, PipeProxyErrors2 = class extends Pipe2 {
29919
- unpipe() {
29920
- this.src.removeListener("error", this.proxyErrors), super.unpipe();
30081
+ };
30082
+
30083
+ // ../../../node_modules/rimraf/node_modules/glob/dist/esm/processor.js
30084
+ var HasWalkedCache = class _HasWalkedCache {
30085
+ store;
30086
+ constructor(store = /* @__PURE__ */ new Map()) {
30087
+ this.store = store;
29921
30088
  }
29922
- constructor(src, dest, opts) {
29923
- super(src, dest, opts), this.proxyErrors = (er) => dest.emit("error", er), src.on("error", this.proxyErrors);
30089
+ copy() {
30090
+ return new _HasWalkedCache(new Map(this.store));
29924
30091
  }
29925
- }, isObjectModeOptions2 = (o) => !!o.objectMode, isEncodingOptions2 = (o) => !o.objectMode && !!o.encoding && o.encoding !== "buffer", Minipass2 = class extends import_node_events2.EventEmitter {
29926
- [FLOWING2] = !1;
29927
- [PAUSED2] = !1;
29928
- [PIPES2] = [];
29929
- [BUFFER2] = [];
29930
- [OBJECTMODE2];
29931
- [ENCODING2];
29932
- [ASYNC2];
29933
- [DECODER2];
29934
- [EOF2] = !1;
29935
- [EMITTED_END2] = !1;
29936
- [EMITTING_END2] = !1;
29937
- [CLOSED2] = !1;
29938
- [EMITTED_ERROR2] = null;
29939
- [BUFFERLENGTH2] = 0;
29940
- [DESTROYED2] = !1;
29941
- [SIGNAL2];
29942
- [ABORTED2] = !1;
29943
- [DATALISTENERS2] = 0;
29944
- [DISCARDED2] = !1;
29945
- /**
29946
- * true if the stream can be written
29947
- */
29948
- writable = !0;
29949
- /**
29950
- * true if the stream can be read
29951
- */
29952
- readable = !0;
29953
- /**
29954
- * If `RType` is Buffer, then options do not need to be provided.
29955
- * Otherwise, an options object must be provided to specify either
29956
- * {@link Minipass.SharedOptions.objectMode} or
29957
- * {@link Minipass.SharedOptions.encoding}, as appropriate.
29958
- */
29959
- constructor(...args) {
29960
- let options = args[0] || {};
29961
- if (super(), options.objectMode && typeof options.encoding == "string")
29962
- throw new TypeError("Encoding and objectMode may not be used together");
29963
- isObjectModeOptions2(options) ? (this[OBJECTMODE2] = !0, this[ENCODING2] = null) : isEncodingOptions2(options) ? (this[ENCODING2] = options.encoding, this[OBJECTMODE2] = !1) : (this[OBJECTMODE2] = !1, this[ENCODING2] = null), this[ASYNC2] = !!options.async, this[DECODER2] = this[ENCODING2] ? new import_node_string_decoder2.StringDecoder(this[ENCODING2]) : null, options && options.debugExposeBuffer === !0 && Object.defineProperty(this, "buffer", { get: () => this[BUFFER2] }), options && options.debugExposePipes === !0 && Object.defineProperty(this, "pipes", { get: () => this[PIPES2] });
29964
- let { signal } = options;
29965
- signal && (this[SIGNAL2] = signal, signal.aborted ? this[ABORT2]() : signal.addEventListener("abort", () => this[ABORT2]()));
30092
+ hasWalked(target, pattern) {
30093
+ return this.store.get(target.fullpath())?.has(pattern.globString());
29966
30094
  }
29967
- /**
29968
- * The amount of data stored in the buffer waiting to be read.
29969
- *
29970
- * For Buffer strings, this will be the total byte length.
29971
- * For string encoding streams, this will be the string character length,
29972
- * according to JavaScript's `string.length` logic.
29973
- * For objectMode streams, this is a count of the items waiting to be
29974
- * emitted.
29975
- */
29976
- get bufferLength() {
29977
- return this[BUFFERLENGTH2];
30095
+ storeWalked(target, pattern) {
30096
+ let fullpath = target.fullpath(), cached = this.store.get(fullpath);
30097
+ cached ? cached.add(pattern.globString()) : this.store.set(fullpath, /* @__PURE__ */ new Set([pattern.globString()]));
29978
30098
  }
29979
- /**
29980
- * The `BufferEncoding` currently in use, or `null`
29981
- */
29982
- get encoding() {
29983
- return this[ENCODING2];
30099
+ }, MatchRecord = class {
30100
+ store = /* @__PURE__ */ new Map();
30101
+ add(target, absolute, ifDir) {
30102
+ let n = (absolute ? 2 : 0) | (ifDir ? 1 : 0), current = this.store.get(target);
30103
+ this.store.set(target, current === void 0 ? n : n & current);
29984
30104
  }
29985
- /**
29986
- * @deprecated - This is a read only property
29987
- */
29988
- set encoding(_enc) {
29989
- throw new Error("Encoding must be set at instantiation time");
29990
- }
29991
- /**
29992
- * @deprecated - Encoding may only be set at instantiation time
29993
- */
29994
- setEncoding(_enc) {
29995
- throw new Error("Encoding must be set at instantiation time");
29996
- }
29997
- /**
29998
- * True if this is an objectMode stream
29999
- */
30000
- get objectMode() {
30001
- return this[OBJECTMODE2];
30002
- }
30003
- /**
30004
- * @deprecated - This is a read-only property
30005
- */
30006
- set objectMode(_om) {
30007
- throw new Error("objectMode must be set at instantiation time");
30008
- }
30009
- /**
30010
- * true if this is an async stream
30011
- */
30012
- get async() {
30013
- return this[ASYNC2];
30014
- }
30015
- /**
30016
- * Set to true to make this stream async.
30017
- *
30018
- * Once set, it cannot be unset, as this would potentially cause incorrect
30019
- * behavior. Ie, a sync stream can be made async, but an async stream
30020
- * cannot be safely made sync.
30021
- */
30022
- set async(a) {
30023
- this[ASYNC2] = this[ASYNC2] || !!a;
30024
- }
30025
- // drop everything and get out of the flow completely
30026
- [ABORT2]() {
30027
- this[ABORTED2] = !0, this.emit("abort", this[SIGNAL2]?.reason), this.destroy(this[SIGNAL2]?.reason);
30028
- }
30029
- /**
30030
- * True if the stream has been aborted.
30031
- */
30032
- get aborted() {
30033
- return this[ABORTED2];
30034
- }
30035
- /**
30036
- * No-op setter. Stream aborted status is set via the AbortSignal provided
30037
- * in the constructor options.
30038
- */
30039
- set aborted(_) {
30040
- }
30041
- write(chunk, encoding, cb) {
30042
- if (this[ABORTED2])
30043
- return !1;
30044
- if (this[EOF2])
30045
- throw new Error("write after end");
30046
- if (this[DESTROYED2])
30047
- return this.emit("error", Object.assign(new Error("Cannot call write after a stream was destroyed"), { code: "ERR_STREAM_DESTROYED" })), !0;
30048
- typeof encoding == "function" && (cb = encoding, encoding = "utf8"), encoding || (encoding = "utf8");
30049
- let fn = this[ASYNC2] ? defer2 : nodefer2;
30050
- if (!this[OBJECTMODE2] && !Buffer.isBuffer(chunk)) {
30051
- if (isArrayBufferView2(chunk))
30052
- chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength);
30053
- else if (isArrayBufferLike2(chunk))
30054
- chunk = Buffer.from(chunk);
30055
- else if (typeof chunk != "string")
30056
- throw new Error("Non-contiguous data written to non-objectMode stream");
30057
- }
30058
- return this[OBJECTMODE2] ? (this[FLOWING2] && this[BUFFERLENGTH2] !== 0 && this[FLUSH2](!0), this[FLOWING2] ? this.emit("data", chunk) : this[BUFFERPUSH2](chunk), this[BUFFERLENGTH2] !== 0 && this.emit("readable"), cb && fn(cb), this[FLOWING2]) : chunk.length ? (typeof chunk == "string" && // unless it is a string already ready for us to use
30059
- !(encoding === this[ENCODING2] && !this[DECODER2]?.lastNeed) && (chunk = Buffer.from(chunk, encoding)), Buffer.isBuffer(chunk) && this[ENCODING2] && (chunk = this[DECODER2].write(chunk)), this[FLOWING2] && this[BUFFERLENGTH2] !== 0 && this[FLUSH2](!0), this[FLOWING2] ? this.emit("data", chunk) : this[BUFFERPUSH2](chunk), this[BUFFERLENGTH2] !== 0 && this.emit("readable"), cb && fn(cb), this[FLOWING2]) : (this[BUFFERLENGTH2] !== 0 && this.emit("readable"), cb && fn(cb), this[FLOWING2]);
30060
- }
30061
- /**
30062
- * Low-level explicit read method.
30063
- *
30064
- * In objectMode, the argument is ignored, and one item is returned if
30065
- * available.
30066
- *
30067
- * `n` is the number of bytes (or in the case of encoding streams,
30068
- * characters) to consume. If `n` is not provided, then the entire buffer
30069
- * is returned, or `null` is returned if no data is available.
30070
- *
30071
- * If `n` is greater that the amount of data in the internal buffer,
30072
- * then `null` is returned.
30073
- */
30074
- read(n) {
30075
- if (this[DESTROYED2])
30076
- return null;
30077
- if (this[DISCARDED2] = !1, this[BUFFERLENGTH2] === 0 || n === 0 || n && n > this[BUFFERLENGTH2])
30078
- return this[MAYBE_EMIT_END2](), null;
30079
- this[OBJECTMODE2] && (n = null), this[BUFFER2].length > 1 && !this[OBJECTMODE2] && (this[BUFFER2] = [
30080
- this[ENCODING2] ? this[BUFFER2].join("") : Buffer.concat(this[BUFFER2], this[BUFFERLENGTH2])
30081
- ]);
30082
- let ret = this[READ2](n || null, this[BUFFER2][0]);
30083
- return this[MAYBE_EMIT_END2](), ret;
30084
- }
30085
- [READ2](n, chunk) {
30086
- if (this[OBJECTMODE2])
30087
- this[BUFFERSHIFT2]();
30088
- else {
30089
- let c = chunk;
30090
- n === c.length || n === null ? this[BUFFERSHIFT2]() : typeof c == "string" ? (this[BUFFER2][0] = c.slice(n), chunk = c.slice(0, n), this[BUFFERLENGTH2] -= n) : (this[BUFFER2][0] = c.subarray(n), chunk = c.subarray(0, n), this[BUFFERLENGTH2] -= n);
30091
- }
30092
- return this.emit("data", chunk), !this[BUFFER2].length && !this[EOF2] && this.emit("drain"), chunk;
30093
- }
30094
- end(chunk, encoding, cb) {
30095
- return typeof chunk == "function" && (cb = chunk, chunk = void 0), typeof encoding == "function" && (cb = encoding, encoding = "utf8"), chunk !== void 0 && this.write(chunk, encoding), cb && this.once("end", cb), this[EOF2] = !0, this.writable = !1, (this[FLOWING2] || !this[PAUSED2]) && this[MAYBE_EMIT_END2](), this;
30096
- }
30097
- // don't let the internal resume be overwritten
30098
- [RESUME2]() {
30099
- this[DESTROYED2] || (!this[DATALISTENERS2] && !this[PIPES2].length && (this[DISCARDED2] = !0), this[PAUSED2] = !1, this[FLOWING2] = !0, this.emit("resume"), this[BUFFER2].length ? this[FLUSH2]() : this[EOF2] ? this[MAYBE_EMIT_END2]() : this.emit("drain"));
30100
- }
30101
- /**
30102
- * Resume the stream if it is currently in a paused state
30103
- *
30104
- * If called when there are no pipe destinations or `data` event listeners,
30105
- * this will place the stream in a "discarded" state, where all data will
30106
- * be thrown away. The discarded state is removed if a pipe destination or
30107
- * data handler is added, if pause() is called, or if any synchronous or
30108
- * asynchronous iteration is started.
30109
- */
30110
- resume() {
30111
- return this[RESUME2]();
30112
- }
30113
- /**
30114
- * Pause the stream
30115
- */
30116
- pause() {
30117
- this[FLOWING2] = !1, this[PAUSED2] = !0, this[DISCARDED2] = !1;
30118
- }
30119
- /**
30120
- * true if the stream has been forcibly destroyed
30121
- */
30122
- get destroyed() {
30123
- return this[DESTROYED2];
30124
- }
30125
- /**
30126
- * true if the stream is currently in a flowing state, meaning that
30127
- * any writes will be immediately emitted.
30128
- */
30129
- get flowing() {
30130
- return this[FLOWING2];
30131
- }
30132
- /**
30133
- * true if the stream is currently in a paused state
30134
- */
30135
- get paused() {
30136
- return this[PAUSED2];
30137
- }
30138
- [BUFFERPUSH2](chunk) {
30139
- this[OBJECTMODE2] ? this[BUFFERLENGTH2] += 1 : this[BUFFERLENGTH2] += chunk.length, this[BUFFER2].push(chunk);
30140
- }
30141
- [BUFFERSHIFT2]() {
30142
- return this[OBJECTMODE2] ? this[BUFFERLENGTH2] -= 1 : this[BUFFERLENGTH2] -= this[BUFFER2][0].length, this[BUFFER2].shift();
30143
- }
30144
- [FLUSH2](noDrain = !1) {
30145
- do
30146
- ;
30147
- while (this[FLUSHCHUNK2](this[BUFFERSHIFT2]()) && this[BUFFER2].length);
30148
- !noDrain && !this[BUFFER2].length && !this[EOF2] && this.emit("drain");
30149
- }
30150
- [FLUSHCHUNK2](chunk) {
30151
- return this.emit("data", chunk), this[FLOWING2];
30152
- }
30153
- /**
30154
- * Pipe all data emitted by this stream into the destination provided.
30155
- *
30156
- * Triggers the flow of data.
30157
- */
30158
- pipe(dest, opts) {
30159
- if (this[DESTROYED2])
30160
- return dest;
30161
- this[DISCARDED2] = !1;
30162
- let ended = this[EMITTED_END2];
30163
- return opts = opts || {}, dest === proc2.stdout || dest === proc2.stderr ? opts.end = !1 : opts.end = opts.end !== !1, opts.proxyErrors = !!opts.proxyErrors, ended ? opts.end && dest.end() : (this[PIPES2].push(opts.proxyErrors ? new PipeProxyErrors2(this, dest, opts) : new Pipe2(this, dest, opts)), this[ASYNC2] ? defer2(() => this[RESUME2]()) : this[RESUME2]()), dest;
30164
- }
30165
- /**
30166
- * Fully unhook a piped destination stream.
30167
- *
30168
- * If the destination stream was the only consumer of this stream (ie,
30169
- * there are no other piped destinations or `'data'` event listeners)
30170
- * then the flow of data will stop until there is another consumer or
30171
- * {@link Minipass#resume} is explicitly called.
30172
- */
30173
- unpipe(dest) {
30174
- let p = this[PIPES2].find((p2) => p2.dest === dest);
30175
- p && (this[PIPES2].length === 1 ? (this[FLOWING2] && this[DATALISTENERS2] === 0 && (this[FLOWING2] = !1), this[PIPES2] = []) : this[PIPES2].splice(this[PIPES2].indexOf(p), 1), p.unpipe());
30176
- }
30177
- /**
30178
- * Alias for {@link Minipass#on}
30179
- */
30180
- addListener(ev, handler) {
30181
- return this.on(ev, handler);
30182
- }
30183
- /**
30184
- * Mostly identical to `EventEmitter.on`, with the following
30185
- * behavior differences to prevent data loss and unnecessary hangs:
30186
- *
30187
- * - Adding a 'data' event handler will trigger the flow of data
30188
- *
30189
- * - Adding a 'readable' event handler when there is data waiting to be read
30190
- * will cause 'readable' to be emitted immediately.
30191
- *
30192
- * - Adding an 'endish' event handler ('end', 'finish', etc.) which has
30193
- * already passed will cause the event to be emitted immediately and all
30194
- * handlers removed.
30195
- *
30196
- * - Adding an 'error' event handler after an error has been emitted will
30197
- * cause the event to be re-emitted immediately with the error previously
30198
- * raised.
30199
- */
30200
- on(ev, handler) {
30201
- let ret = super.on(ev, handler);
30202
- if (ev === "data")
30203
- this[DISCARDED2] = !1, this[DATALISTENERS2]++, !this[PIPES2].length && !this[FLOWING2] && this[RESUME2]();
30204
- else if (ev === "readable" && this[BUFFERLENGTH2] !== 0)
30205
- super.emit("readable");
30206
- else if (isEndish2(ev) && this[EMITTED_END2])
30207
- super.emit(ev), this.removeAllListeners(ev);
30208
- else if (ev === "error" && this[EMITTED_ERROR2]) {
30209
- let h = handler;
30210
- this[ASYNC2] ? defer2(() => h.call(this, this[EMITTED_ERROR2])) : h.call(this, this[EMITTED_ERROR2]);
30211
- }
30212
- return ret;
30213
- }
30214
- /**
30215
- * Alias for {@link Minipass#off}
30216
- */
30217
- removeListener(ev, handler) {
30218
- return this.off(ev, handler);
30219
- }
30220
- /**
30221
- * Mostly identical to `EventEmitter.off`
30222
- *
30223
- * If a 'data' event handler is removed, and it was the last consumer
30224
- * (ie, there are no pipe destinations or other 'data' event listeners),
30225
- * then the flow of data will stop until there is another consumer or
30226
- * {@link Minipass#resume} is explicitly called.
30227
- */
30228
- off(ev, handler) {
30229
- let ret = super.off(ev, handler);
30230
- return ev === "data" && (this[DATALISTENERS2] = this.listeners("data").length, this[DATALISTENERS2] === 0 && !this[DISCARDED2] && !this[PIPES2].length && (this[FLOWING2] = !1)), ret;
30231
- }
30232
- /**
30233
- * Mostly identical to `EventEmitter.removeAllListeners`
30234
- *
30235
- * If all 'data' event handlers are removed, and they were the last consumer
30236
- * (ie, there are no pipe destinations), then the flow of data will stop
30237
- * until there is another consumer or {@link Minipass#resume} is explicitly
30238
- * called.
30239
- */
30240
- removeAllListeners(ev) {
30241
- let ret = super.removeAllListeners(ev);
30242
- return (ev === "data" || ev === void 0) && (this[DATALISTENERS2] = 0, !this[DISCARDED2] && !this[PIPES2].length && (this[FLOWING2] = !1)), ret;
30243
- }
30244
- /**
30245
- * true if the 'end' event has been emitted
30246
- */
30247
- get emittedEnd() {
30248
- return this[EMITTED_END2];
30249
- }
30250
- [MAYBE_EMIT_END2]() {
30251
- !this[EMITTING_END2] && !this[EMITTED_END2] && !this[DESTROYED2] && this[BUFFER2].length === 0 && this[EOF2] && (this[EMITTING_END2] = !0, this.emit("end"), this.emit("prefinish"), this.emit("finish"), this[CLOSED2] && this.emit("close"), this[EMITTING_END2] = !1);
30252
- }
30253
- /**
30254
- * Mostly identical to `EventEmitter.emit`, with the following
30255
- * behavior differences to prevent data loss and unnecessary hangs:
30256
- *
30257
- * If the stream has been destroyed, and the event is something other
30258
- * than 'close' or 'error', then `false` is returned and no handlers
30259
- * are called.
30260
- *
30261
- * If the event is 'end', and has already been emitted, then the event
30262
- * is ignored. If the stream is in a paused or non-flowing state, then
30263
- * the event will be deferred until data flow resumes. If the stream is
30264
- * async, then handlers will be called on the next tick rather than
30265
- * immediately.
30266
- *
30267
- * If the event is 'close', and 'end' has not yet been emitted, then
30268
- * the event will be deferred until after 'end' is emitted.
30269
- *
30270
- * If the event is 'error', and an AbortSignal was provided for the stream,
30271
- * and there are no listeners, then the event is ignored, matching the
30272
- * behavior of node core streams in the presense of an AbortSignal.
30273
- *
30274
- * If the event is 'finish' or 'prefinish', then all listeners will be
30275
- * removed after emitting the event, to prevent double-firing.
30276
- */
30277
- emit(ev, ...args) {
30278
- let data = args[0];
30279
- if (ev !== "error" && ev !== "close" && ev !== DESTROYED2 && this[DESTROYED2])
30280
- return !1;
30281
- if (ev === "data")
30282
- return !this[OBJECTMODE2] && !data ? !1 : this[ASYNC2] ? (defer2(() => this[EMITDATA2](data)), !0) : this[EMITDATA2](data);
30283
- if (ev === "end")
30284
- return this[EMITEND3]();
30285
- if (ev === "close") {
30286
- if (this[CLOSED2] = !0, !this[EMITTED_END2] && !this[DESTROYED2])
30287
- return !1;
30288
- let ret2 = super.emit("close");
30289
- return this.removeAllListeners("close"), ret2;
30290
- } else if (ev === "error") {
30291
- this[EMITTED_ERROR2] = data, super.emit(ERROR2, data);
30292
- let ret2 = !this[SIGNAL2] || this.listeners("error").length ? super.emit("error", data) : !1;
30293
- return this[MAYBE_EMIT_END2](), ret2;
30294
- } else if (ev === "resume") {
30295
- let ret2 = super.emit("resume");
30296
- return this[MAYBE_EMIT_END2](), ret2;
30297
- } else if (ev === "finish" || ev === "prefinish") {
30298
- let ret2 = super.emit(ev);
30299
- return this.removeAllListeners(ev), ret2;
30300
- }
30301
- let ret = super.emit(ev, ...args);
30302
- return this[MAYBE_EMIT_END2](), ret;
30303
- }
30304
- [EMITDATA2](data) {
30305
- for (let p of this[PIPES2])
30306
- p.dest.write(data) === !1 && this.pause();
30307
- let ret = this[DISCARDED2] ? !1 : super.emit("data", data);
30308
- return this[MAYBE_EMIT_END2](), ret;
30309
- }
30310
- [EMITEND3]() {
30311
- return this[EMITTED_END2] ? !1 : (this[EMITTED_END2] = !0, this.readable = !1, this[ASYNC2] ? (defer2(() => this[EMITEND22]()), !0) : this[EMITEND22]());
30312
- }
30313
- [EMITEND22]() {
30314
- if (this[DECODER2]) {
30315
- let data = this[DECODER2].end();
30316
- if (data) {
30317
- for (let p of this[PIPES2])
30318
- p.dest.write(data);
30319
- this[DISCARDED2] || super.emit("data", data);
30320
- }
30321
- }
30322
- for (let p of this[PIPES2])
30323
- p.end();
30324
- let ret = super.emit("end");
30325
- return this.removeAllListeners("end"), ret;
30326
- }
30327
- /**
30328
- * Return a Promise that resolves to an array of all emitted data once
30329
- * the stream ends.
30330
- */
30331
- async collect() {
30332
- let buf = Object.assign([], {
30333
- dataLength: 0
30334
- });
30335
- this[OBJECTMODE2] || (buf.dataLength = 0);
30336
- let p = this.promise();
30337
- return this.on("data", (c) => {
30338
- buf.push(c), this[OBJECTMODE2] || (buf.dataLength += c.length);
30339
- }), await p, buf;
30340
- }
30341
- /**
30342
- * Return a Promise that resolves to the concatenation of all emitted data
30343
- * once the stream ends.
30344
- *
30345
- * Not allowed on objectMode streams.
30346
- */
30347
- async concat() {
30348
- if (this[OBJECTMODE2])
30349
- throw new Error("cannot concat in objectMode");
30350
- let buf = await this.collect();
30351
- return this[ENCODING2] ? buf.join("") : Buffer.concat(buf, buf.dataLength);
30352
- }
30353
- /**
30354
- * Return a void Promise that resolves once the stream ends.
30355
- */
30356
- async promise() {
30357
- return new Promise((resolve7, reject) => {
30358
- this.on(DESTROYED2, () => reject(new Error("stream destroyed"))), this.on("error", (er) => reject(er)), this.on("end", () => resolve7());
30359
- });
30360
- }
30361
- /**
30362
- * Asynchronous `for await of` iteration.
30363
- *
30364
- * This will continue emitting all chunks until the stream terminates.
30365
- */
30366
- [Symbol.asyncIterator]() {
30367
- this[DISCARDED2] = !1;
30368
- let stopped = !1, stop = async () => (this.pause(), stopped = !0, { value: void 0, done: !0 });
30369
- return {
30370
- next: () => {
30371
- if (stopped)
30372
- return stop();
30373
- let res = this.read();
30374
- if (res !== null)
30375
- return Promise.resolve({ done: !1, value: res });
30376
- if (this[EOF2])
30377
- return stop();
30378
- let resolve7, reject, onerr = (er) => {
30379
- this.off("data", ondata), this.off("end", onend), this.off(DESTROYED2, ondestroy), stop(), reject(er);
30380
- }, ondata = (value) => {
30381
- this.off("error", onerr), this.off("end", onend), this.off(DESTROYED2, ondestroy), this.pause(), resolve7({ value, done: !!this[EOF2] });
30382
- }, onend = () => {
30383
- this.off("error", onerr), this.off("data", ondata), this.off(DESTROYED2, ondestroy), stop(), resolve7({ done: !0, value: void 0 });
30384
- }, ondestroy = () => onerr(new Error("stream destroyed"));
30385
- return new Promise((res2, rej) => {
30386
- reject = rej, resolve7 = res2, this.once(DESTROYED2, ondestroy), this.once("error", onerr), this.once("end", onend), this.once("data", ondata);
30387
- });
30388
- },
30389
- throw: stop,
30390
- return: stop,
30391
- [Symbol.asyncIterator]() {
30392
- return this;
30393
- }
30394
- };
30395
- }
30396
- /**
30397
- * Synchronous `for of` iteration.
30398
- *
30399
- * The iteration will terminate when the internal buffer runs out, even
30400
- * if the stream has not yet terminated.
30401
- */
30402
- [Symbol.iterator]() {
30403
- this[DISCARDED2] = !1;
30404
- let stopped = !1, stop = () => (this.pause(), this.off(ERROR2, stop), this.off(DESTROYED2, stop), this.off("end", stop), stopped = !0, { done: !0, value: void 0 }), next = () => {
30405
- if (stopped)
30406
- return stop();
30407
- let value = this.read();
30408
- return value === null ? stop() : { done: !1, value };
30409
- };
30410
- return this.once("end", stop), this.once(ERROR2, stop), this.once(DESTROYED2, stop), {
30411
- next,
30412
- throw: stop,
30413
- return: stop,
30414
- [Symbol.iterator]() {
30415
- return this;
30416
- }
30417
- };
30418
- }
30419
- /**
30420
- * Destroy a stream, preventing it from being used for any further purpose.
30421
- *
30422
- * If the stream has a `close()` method, then it will be called on
30423
- * destruction.
30424
- *
30425
- * After destruction, any attempt to write data, read data, or emit most
30426
- * events will be ignored.
30427
- *
30428
- * If an error argument is provided, then it will be emitted in an
30429
- * 'error' event.
30430
- */
30431
- destroy(er) {
30432
- if (this[DESTROYED2])
30433
- return er ? this.emit("error", er) : this.emit(DESTROYED2), this;
30434
- this[DESTROYED2] = !0, this[DISCARDED2] = !0, this[BUFFER2].length = 0, this[BUFFERLENGTH2] = 0;
30435
- let wc = this;
30436
- return typeof wc.close == "function" && !this[CLOSED2] && wc.close(), er ? this.emit("error", er) : this.emit(DESTROYED2), this;
30437
- }
30438
- /**
30439
- * Alias for {@link isStream}
30440
- *
30441
- * Former export location, maintained for backwards compatibility.
30442
- *
30443
- * @deprecated
30444
- */
30445
- static get isStream() {
30446
- return isStream2;
30447
- }
30448
- };
30449
-
30450
- // ../../../node_modules/rimraf/node_modules/glob/dist/esm/ignore.js
30451
- var defaultPlatform2 = typeof process == "object" && process && typeof process.platform == "string" ? process.platform : "linux", Ignore = class {
30452
- relative;
30453
- relativeChildren;
30454
- absolute;
30455
- absoluteChildren;
30456
- platform;
30457
- mmopts;
30458
- constructor(ignored, { nobrace, nocase, noext, noglobstar, platform = defaultPlatform2 }) {
30459
- this.relative = [], this.absolute = [], this.relativeChildren = [], this.absoluteChildren = [], this.platform = platform, this.mmopts = {
30460
- dot: !0,
30461
- nobrace,
30462
- nocase,
30463
- noext,
30464
- noglobstar,
30465
- optimizationLevel: 2,
30466
- platform,
30467
- nocomment: !0,
30468
- nonegate: !0
30469
- };
30470
- for (let ign of ignored)
30471
- this.add(ign);
30472
- }
30473
- add(ign) {
30474
- let mm = new Minimatch(ign, this.mmopts);
30475
- for (let i = 0; i < mm.set.length; i++) {
30476
- let parsed = mm.set[i], globParts = mm.globParts[i];
30477
- if (!parsed || !globParts)
30478
- throw new Error("invalid pattern object");
30479
- for (; parsed[0] === "." && globParts[0] === "."; )
30480
- parsed.shift(), globParts.shift();
30481
- let p = new Pattern(parsed, globParts, 0, this.platform), m = new Minimatch(p.globString(), this.mmopts), children = globParts[globParts.length - 1] === "**", absolute = p.isAbsolute();
30482
- absolute ? this.absolute.push(m) : this.relative.push(m), children && (absolute ? this.absoluteChildren.push(m) : this.relativeChildren.push(m));
30483
- }
30484
- }
30485
- ignored(p) {
30486
- let fullpath = p.fullpath(), fullpaths = `${fullpath}/`, relative = p.relative() || ".", relatives = `${relative}/`;
30487
- for (let m of this.relative)
30488
- if (m.match(relative) || m.match(relatives))
30489
- return !0;
30490
- for (let m of this.absolute)
30491
- if (m.match(fullpath) || m.match(fullpaths))
30492
- return !0;
30493
- return !1;
30494
- }
30495
- childrenIgnored(p) {
30496
- let fullpath = p.fullpath() + "/", relative = (p.relative() || ".") + "/";
30497
- for (let m of this.relativeChildren)
30498
- if (m.match(relative))
30499
- return !0;
30500
- for (let m of this.absoluteChildren)
30501
- if (m.match(fullpath))
30502
- return !0;
30503
- return !1;
30504
- }
30505
- };
30506
-
30507
- // ../../../node_modules/rimraf/node_modules/glob/dist/esm/processor.js
30508
- var HasWalkedCache = class _HasWalkedCache {
30509
- store;
30510
- constructor(store = /* @__PURE__ */ new Map()) {
30511
- this.store = store;
30512
- }
30513
- copy() {
30514
- return new _HasWalkedCache(new Map(this.store));
30515
- }
30516
- hasWalked(target, pattern) {
30517
- return this.store.get(target.fullpath())?.has(pattern.globString());
30518
- }
30519
- storeWalked(target, pattern) {
30520
- let fullpath = target.fullpath(), cached = this.store.get(fullpath);
30521
- cached ? cached.add(pattern.globString()) : this.store.set(fullpath, /* @__PURE__ */ new Set([pattern.globString()]));
30522
- }
30523
- }, MatchRecord = class {
30524
- store = /* @__PURE__ */ new Map();
30525
- add(target, absolute, ifDir) {
30526
- let n = (absolute ? 2 : 0) | (ifDir ? 1 : 0), current = this.store.get(target);
30527
- this.store.set(target, current === void 0 ? n : n & current);
30528
- }
30529
- // match, absolute, ifdir
30530
- entries() {
30531
- return [...this.store.entries()].map(([path6, n]) => [
30532
- path6,
30533
- !!(n & 2),
30534
- !!(n & 1)
30535
- ]);
30105
+ // match, absolute, ifdir
30106
+ entries() {
30107
+ return [...this.store.entries()].map(([path6, n]) => [
30108
+ path6,
30109
+ !!(n & 2),
30110
+ !!(n & 1)
30111
+ ]);
30536
30112
  }
30537
30113
  }, SubWalks = class {
30538
30114
  store = /* @__PURE__ */ new Map();
@@ -30856,7 +30432,7 @@ var makeIgnore = (ignore, opts) => typeof ignore == "string" ? new Ignore([ignor
30856
30432
  }, GlobStream = class extends GlobUtil {
30857
30433
  results;
30858
30434
  constructor(patterns, path6, opts) {
30859
- super(patterns, path6, opts), this.results = new Minipass2({
30435
+ super(patterns, path6, opts), this.results = new Minipass({
30860
30436
  signal: this.signal,
30861
30437
  objectMode: !0
30862
30438
  }), this.results.on("drain", () => this.resume()), this.results.on("resume", () => this.resume());
@@ -31080,7 +30656,75 @@ var streamSync = globStreamSync, stream = Object.assign(globStream, { sync: glob
31080
30656
  });
31081
30657
  glob.glob = glob;
31082
30658
 
31083
- // ../../../node_modules/rimraf/dist/mjs/fs.js
30659
+ // ../../../node_modules/rimraf/dist/esm/opt-arg.js
30660
+ var typeOrUndef = (val, t) => typeof val > "u" || typeof val === t, isRimrafOptions = (o) => !!o && typeof o == "object" && typeOrUndef(o.preserveRoot, "boolean") && typeOrUndef(o.tmp, "string") && typeOrUndef(o.maxRetries, "number") && typeOrUndef(o.retryDelay, "number") && typeOrUndef(o.backoff, "number") && typeOrUndef(o.maxBackoff, "number") && (typeOrUndef(o.glob, "boolean") || o.glob && typeof o.glob == "object") && typeOrUndef(o.filter, "function"), assertRimrafOptions = (o) => {
30661
+ if (!isRimrafOptions(o))
30662
+ throw new Error("invalid rimraf options");
30663
+ }, optArgT = (opt) => {
30664
+ assertRimrafOptions(opt);
30665
+ let { glob: glob2, ...options } = opt;
30666
+ if (!glob2)
30667
+ return options;
30668
+ let globOpt = glob2 === !0 ? opt.signal ? { signal: opt.signal } : {} : opt.signal ? {
30669
+ signal: opt.signal,
30670
+ ...glob2
30671
+ } : glob2;
30672
+ return {
30673
+ ...options,
30674
+ glob: {
30675
+ ...globOpt,
30676
+ // always get absolute paths from glob, to ensure
30677
+ // that we are referencing the correct thing.
30678
+ absolute: !0,
30679
+ withFileTypes: !1
30680
+ }
30681
+ };
30682
+ }, optArg = (opt = {}) => optArgT(opt), optArgSync = (opt = {}) => optArgT(opt);
30683
+
30684
+ // ../../../node_modules/rimraf/dist/esm/path-arg.js
30685
+ var import_path2 = require("path"), import_util4 = require("util");
30686
+
30687
+ // ../../../node_modules/rimraf/dist/esm/platform.js
30688
+ var platform_default = process.env.__TESTING_RIMRAF_PLATFORM__ || process.platform;
30689
+
30690
+ // ../../../node_modules/rimraf/dist/esm/path-arg.js
30691
+ var pathArg = (path6, opt = {}) => {
30692
+ let type = typeof path6;
30693
+ if (type !== "string") {
30694
+ let ctor = path6 && type === "object" && path6.constructor, msg = `The "path" argument must be of type string. Received ${ctor && ctor.name ? `an instance of ${ctor.name}` : type === "object" ? (0, import_util4.inspect)(path6) : `type ${type} ${path6}`}`;
30695
+ throw Object.assign(new TypeError(msg), {
30696
+ path: path6,
30697
+ code: "ERR_INVALID_ARG_TYPE"
30698
+ });
30699
+ }
30700
+ if (/\0/.test(path6)) {
30701
+ let msg = "path must be a string without null bytes";
30702
+ throw Object.assign(new TypeError(msg), {
30703
+ path: path6,
30704
+ code: "ERR_INVALID_ARG_VALUE"
30705
+ });
30706
+ }
30707
+ path6 = (0, import_path2.resolve)(path6);
30708
+ let { root } = (0, import_path2.parse)(path6);
30709
+ if (path6 === root && opt.preserveRoot !== !1) {
30710
+ let msg = "refusing to remove root directory without preserveRoot:false";
30711
+ throw Object.assign(new Error(msg), {
30712
+ path: path6,
30713
+ code: "ERR_PRESERVE_ROOT"
30714
+ });
30715
+ }
30716
+ if (platform_default === "win32") {
30717
+ let badWinChars = /[*|"<>?:]/, { root: root2 } = (0, import_path2.parse)(path6);
30718
+ if (badWinChars.test(path6.substring(root2.length)))
30719
+ throw Object.assign(new Error("Illegal characters in path."), {
30720
+ path: path6,
30721
+ code: "EINVAL"
30722
+ });
30723
+ }
30724
+ return path6;
30725
+ }, path_arg_default = pathArg;
30726
+
30727
+ // ../../../node_modules/rimraf/dist/esm/fs.js
31084
30728
  var import_fs3 = __toESM(require("fs"), 1), import_fs4 = require("fs"), import_fs5 = require("fs"), readdirSync2 = (path6) => (0, import_fs5.readdirSync)(path6, { withFileTypes: !0 }), chmod = (path6, mode) => new Promise((res, rej) => import_fs3.default.chmod(path6, mode, (er, ...d) => er ? rej(er) : res(...d))), mkdir = (path6, options) => new Promise((res, rej) => import_fs3.default.mkdir(path6, options, (er, made) => er ? rej(er) : res(made))), readdir2 = (path6) => new Promise((res, rej) => import_fs3.default.readdir(path6, { withFileTypes: !0 }, (er, data) => er ? rej(er) : res(data))), rename = (oldPath, newPath) => new Promise((res, rej) => import_fs3.default.rename(oldPath, newPath, (er, ...d) => er ? rej(er) : res(...d))), rm = (path6, options) => new Promise((res, rej) => import_fs3.default.rm(path6, options, (er, ...d) => er ? rej(er) : res(...d))), rmdir = (path6) => new Promise((res, rej) => import_fs3.default.rmdir(path6, (er, ...d) => er ? rej(er) : res(...d))), stat = (path6) => new Promise((res, rej) => import_fs3.default.stat(path6, (er, data) => er ? rej(er) : res(data))), lstat2 = (path6) => new Promise((res, rej) => import_fs3.default.lstat(path6, (er, data) => er ? rej(er) : res(data))), unlink = (path6) => new Promise((res, rej) => import_fs3.default.unlink(path6, (er, ...d) => er ? rej(er) : res(...d))), promises = {
31085
30729
  chmod,
31086
30730
  mkdir,
@@ -31093,10 +30737,10 @@ var import_fs3 = __toESM(require("fs"), 1), import_fs4 = require("fs"), import_f
31093
30737
  unlink
31094
30738
  };
31095
30739
 
31096
- // ../../../node_modules/rimraf/dist/mjs/rimraf-posix.js
30740
+ // ../../../node_modules/rimraf/dist/esm/rimraf-posix.js
31097
30741
  var import_path3 = require("path");
31098
30742
 
31099
- // ../../../node_modules/rimraf/dist/mjs/readdir-or-error.js
30743
+ // ../../../node_modules/rimraf/dist/esm/readdir-or-error.js
31100
30744
  var { readdir: readdir3 } = promises, readdirOrError = (path6) => readdir3(path6).catch((er) => er), readdirOrErrorSync = (path6) => {
31101
30745
  try {
31102
30746
  return readdirSync2(path6);
@@ -31105,7 +30749,7 @@ var { readdir: readdir3 } = promises, readdirOrError = (path6) => readdir3(path6
31105
30749
  }
31106
30750
  };
31107
30751
 
31108
- // ../../../node_modules/rimraf/dist/mjs/ignore-enoent.js
30752
+ // ../../../node_modules/rimraf/dist/esm/ignore-enoent.js
31109
30753
  var ignoreENOENT = async (p) => p.catch((er) => {
31110
30754
  if (er.code !== "ENOENT")
31111
30755
  throw er;
@@ -31118,7 +30762,7 @@ var ignoreENOENT = async (p) => p.catch((er) => {
31118
30762
  }
31119
30763
  };
31120
30764
 
31121
- // ../../../node_modules/rimraf/dist/mjs/rimraf-posix.js
30765
+ // ../../../node_modules/rimraf/dist/esm/rimraf-posix.js
31122
30766
  var { lstat: lstat3, rmdir: rmdir2, unlink: unlink2 } = promises, rimrafPosix = async (path6, opt) => {
31123
30767
  if (opt?.signal?.aborted)
31124
30768
  throw opt.signal.reason;
@@ -31174,10 +30818,10 @@ var { lstat: lstat3, rmdir: rmdir2, unlink: unlink2 } = promises, rimrafPosix =
31174
30818
  return opt.preserveRoot === !1 && path6 === (0, import_path3.parse)(path6).root || !removedAll || opt.filter && !opt.filter(path6, ent) ? !1 : (ignoreENOENTSync(() => (0, import_fs4.rmdirSync)(path6)), !0);
31175
30819
  };
31176
30820
 
31177
- // ../../../node_modules/rimraf/dist/mjs/rimraf-windows.js
30821
+ // ../../../node_modules/rimraf/dist/esm/rimraf-windows.js
31178
30822
  var import_path6 = require("path");
31179
30823
 
31180
- // ../../../node_modules/rimraf/dist/mjs/fix-eperm.js
30824
+ // ../../../node_modules/rimraf/dist/esm/fix-eperm.js
31181
30825
  var { chmod: chmod2 } = promises, fixEPERM = (fn) => async (path6) => {
31182
30826
  try {
31183
30827
  return await fn(path6);
@@ -31218,7 +30862,7 @@ var { chmod: chmod2 } = promises, fixEPERM = (fn) => async (path6) => {
31218
30862
  }
31219
30863
  };
31220
30864
 
31221
- // ../../../node_modules/rimraf/dist/mjs/retry-busy.js
30865
+ // ../../../node_modules/rimraf/dist/esm/retry-busy.js
31222
30866
  var codes = /* @__PURE__ */ new Set(["EMFILE", "ENFILE", "EBUSY"]), retryBusy = (fn) => {
31223
30867
  let method = async (path6, opt, backoff = 1, total = 0) => {
31224
30868
  let mbo = opt.maxBackoff || 200, rate = opt.backoff || 1.2, max = opt.maxRetries || 10, retries = 0;
@@ -31258,10 +30902,10 @@ var codes = /* @__PURE__ */ new Set(["EMFILE", "ENFILE", "EBUSY"]), retryBusy =
31258
30902
  }
31259
30903
  };
31260
30904
 
31261
- // ../../../node_modules/rimraf/dist/mjs/rimraf-move-remove.js
30905
+ // ../../../node_modules/rimraf/dist/esm/rimraf-move-remove.js
31262
30906
  var import_path5 = require("path");
31263
30907
 
31264
- // ../../../node_modules/rimraf/dist/mjs/default-tmp.js
30908
+ // ../../../node_modules/rimraf/dist/esm/default-tmp.js
31265
30909
  var import_os = require("os"), import_path4 = require("path");
31266
30910
  var { stat: stat2 } = promises, isDirSync = (path6) => {
31267
30911
  try {
@@ -31283,7 +30927,7 @@ var { stat: stat2 } = promises, isDirSync = (path6) => {
31283
30927
  return isDirSync(driveTmp) ? driveTmp : root;
31284
30928
  }, posixDefaultTmp = async () => (0, import_os.tmpdir)(), posixDefaultTmpSync = () => (0, import_os.tmpdir)(), defaultTmp = platform_default === "win32" ? win32DefaultTmp : posixDefaultTmp, defaultTmpSync = platform_default === "win32" ? win32DefaultTmpSync : posixDefaultTmpSync;
31285
30929
 
31286
- // ../../../node_modules/rimraf/dist/mjs/rimraf-move-remove.js
30930
+ // ../../../node_modules/rimraf/dist/esm/rimraf-move-remove.js
31287
30931
  var { lstat: lstat4, rename: rename2, unlink: unlink3, rmdir: rmdir3, chmod: chmod3 } = promises, uniqueFilename = (path6) => `.${(0, import_path5.basename)(path6)}.${Math.random()}`, unlinkFixEPERM = async (path6) => unlink3(path6).catch((er) => {
31288
30932
  if (er.code === "EPERM")
31289
30933
  return chmod3(path6, 438).then(() => unlink3(path6), (er2) => {
@@ -31379,7 +31023,7 @@ var { lstat: lstat4, rename: rename2, unlink: unlink3, rmdir: rmdir3, chmod: chm
31379
31023
  return (0, import_fs4.renameSync)(path6, tmpFile), rmSync2(tmpFile);
31380
31024
  };
31381
31025
 
31382
- // ../../../node_modules/rimraf/dist/mjs/rimraf-windows.js
31026
+ // ../../../node_modules/rimraf/dist/esm/rimraf-windows.js
31383
31027
  var { unlink: unlink4, rmdir: rmdir4, lstat: lstat5 } = promises, rimrafWindowsFile = retryBusy(fixEPERM(unlink4)), rimrafWindowsFileSync = retryBusySync(fixEPERMSync(import_fs4.unlinkSync)), rimrafWindowsDirRetry = retryBusy(fixEPERM(rmdir4)), rimrafWindowsDirRetrySync = retryBusySync(fixEPERMSync(import_fs4.rmdirSync)), rimrafWindowsDirMoveRemoveFallback = async (path6, opt) => {
31384
31028
  if (opt?.signal?.aborted)
31385
31029
  throw opt.signal.reason;
@@ -31472,10 +31116,10 @@ var { unlink: unlink4, rmdir: rmdir4, lstat: lstat5 } = promises, rimrafWindowsF
31472
31116
  return !0;
31473
31117
  };
31474
31118
 
31475
- // ../../../node_modules/rimraf/dist/mjs/rimraf-manual.js
31119
+ // ../../../node_modules/rimraf/dist/esm/rimraf-manual.js
31476
31120
  var rimrafManual = platform_default === "win32" ? rimrafWindows : rimrafPosix, rimrafManualSync = platform_default === "win32" ? rimrafWindowsSync : rimrafPosixSync;
31477
31121
 
31478
- // ../../../node_modules/rimraf/dist/mjs/rimraf-native.js
31122
+ // ../../../node_modules/rimraf/dist/esm/rimraf-native.js
31479
31123
  var { rm: rm2 } = promises, rimrafNative = async (path6, opt) => (await rm2(path6, {
31480
31124
  ...opt,
31481
31125
  force: !0,
@@ -31486,14 +31130,11 @@ var { rm: rm2 } = promises, rimrafNative = async (path6, opt) => (await rm2(path
31486
31130
  recursive: !0
31487
31131
  }), !0);
31488
31132
 
31489
- // ../../../node_modules/rimraf/dist/mjs/use-native.js
31490
- var version = process.env.__TESTING_RIMRAF_NODE_VERSION__ || process.version, versArr = version.replace(/^v/, "").split("."), hasNative = +versArr[0] > 14 || +versArr[0] == 14 && +versArr[1] >= 14, useNative = !hasNative || platform_default === "win32" ? () => !1 : (opt) => !opt?.signal && !opt?.filter, useNativeSync = !hasNative || platform_default === "win32" ? () => !1 : (opt) => !opt?.signal && !opt?.filter;
31133
+ // ../../../node_modules/rimraf/dist/esm/use-native.js
31134
+ var version = process.env.__TESTING_RIMRAF_NODE_VERSION__ || process.version, versArr = version.replace(/^v/, "").split("."), [major = 0, minor = 0] = versArr.map((v) => parseInt(v, 10)), hasNative = major > 14 || major === 14 && minor >= 14, useNative = !hasNative || platform_default === "win32" ? () => !1 : (opt) => !opt?.signal && !opt?.filter, useNativeSync = !hasNative || platform_default === "win32" ? () => !1 : (opt) => !opt?.signal && !opt?.filter;
31491
31135
 
31492
- // ../../../node_modules/rimraf/dist/mjs/index.js
31493
- var typeOrUndef = (val, t) => typeof val > "u" || typeof val === t, isRimrafOptions = (o) => !!o && typeof o == "object" && typeOrUndef(o.preserveRoot, "boolean") && typeOrUndef(o.tmp, "string") && typeOrUndef(o.maxRetries, "number") && typeOrUndef(o.retryDelay, "number") && typeOrUndef(o.backoff, "number") && typeOrUndef(o.maxBackoff, "number") && (typeOrUndef(o.glob, "boolean") || o.glob && typeof o.glob == "object") && typeOrUndef(o.filter, "function"), assertRimrafOptions = (o) => {
31494
- if (!isRimrafOptions(o))
31495
- throw new Error("invalid rimraf options");
31496
- }, wrap = (fn) => async (path6, opt) => {
31136
+ // ../../../node_modules/rimraf/dist/esm/index.js
31137
+ var wrap = (fn) => async (path6, opt) => {
31497
31138
  let options = optArg(opt);
31498
31139
  return options.glob && (path6 = await glob(path6, options.glob)), Array.isArray(path6) ? !!(await Promise.all(path6.map((p) => fn(path_arg_default(p, options), options)))).reduce((a, b) => a && b, !0) : !!await fn(path_arg_default(path6, options), options);
31499
31140
  }, wrapSync = (fn) => (path6, opt) => {
@@ -31527,12 +31168,12 @@ var open = require_opener(), exec = (cmd, options) => (0, import_node_child_proc
31527
31168
  targetGitDir = IS_TEST ? (0, import_node_path4.join)(tamaguiDir, "tamagui-test", template.repo.url.split("/").at(-1)) : (0, import_node_path4.join)(tamaguiDir, "tamagui", template.repo.url.split("/").at(-1)), console.info(), await setupTamaguiDotDir(template);
31528
31169
  let starterDir = (0, import_node_path4.join)(targetGitDir, ...template.repo.dir);
31529
31170
  console.info(), console.info(
31530
- `Copying starter from ${starterDir} into ${import_chalk7.default.blueBright(projectName)}...`
31531
- ), console.info(), await (0, import_fs_extra.copy)(starterDir, resolvedProjectPath), await rimraf(`${resolvedProjectPath}/.git`), console.info(import_chalk7.default.green(`${projectName} created!`)), console.info();
31171
+ `Copying starter from ${starterDir} into ${import_chalk5.default.blueBright(projectName)}...`
31172
+ ), console.info(), await (0, import_fs_extra.copy)(starterDir, resolvedProjectPath), await rimraf(`${resolvedProjectPath}/.git`), console.info(import_chalk5.default.green(`${projectName} created!`)), console.info();
31532
31173
  };
31533
31174
  async function setupTamaguiDotDir(template, isRetry = !1) {
31534
31175
  let repoRoot2 = (0, import_node_path4.join)(__dirname, "..", "..", "..");
31535
- if (console.info(`Setting up ${import_chalk7.default.blueBright(targetGitDir)}...`), IS_TEST && cd(repoRoot2), process.env.GITHUB_HEAD_REF)
31176
+ if (console.info(`Setting up ${import_chalk5.default.blueBright(targetGitDir)}...`), IS_TEST && cd(repoRoot2), process.env.GITHUB_HEAD_REF)
31536
31177
  try {
31537
31178
  await $`git switch -c ${process.env.GITHUB_HEAD_REF}`;
31538
31179
  } catch {
@@ -31560,7 +31201,7 @@ async function setupTamaguiDotDir(template, isRetry = !1) {
31560
31201
  }
31561
31202
  } catch (error) {
31562
31203
  throw error instanceof Error && template.value === "takeout-starter" && error?.stderr?.includes("Repository not found") && (console.info(
31563
- import_chalk7.default.yellow(
31204
+ import_chalk5.default.yellow(
31564
31205
  "You don't have access to this starter. Check \u{1F961} Tamagui Takeout (https://tamagui.dev/takeout) for more info."
31565
31206
  )
31566
31207
  ), open("https://tamagui.dev/takeout"), process.exit(0)), error;
@@ -31594,7 +31235,7 @@ var getDefaultRemoteName = () => {
31594
31235
  };
31595
31236
 
31596
31237
  // src/helpers/getProjectName.ts
31597
- var import_path7 = __toESM(require("path")), import_chalk8 = __toESM(require_source()), import_prompts = __toESM(require_prompts3());
31238
+ var import_path7 = __toESM(require("path")), import_chalk6 = __toESM(require_source()), import_prompts = __toESM(require_prompts3());
31598
31239
 
31599
31240
  // src/helpers/validateNpmPackage.ts
31600
31241
  var import_validate_npm_package_name = __toESM(require_validate_npm_package_name());
@@ -31622,82 +31263,82 @@ var getProjectName = async (projectPath2) => {
31622
31263
  typeof res.path == "string" && (projectPath2 = res.path.trim());
31623
31264
  }
31624
31265
  return projectPath2 || (console.info(), console.info("Please specify the project directory:"), console.info(
31625
- ` ${import_chalk8.default.cyan(package_default.name)} ${import_chalk8.default.green("<project-directory>")}`
31626
- ), console.info(), console.info("For example:"), console.info(` ${import_chalk8.default.cyan(package_default.name)} ${import_chalk8.default.green("my-tamagui-app")}`), console.info(), console.info(`Run ${import_chalk8.default.cyan(`${package_default.name} --help`)} to see all options.`), process.exit(1)), projectPath2;
31266
+ ` ${import_chalk6.default.cyan(package_default.name)} ${import_chalk6.default.green("<project-directory>")}`
31267
+ ), console.info(), console.info("For example:"), console.info(` ${import_chalk6.default.cyan(package_default.name)} ${import_chalk6.default.green("my-tamagui-app")}`), console.info(), console.info(`Run ${import_chalk6.default.cyan(`${package_default.name} --help`)} to see all options.`), process.exit(1)), projectPath2;
31627
31268
  };
31628
31269
 
31629
31270
  // src/helpers/getTemplateInfo.ts
31630
31271
  var import_prompts3 = __toESM(require_prompts3());
31631
31272
 
31632
31273
  // src/templates.ts
31633
- var import_fs14 = require("fs"), import_path9 = require("path"), import_chalk14 = __toESM(require_source());
31274
+ var import_fs14 = require("fs"), import_path9 = require("path"), import_chalk12 = __toESM(require_source());
31634
31275
 
31635
31276
  // src/steps/simple-web.ts
31636
- var import_chalk9 = __toESM(require_source()), packageManager = "yarn", useYarn = packageManager === "yarn", runCommand = (scriptName) => `${packageManager} ${useYarn ? "" : "run "}${scriptName}`, main = async ({ isFullClone, projectName }) => {
31277
+ var import_chalk7 = __toESM(require_source()), packageManager = "yarn", useYarn = packageManager === "yarn", runCommand = (scriptName) => `${packageManager} ${useYarn ? "" : "run "}${scriptName}`, main = async ({ isFullClone, projectName }) => {
31637
31278
  isFullClone && console.info(`
31638
- ${import_chalk9.default.green.bold("Done!")} created a new project under ./${projectName}
31279
+ ${import_chalk7.default.green.bold("Done!")} created a new project under ./${projectName}
31639
31280
 
31640
31281
  visit your project:
31641
- ${import_chalk9.default.green("cd")} ${projectName}
31282
+ ${import_chalk7.default.green("cd")} ${projectName}
31642
31283
  `), console.info(`
31643
31284
  To start the Next.js development server, run:
31644
- ${import_chalk9.default.green(runCommand("web"))}
31285
+ ${import_chalk7.default.green(runCommand("web"))}
31645
31286
  `);
31646
31287
  }, simple_web_default = main;
31647
31288
 
31648
31289
  // src/steps/expo-router.ts
31649
- var import_chalk10 = __toESM(require_source());
31290
+ var import_chalk8 = __toESM(require_source());
31650
31291
  var main2 = async ({ isFullClone, projectName }) => {
31651
31292
  isFullClone && console.info(`
31652
- ${import_chalk10.default.green.bold("Done!")} created a new project under ./${projectName}
31293
+ ${import_chalk8.default.green.bold("Done!")} created a new project under ./${projectName}
31653
31294
 
31654
31295
  visit your project:
31655
- ${import_chalk10.default.green("cd")} ${projectName}
31296
+ ${import_chalk8.default.green("cd")} ${projectName}
31656
31297
  `);
31657
31298
  }, expo_router_default = main2;
31658
31299
 
31659
31300
  // src/steps/starter-free.ts
31660
- var import_chalk11 = __toESM(require_source()), packageManager2 = "yarn", useYarn2 = packageManager2 === "yarn", runCommand2 = (scriptName) => `${packageManager2} ${useYarn2 ? "" : "run "}${scriptName}`, main3 = async ({ isFullClone, projectName }) => {
31661
- console.info("Note: you need yarn for this repo."), isFullClone && console.info(`${import_chalk11.default.green.bold(
31301
+ var import_chalk9 = __toESM(require_source()), packageManager2 = "yarn", useYarn2 = packageManager2 === "yarn", runCommand2 = (scriptName) => `${packageManager2} ${useYarn2 ? "" : "run "}${scriptName}`, main3 = async ({ isFullClone, projectName }) => {
31302
+ console.info("Note: you need yarn for this repo."), isFullClone && console.info(`${import_chalk9.default.green.bold(
31662
31303
  "Done!"
31663
31304
  )} created a new project under ./${projectName}
31664
31305
 
31665
31306
  visit your project:
31666
- ${import_chalk11.default.green("cd")} ${projectName}
31307
+ ${import_chalk9.default.green("cd")} ${projectName}
31667
31308
  `), console.info(`
31668
31309
  To start the Next.js development server, run:
31669
- ${import_chalk11.default.green(runCommand2("web"))}
31310
+ ${import_chalk9.default.green(runCommand2("web"))}
31670
31311
 
31671
31312
  To start Expo Go for mobile development, run:
31672
- ${import_chalk11.default.green(runCommand2("native"))}
31313
+ ${import_chalk9.default.green(runCommand2("native"))}
31673
31314
 
31674
31315
  You can also create Expo development builds by doing:
31675
31316
 
31676
- ${import_chalk11.default.green("cd apps/expo")}
31317
+ ${import_chalk9.default.green("cd apps/expo")}
31677
31318
  then:
31678
- ${import_chalk11.default.green(runCommand2("ios"))}
31319
+ ${import_chalk9.default.green(runCommand2("ios"))}
31679
31320
  or...
31680
- ${import_chalk11.default.green(runCommand2("android"))}
31321
+ ${import_chalk9.default.green(runCommand2("android"))}
31681
31322
 
31682
31323
  Be sure to replace yourprojectsname in app.json with the uid you'd like for your app.
31683
31324
  `);
31684
31325
  }, starter_free_default = main3;
31685
31326
 
31686
31327
  // src/steps/remix.ts
31687
- var import_chalk12 = __toESM(require_source()), packageManager3 = "yarn", useYarn3 = packageManager3 === "yarn", runCommand3 = (scriptName) => `${packageManager3} ${useYarn3 ? "" : "run "}${scriptName}`, main4 = async ({ isFullClone, projectName }) => {
31328
+ var import_chalk10 = __toESM(require_source()), packageManager3 = "yarn", useYarn3 = packageManager3 === "yarn", runCommand3 = (scriptName) => `${packageManager3} ${useYarn3 ? "" : "run "}${scriptName}`, main4 = async ({ isFullClone, projectName }) => {
31688
31329
  isFullClone && console.info(`
31689
- ${import_chalk12.default.green.bold("Done!")} created a new project under ./${projectName}
31330
+ ${import_chalk10.default.green.bold("Done!")} created a new project under ./${projectName}
31690
31331
 
31691
31332
  visit your project:
31692
- ${import_chalk12.default.green("cd")} ${projectName}
31333
+ ${import_chalk10.default.green("cd")} ${projectName}
31693
31334
  `), console.info(`
31694
31335
  To start the Remix development server, run:
31695
- ${import_chalk12.default.green(runCommand3("dev"))}
31336
+ ${import_chalk10.default.green(runCommand3("dev"))}
31696
31337
  `);
31697
31338
  }, remix_default = main4;
31698
31339
 
31699
31340
  // src/steps/takeout.ts
31700
- var import_child_process = require("child_process"), import_fs13 = require("fs"), import_promises2 = __toESM(require("fs/promises")), import_path8 = __toESM(require("path")), import_chalk13 = __toESM(require_source()), import_prompts2 = __toESM(require_prompts3());
31341
+ var import_child_process = require("child_process"), import_fs13 = require("fs"), import_promises2 = __toESM(require("fs/promises")), import_path8 = __toESM(require("path")), import_chalk11 = __toESM(require_source()), import_prompts2 = __toESM(require_prompts3());
31701
31342
  var packageManager4 = "yarn", useYarn4 = packageManager4 === "yarn", runCommand4 = (scriptName) => `${packageManager4} ${useYarn4 ? "" : "run "}${scriptName}`, main5 = async ({ isFullClone, projectName, projectPath: projectPath2 }) => {
31702
31343
  console.info(`
31703
31344
  ${tamaguiRainbowAsciiArt.split(`
@@ -31747,32 +31388,32 @@ ${takeoutAsciiArt}
31747
31388
  setupRemoteSupabase && (await runRetryableCommand("npx supabase login"), console.info(), await linkSupabase());
31748
31389
  }
31749
31390
  isFullClone && console.info(`
31750
- ${import_chalk13.default.green.bold("Done!")} created a new project under ./${projectName}
31391
+ ${import_chalk11.default.green.bold("Done!")} created a new project under ./${projectName}
31751
31392
 
31752
31393
  visit your project:
31753
- ${import_chalk13.default.green(" cd")} ${projectName}
31394
+ ${import_chalk11.default.green(" cd")} ${projectName}
31754
31395
  `), console.info(`
31755
31396
  To start the Next.js development server, run:
31756
- ${import_chalk13.default.green(runCommand4("web"))}
31397
+ ${import_chalk11.default.green(runCommand4("web"))}
31757
31398
 
31758
31399
  To start developing with Expo for native, run:
31759
- ${import_chalk13.default.green(runCommand4("native"))}
31400
+ ${import_chalk11.default.green(runCommand4("native"))}
31760
31401
 
31761
31402
  To start developing for Expo dev build, run:
31762
- ${import_chalk13.default.green(runCommand4("ios"))}
31763
- ${import_chalk13.default.green(runCommand4("android"))}
31403
+ ${import_chalk11.default.green(runCommand4("ios"))}
31404
+ ${import_chalk11.default.green(runCommand4("android"))}
31764
31405
 
31765
31406
  To run Supabase scripts, cd into the supabase package:
31766
- ${import_chalk13.default.green("cd supabase")}
31407
+ ${import_chalk11.default.green("cd supabase")}
31767
31408
 
31768
- ${import_chalk13.default.green("yarn reset")} - Resets local database
31769
- ${import_chalk13.default.green("yarn generate")} - Generates new types
31409
+ ${import_chalk11.default.green("yarn reset")} - Resets local database
31410
+ ${import_chalk11.default.green("yarn generate")} - Generates new types
31770
31411
 
31771
- Find info on the rest of the scripts in ${import_chalk13.default.cyan("supabase/README.md")}
31412
+ Find info on the rest of the scripts in ${import_chalk11.default.cyan("supabase/README.md")}
31772
31413
 
31773
31414
  If you've purchased and gained access to font and icon packages, you can run:
31774
- ${import_chalk13.default.green("yarn add:icon")}
31775
- ${import_chalk13.default.green("yarn add:font")}
31415
+ ${import_chalk11.default.green("yarn add:icon")}
31416
+ ${import_chalk11.default.green("yarn add:font")}
31776
31417
  `);
31777
31418
  }, takeout_default = main5;
31778
31419
  async function runRetryableCommand(cmd, retriesCount = 0) {
@@ -31789,8 +31430,8 @@ async function runRetryableCommand(cmd, retriesCount = 0) {
31789
31430
  await runRetryableCommand(cmd, retriesCount + 1);
31790
31431
  else
31791
31432
  return console.info(
31792
- import_chalk13.default.yellow(
31793
- `\u26A0\uFE0F Skipping this step. You can try running this command later. The failed command was \`${import_chalk13.default.underline(
31433
+ import_chalk11.default.yellow(
31434
+ `\u26A0\uFE0F Skipping this step. You can try running this command later. The failed command was \`${import_chalk11.default.underline(
31794
31435
  cmd
31795
31436
  )}\`.`
31796
31437
  )
@@ -31819,8 +31460,8 @@ async function linkSupabase() {
31819
31460
  await linkSupabase();
31820
31461
  else
31821
31462
  return console.info(
31822
- import_chalk13.default.yellow(
31823
- `\u26A0\uFE0F Skipping this step. You can try running this command later. The failed command was \`${import_chalk13.default.underline(
31463
+ import_chalk11.default.yellow(
31464
+ `\u26A0\uFE0F Skipping this step. You can try running this command later. The failed command was \`${import_chalk11.default.underline(
31824
31465
  cmd
31825
31466
  )}\`.`
31826
31467
  )
@@ -31855,8 +31496,8 @@ var repoRoot = (0, import_path9.join)(__dirname, "..", "..", ".."), starterFreeR
31855
31496
  extraSteps: starter_free_default
31856
31497
  },
31857
31498
  {
31858
- title: `${import_chalk14.default.bold.underline(
31859
- `\u{1F961} ${import_chalk14.default.magenta("Take")}${import_chalk14.default.red("out")}`
31499
+ title: `${import_chalk12.default.bold.underline(
31500
+ `\u{1F961} ${import_chalk12.default.magenta("Take")}${import_chalk12.default.red("out")}`
31860
31501
  )} - Supported stack with more to start: https://tamagui.dev/takeout`,
31861
31502
  value: "takeout-starter",
31862
31503
  type: "premium",
@@ -31944,11 +31585,11 @@ var program = new import_commander.default.Command(package_default.name).version
31944
31585
  "Choose between four or more starter templates.",
31945
31586
  ""
31946
31587
  ).allowUnknownOption().usage(
31947
- `${import_chalk15.default.green("<project-directory>")} [options]
31588
+ `${import_chalk13.default.green("<project-directory>")} [options]
31948
31589
 
31949
31590
  Example usage:
31950
31591
 
31951
- ${import_chalk15.default.blueBright(`npx ${package_default.name} next-expo`)}`
31592
+ ${import_chalk13.default.blueBright(`npx ${package_default.name} next-expo`)}`
31952
31593
  ).parse(process.argv);
31953
31594
  process.argv.includes("--version") && (console.info(package_default.version), process.exit(0));
31954
31595
  var info = !!program.info;
@@ -31962,10 +31603,10 @@ async function run() {
31962
31603
  return;
31963
31604
  }
31964
31605
  console.info(), console.info(
31965
- import_chalk15.default.bold(
31606
+ import_chalk13.default.bold(
31966
31607
  ' Note: You may need to run "npm create tamagui@latest" to get the latest version!'
31967
31608
  )
31968
- ), console.info(), console.info(), console.info(tamaguiRainbowAsciiArt), console.info(import_chalk15.default.bold("Creating tamagui app...")), parseFloat(
31609
+ ), console.info(), console.info(), console.info(tamaguiRainbowAsciiArt), console.info(import_chalk13.default.bold("Creating tamagui app...")), parseFloat(
31969
31610
  (0, import_node_child_process3.execSync)("git --version").toString().replace("git version ", "").trim()
31970
31611
  ) < 2.27 && (console.error(`
31971
31612
 
@@ -31984,19 +31625,19 @@ Opening Takeout website - once you purchase you can restart the create process.
31984
31625
  ), process.exit(0))), console.info();
31985
31626
  let resolvedProjectPath = import_node_path5.default.resolve(process.cwd(), projectPath), projectName = import_node_path5.default.basename(resolvedProjectPath), { valid, problems } = validateNpmName(projectName);
31986
31627
  valid || (console.error(
31987
- `Could not create a project called ${import_chalk15.default.red(
31628
+ `Could not create a project called ${import_chalk13.default.red(
31988
31629
  `"${projectName}"`
31989
31630
  )} because of npm naming restrictions:`
31990
- ), problems.forEach((p) => console.error(` ${import_chalk15.default.red.bold("*")} ${p}`)), process.exit(1)), import_node_fs3.default.existsSync(resolvedProjectPath) && (console.info(), console.info(
31991
- import_chalk15.default.red("\u{1F6A8} [tamagui] error"),
31992
- `You tried to make a project called ${import_chalk15.default.underline(
31993
- import_chalk15.default.blueBright(projectName)
31994
- )}, but a folder with that name already exists: ${import_chalk15.default.blueBright(
31631
+ ), problems.forEach((p) => console.error(` ${import_chalk13.default.red.bold("*")} ${p}`)), process.exit(1)), import_node_fs3.default.existsSync(resolvedProjectPath) && (console.info(), console.info(
31632
+ import_chalk13.default.red("\u{1F6A8} [tamagui] error"),
31633
+ `You tried to make a project called ${import_chalk13.default.underline(
31634
+ import_chalk13.default.blueBright(projectName)
31635
+ )}, but a folder with that name already exists: ${import_chalk13.default.blueBright(
31995
31636
  resolvedProjectPath
31996
31637
  )}
31997
31638
 
31998
- ${import_chalk15.default.bold(import_chalk15.default.red("Please pick a different project name \u{1F978}"))}`
31999
- ), console.info(), console.info(), process.exit(1)), console.info(), console.info(`Creating a new tamagui app ${import_chalk15.default.blueBright(resolvedProjectPath)}...`), import_node_fs3.default.mkdirSync(resolvedProjectPath), console.info(import_chalk15.default.green(`${projectName} folder created.`));
31639
+ ${import_chalk13.default.bold(import_chalk13.default.red("Please pick a different project name \u{1F978}"))}`
31640
+ ), console.info(), console.info(), process.exit(1)), console.info(), console.info(`Creating a new tamagui app ${import_chalk13.default.blueBright(resolvedProjectPath)}...`), import_node_fs3.default.mkdirSync(resolvedProjectPath), console.info(import_chalk13.default.green(`${projectName} folder created.`));
32000
31641
  try {
32001
31642
  await cloneStarter(template, resolvedProjectPath, projectName), cd(resolvedProjectPath), console.info();
32002
31643
  } catch (e) {
@@ -32016,7 +31657,7 @@ ${e}`), process.exit(1);
32016
31657
  isFullClone: !0,
32017
31658
  projectName,
32018
31659
  projectPath: resolvedProjectPath
32019
- }), console.info(), console.info(import_chalk15.default.gray(tamaguiDuckAsciiArt));
31660
+ }), console.info(), console.info(import_chalk13.default.gray(tamaguiDuckAsciiArt));
32020
31661
  }
32021
31662
  function updatePackageJsonName(projectName, dir) {
32022
31663
  let packageJsonPath = import_node_path5.default.join(dir, "package.json");