@betty-blocks/cli 25.109.0-beta.1 → 26.0.0-alpha.1

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.
Files changed (46) hide show
  1. package/assets/app-functions/wasm-template/.wasm-functions +0 -0
  2. package/assets/app-functions/wasm-template/functions/say-hello/1.0/Cargo.lock +449 -0
  3. package/assets/app-functions/wasm-template/functions/say-hello/1.0/Cargo.toml +10 -0
  4. package/assets/app-functions/wasm-template/functions/say-hello/1.0/Justfile +6 -0
  5. package/assets/app-functions/wasm-template/functions/say-hello/1.0/function.json +35 -0
  6. package/assets/app-functions/wasm-template/functions/say-hello/1.0/src/lib.rs +19 -0
  7. package/assets/app-functions/wasm-template/functions/say-hello/1.0/wit/world.wit +13 -0
  8. package/build/src/bb-blocks-new.js +5361 -2181
  9. package/build/src/bb-blocks-publish.js +11493 -18303
  10. package/build/src/bb-blocks-release.js +65 -46
  11. package/build/src/bb-blocks.js +32 -32
  12. package/build/src/bb-bundle-init.js +1542 -912
  13. package/build/src/bb-bundle.js +35 -32
  14. package/build/src/bb-components-build.js +34965 -7598
  15. package/build/src/bb-components-create.js +1542 -912
  16. package/build/src/bb-components-generate.js +1542 -912
  17. package/build/src/bb-components-publish-bundle.js +1519 -889
  18. package/build/src/bb-components-publish.js +1522 -892
  19. package/build/src/bb-components-serve.js +1524 -894
  20. package/build/src/bb-components.js +32 -32
  21. package/build/src/bb-functions-bump.js +6047 -2733
  22. package/build/src/bb-functions-init.js +100 -593
  23. package/build/src/bb-functions-login.js +65 -46
  24. package/build/src/bb-functions-logout.js +65 -46
  25. package/build/src/bb-functions-new.js +5464 -2195
  26. package/build/src/bb-functions-publish.js +15134 -76022
  27. package/build/src/bb-functions-validate.js +7262 -3950
  28. package/build/src/bb-functions.js +35 -37
  29. package/build/src/bb.js +76 -74
  30. package/package.json +41 -42
  31. package/assets/app-functions/templates/test/helpers.js +0 -3
  32. package/assets/app-functions/templates/test/say-hello.test.js +0 -4
  33. package/assets/functions/packer/package.json +0 -9
  34. package/assets/functions/packer/webpack.config.js +0 -12
  35. package/assets/functions/templates/functions.json +0 -14
  36. package/assets/functions/templates/package.json +0 -11
  37. package/assets/functions/templates/src/all-users.js +0 -14
  38. package/assets/functions/templates/src/get-json.js +0 -9
  39. package/assets/functions/templates/src/index.js +0 -5
  40. package/assets/functions/templates/src/say-hello.js +0 -13
  41. package/build/src/bb-functions-build.js +0 -4285
  42. package/src/bb.ts +0 -31
  43. /package/assets/app-functions/{templates → js-template}/.app-functions +0 -0
  44. /package/assets/app-functions/{templates → js-template}/functions/say-hello/1.0/function.json +0 -0
  45. /package/assets/app-functions/{templates → js-template}/functions/say-hello/1.0/index.js +0 -0
  46. /package/assets/app-functions/{templates → js-template}/package.json +0 -0
@@ -78,7 +78,7 @@ var require_argument = __commonJS((exports) => {
78
78
  this._name = name;
79
79
  break;
80
80
  }
81
- if (this._name.length > 3 && this._name.slice(-3) === "...") {
81
+ if (this._name.endsWith("...")) {
82
82
  this.variadic = true;
83
83
  this._name = this._name.slice(0, -3);
84
84
  }
@@ -86,11 +86,12 @@ var require_argument = __commonJS((exports) => {
86
86
  name() {
87
87
  return this._name;
88
88
  }
89
- _concatValue(value, previous) {
89
+ _collectValue(value, previous) {
90
90
  if (previous === this.defaultValue || !Array.isArray(previous)) {
91
91
  return [value];
92
92
  }
93
- return previous.concat(value);
93
+ previous.push(value);
94
+ return previous;
94
95
  }
95
96
  default(value, description) {
96
97
  this.defaultValue = value;
@@ -108,7 +109,7 @@ var require_argument = __commonJS((exports) => {
108
109
  throw new InvalidArgumentError(`Allowed choices are ${this.argChoices.join(", ")}.`);
109
110
  }
110
111
  if (this.variadic) {
111
- return this._concatValue(arg, previous);
112
+ return this._collectValue(arg, previous);
112
113
  }
113
114
  return arg;
114
115
  };
@@ -555,11 +556,12 @@ var require_option = __commonJS((exports) => {
555
556
  this.hidden = !!hide;
556
557
  return this;
557
558
  }
558
- _concatValue(value, previous) {
559
+ _collectValue(value, previous) {
559
560
  if (previous === this.defaultValue || !Array.isArray(previous)) {
560
561
  return [value];
561
562
  }
562
- return previous.concat(value);
563
+ previous.push(value);
564
+ return previous;
563
565
  }
564
566
  choices(values) {
565
567
  this.argChoices = values.slice();
@@ -568,7 +570,7 @@ var require_option = __commonJS((exports) => {
568
570
  throw new InvalidArgumentError(`Allowed choices are ${this.argChoices.join(", ")}.`);
569
571
  }
570
572
  if (this.variadic) {
571
- return this._concatValue(arg, previous);
573
+ return this._collectValue(arg, previous);
572
574
  }
573
575
  return arg;
574
576
  };
@@ -874,7 +876,10 @@ var require_command = __commonJS((exports) => {
874
876
  configureOutput(configuration) {
875
877
  if (configuration === undefined)
876
878
  return this._outputConfiguration;
877
- this._outputConfiguration = Object.assign({}, this._outputConfiguration, configuration);
879
+ this._outputConfiguration = {
880
+ ...this._outputConfiguration,
881
+ ...configuration
882
+ };
878
883
  return this;
879
884
  }
880
885
  showHelpAfterError(displayHelp = true) {
@@ -923,7 +928,7 @@ var require_command = __commonJS((exports) => {
923
928
  }
924
929
  addArgument(argument) {
925
930
  const previousArgument = this.registeredArguments.slice(-1)[0];
926
- if (previousArgument && previousArgument.variadic) {
931
+ if (previousArgument?.variadic) {
927
932
  throw new Error(`only the last argument can be variadic '${previousArgument.name()}'`);
928
933
  }
929
934
  if (argument.required && argument.defaultValue !== undefined && argument.parseArg === undefined) {
@@ -1078,7 +1083,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
1078
1083
  if (val !== null && option.parseArg) {
1079
1084
  val = this._callParseArg(option, val, oldValue, invalidValueMessage);
1080
1085
  } else if (val !== null && option.variadic) {
1081
- val = option._concatValue(val, oldValue);
1086
+ val = option._collectValue(val, oldValue);
1082
1087
  }
1083
1088
  if (val == null) {
1084
1089
  if (option.negate) {
@@ -1453,7 +1458,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
1453
1458
  this.processedArgs = processedArgs;
1454
1459
  }
1455
1460
  _chainOrCall(promise, fn) {
1456
- if (promise && promise.then && typeof promise.then === "function") {
1461
+ if (promise?.then && typeof promise.then === "function") {
1457
1462
  return promise.then(() => fn());
1458
1463
  }
1459
1464
  return fn();
@@ -1530,7 +1535,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
1530
1535
  promiseChain = this._chainOrCallHooks(promiseChain, "postAction");
1531
1536
  return promiseChain;
1532
1537
  }
1533
- if (this.parent && this.parent.listenerCount(commandEvent)) {
1538
+ if (this.parent?.listenerCount(commandEvent)) {
1534
1539
  checkForUnknownOptions();
1535
1540
  this._processArguments();
1536
1541
  this.parent.emit(commandEvent, operands, unknown);
@@ -1592,11 +1597,10 @@ Expecting one of '${allowedValues.join("', '")}'`);
1592
1597
  cmd._checkForConflictingLocalOptions();
1593
1598
  });
1594
1599
  }
1595
- parseOptions(argv) {
1600
+ parseOptions(args) {
1596
1601
  const operands = [];
1597
1602
  const unknown = [];
1598
1603
  let dest = operands;
1599
- const args = argv.slice();
1600
1604
  function maybeOption(arg) {
1601
1605
  return arg.length > 1 && arg[0] === "-";
1602
1606
  }
@@ -1606,12 +1610,15 @@ Expecting one of '${allowedValues.join("', '")}'`);
1606
1610
  return !this._getCommandAndAncestors().some((cmd) => cmd.options.map((opt) => opt.short).some((short) => /^-\d$/.test(short)));
1607
1611
  };
1608
1612
  let activeVariadicOption = null;
1609
- while (args.length) {
1610
- const arg = args.shift();
1613
+ let activeGroup = null;
1614
+ let i = 0;
1615
+ while (i < args.length || activeGroup) {
1616
+ const arg = activeGroup ?? args[i++];
1617
+ activeGroup = null;
1611
1618
  if (arg === "--") {
1612
1619
  if (dest === unknown)
1613
1620
  dest.push(arg);
1614
- dest.push(...args);
1621
+ dest.push(...args.slice(i));
1615
1622
  break;
1616
1623
  }
1617
1624
  if (activeVariadicOption && (!maybeOption(arg) || negativeNumberArg(arg))) {
@@ -1623,14 +1630,14 @@ Expecting one of '${allowedValues.join("', '")}'`);
1623
1630
  const option = this._findOption(arg);
1624
1631
  if (option) {
1625
1632
  if (option.required) {
1626
- const value = args.shift();
1633
+ const value = args[i++];
1627
1634
  if (value === undefined)
1628
1635
  this.optionMissingArgument(option);
1629
1636
  this.emit(`option:${option.name()}`, value);
1630
1637
  } else if (option.optional) {
1631
1638
  let value = null;
1632
- if (args.length > 0 && (!maybeOption(args[0]) || negativeNumberArg(args[0]))) {
1633
- value = args.shift();
1639
+ if (i < args.length && (!maybeOption(args[i]) || negativeNumberArg(args[i]))) {
1640
+ value = args[i++];
1634
1641
  }
1635
1642
  this.emit(`option:${option.name()}`, value);
1636
1643
  } else {
@@ -1647,7 +1654,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
1647
1654
  this.emit(`option:${option.name()}`, arg.slice(2));
1648
1655
  } else {
1649
1656
  this.emit(`option:${option.name()}`);
1650
- args.unshift(`-${arg.slice(2)}`);
1657
+ activeGroup = `-${arg.slice(2)}`;
1651
1658
  }
1652
1659
  continue;
1653
1660
  }
@@ -1666,25 +1673,18 @@ Expecting one of '${allowedValues.join("', '")}'`);
1666
1673
  if ((this._enablePositionalOptions || this._passThroughOptions) && operands.length === 0 && unknown.length === 0) {
1667
1674
  if (this._findCommand(arg)) {
1668
1675
  operands.push(arg);
1669
- if (args.length > 0)
1670
- unknown.push(...args);
1676
+ unknown.push(...args.slice(i));
1671
1677
  break;
1672
1678
  } else if (this._getHelpCommand() && arg === this._getHelpCommand().name()) {
1673
- operands.push(arg);
1674
- if (args.length > 0)
1675
- operands.push(...args);
1679
+ operands.push(arg, ...args.slice(i));
1676
1680
  break;
1677
1681
  } else if (this._defaultCommandName) {
1678
- unknown.push(arg);
1679
- if (args.length > 0)
1680
- unknown.push(...args);
1682
+ unknown.push(arg, ...args.slice(i));
1681
1683
  break;
1682
1684
  }
1683
1685
  }
1684
1686
  if (this._passThroughOptions) {
1685
- dest.push(arg);
1686
- if (args.length > 0)
1687
- dest.push(...args);
1687
+ dest.push(arg, ...args.slice(i));
1688
1688
  break;
1689
1689
  }
1690
1690
  dest.push(arg);
@@ -6114,7 +6114,7 @@ var require_combined_stream = __commonJS((exports, module) => {
6114
6114
  };
6115
6115
  });
6116
6116
 
6117
- // node_modules/mime-db/db.json
6117
+ // node_modules/form-data/node_modules/mime-types/node_modules/mime-db/db.json
6118
6118
  var require_db = __commonJS((exports, module) => {
6119
6119
  module.exports = {
6120
6120
  "application/1d-interleaved-parityfec": {
@@ -14637,7 +14637,7 @@ var require_db = __commonJS((exports, module) => {
14637
14637
  };
14638
14638
  });
14639
14639
 
14640
- // node_modules/mime-db/index.js
14640
+ // node_modules/form-data/node_modules/mime-types/node_modules/mime-db/index.js
14641
14641
  var require_mime_db = __commonJS((exports, module) => {
14642
14642
  /*!
14643
14643
  * mime-db
@@ -14648,7 +14648,7 @@ var require_mime_db = __commonJS((exports, module) => {
14648
14648
  module.exports = require_db();
14649
14649
  });
14650
14650
 
14651
- // node_modules/mime-types/index.js
14651
+ // node_modules/form-data/node_modules/mime-types/index.js
14652
14652
  var require_mime_types = __commonJS((exports) => {
14653
14653
  /*!
14654
14654
  * mime-types
@@ -15649,7 +15649,7 @@ var require_es_set_tostringtag = __commonJS((exports, module) => {
15649
15649
  };
15650
15650
  });
15651
15651
 
15652
- // node_modules/@azure/ms-rest-js/node_modules/form-data/lib/populate.js
15652
+ // node_modules/form-data/lib/populate.js
15653
15653
  var require_populate = __commonJS((exports, module) => {
15654
15654
  module.exports = function(dst, src) {
15655
15655
  Object.keys(src).forEach(function(prop) {
@@ -15716,7 +15716,7 @@ var require_safe_buffer = __commonJS((exports, module) => {
15716
15716
  };
15717
15717
  });
15718
15718
 
15719
- // node_modules/@azure/ms-rest-js/node_modules/form-data/lib/form_data.js
15719
+ // node_modules/form-data/lib/form_data.js
15720
15720
  var require_form_data = __commonJS((exports, module) => {
15721
15721
  var CombinedStream = require_combined_stream();
15722
15722
  var util = __require("util");
@@ -40454,6 +40454,23 @@ var require_stat = __commonJS((exports, module) => {
40454
40454
  };
40455
40455
  });
40456
40456
 
40457
+ // node_modules/fs-extra/lib/util/async.js
40458
+ var require_async2 = __commonJS((exports, module) => {
40459
+ async function asyncIteratorConcurrentProcess(iterator, fn) {
40460
+ const promises = [];
40461
+ for await (const item of iterator) {
40462
+ promises.push(fn(item).then(() => null, (err) => err ?? new Error("unknown error")));
40463
+ }
40464
+ await Promise.all(promises.map((promise) => promise.then((possibleErr) => {
40465
+ if (possibleErr !== null)
40466
+ throw possibleErr;
40467
+ })));
40468
+ }
40469
+ module.exports = {
40470
+ asyncIteratorConcurrentProcess
40471
+ };
40472
+ });
40473
+
40457
40474
  // node_modules/fs-extra/lib/copy/copy.js
40458
40475
  var require_copy = __commonJS((exports, module) => {
40459
40476
  var fs = require_fs();
@@ -40462,6 +40479,7 @@ var require_copy = __commonJS((exports, module) => {
40462
40479
  var { pathExists } = require_path_exists();
40463
40480
  var { utimesMillis } = require_utimes();
40464
40481
  var stat = require_stat();
40482
+ var { asyncIteratorConcurrentProcess } = require_async2();
40465
40483
  async function copy(src, dest, opts = {}) {
40466
40484
  if (typeof opts === "function") {
40467
40485
  opts = { filter: opts };
@@ -40537,19 +40555,15 @@ var require_copy = __commonJS((exports, module) => {
40537
40555
  if (!destStat) {
40538
40556
  await fs.mkdir(dest);
40539
40557
  }
40540
- const promises = [];
40541
- for await (const item of await fs.opendir(src)) {
40558
+ await asyncIteratorConcurrentProcess(await fs.opendir(src), async (item) => {
40542
40559
  const srcItem = path.join(src, item.name);
40543
40560
  const destItem = path.join(dest, item.name);
40544
- promises.push(runFilter(srcItem, destItem, opts).then((include) => {
40545
- if (include) {
40546
- return stat.checkPaths(srcItem, destItem, "copy", opts).then(({ destStat: destStat2 }) => {
40547
- return getStatsAndPerformCopy(destStat2, srcItem, destItem, opts);
40548
- });
40549
- }
40550
- }));
40551
- }
40552
- await Promise.all(promises);
40561
+ const include = await runFilter(srcItem, destItem, opts);
40562
+ if (include) {
40563
+ const { destStat: destStat2 } = await stat.checkPaths(srcItem, destItem, "copy", opts);
40564
+ await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts);
40565
+ }
40566
+ });
40553
40567
  if (!destStat) {
40554
40568
  await fs.chmod(dest, srcStat.mode);
40555
40569
  }
@@ -41165,13 +41179,12 @@ var require_jsonfile = __commonJS((exports, module) => {
41165
41179
  const str = stringify(obj, options);
41166
41180
  return fs.writeFileSync(file, str, options);
41167
41181
  }
41168
- var jsonfile = {
41182
+ module.exports = {
41169
41183
  readFile,
41170
41184
  readFileSync,
41171
41185
  writeFile,
41172
41186
  writeFileSync
41173
41187
  };
41174
- module.exports = jsonfile;
41175
41188
  });
41176
41189
 
41177
41190
  // node_modules/fs-extra/lib/json/jsonfile.js
@@ -41377,518 +41390,653 @@ var require_lib4 = __commonJS((exports, module) => {
41377
41390
  };
41378
41391
  });
41379
41392
 
41380
- // node_modules/semver/semver.js
41381
- var require_semver = __commonJS((exports, module) => {
41382
- exports = module.exports = SemVer;
41383
- var debug;
41384
- if (typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG)) {
41385
- debug = function() {
41386
- var args = Array.prototype.slice.call(arguments, 0);
41387
- args.unshift("SEMVER");
41388
- console.log.apply(console, args);
41389
- };
41390
- } else {
41391
- debug = function() {};
41392
- }
41393
- exports.SEMVER_SPEC_VERSION = "2.0.0";
41393
+ // node_modules/semver/internal/constants.js
41394
+ var require_constants = __commonJS((exports, module) => {
41395
+ var SEMVER_SPEC_VERSION = "2.0.0";
41394
41396
  var MAX_LENGTH = 256;
41395
41397
  var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
41396
41398
  var MAX_SAFE_COMPONENT_LENGTH = 16;
41397
41399
  var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
41400
+ var RELEASE_TYPES = [
41401
+ "major",
41402
+ "premajor",
41403
+ "minor",
41404
+ "preminor",
41405
+ "patch",
41406
+ "prepatch",
41407
+ "prerelease"
41408
+ ];
41409
+ module.exports = {
41410
+ MAX_LENGTH,
41411
+ MAX_SAFE_COMPONENT_LENGTH,
41412
+ MAX_SAFE_BUILD_LENGTH,
41413
+ MAX_SAFE_INTEGER,
41414
+ RELEASE_TYPES,
41415
+ SEMVER_SPEC_VERSION,
41416
+ FLAG_INCLUDE_PRERELEASE: 1,
41417
+ FLAG_LOOSE: 2
41418
+ };
41419
+ });
41420
+
41421
+ // node_modules/semver/internal/debug.js
41422
+ var require_debug = __commonJS((exports, module) => {
41423
+ var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {};
41424
+ module.exports = debug;
41425
+ });
41426
+
41427
+ // node_modules/semver/internal/re.js
41428
+ var require_re = __commonJS((exports, module) => {
41429
+ var {
41430
+ MAX_SAFE_COMPONENT_LENGTH,
41431
+ MAX_SAFE_BUILD_LENGTH,
41432
+ MAX_LENGTH
41433
+ } = require_constants();
41434
+ var debug = require_debug();
41435
+ exports = module.exports = {};
41398
41436
  var re = exports.re = [];
41399
41437
  var safeRe = exports.safeRe = [];
41400
41438
  var src = exports.src = [];
41401
- var t = exports.tokens = {};
41439
+ var safeSrc = exports.safeSrc = [];
41440
+ var t = exports.t = {};
41402
41441
  var R = 0;
41403
- function tok(n) {
41404
- t[n] = R++;
41405
- }
41406
41442
  var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
41407
41443
  var safeRegexReplacements = [
41408
41444
  ["\\s", 1],
41409
41445
  ["\\d", MAX_LENGTH],
41410
41446
  [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
41411
41447
  ];
41412
- function makeSafeRe(value) {
41413
- for (var i2 = 0;i2 < safeRegexReplacements.length; i2++) {
41414
- var token = safeRegexReplacements[i2][0];
41415
- var max = safeRegexReplacements[i2][1];
41416
- value = value.split(token + "*").join(token + "{0," + max + "}").split(token + "+").join(token + "{1," + max + "}");
41448
+ var makeSafeRegex = (value) => {
41449
+ for (const [token, max] of safeRegexReplacements) {
41450
+ value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);
41417
41451
  }
41418
41452
  return value;
41419
- }
41420
- tok("NUMERICIDENTIFIER");
41421
- src[t.NUMERICIDENTIFIER] = "0|[1-9]\\d*";
41422
- tok("NUMERICIDENTIFIERLOOSE");
41423
- src[t.NUMERICIDENTIFIERLOOSE] = "\\d+";
41424
- tok("NONNUMERICIDENTIFIER");
41425
- src[t.NONNUMERICIDENTIFIER] = "\\d*[a-zA-Z-]" + LETTERDASHNUMBER + "*";
41426
- tok("MAINVERSION");
41427
- src[t.MAINVERSION] = "(" + src[t.NUMERICIDENTIFIER] + ")\\." + "(" + src[t.NUMERICIDENTIFIER] + ")\\." + "(" + src[t.NUMERICIDENTIFIER] + ")";
41428
- tok("MAINVERSIONLOOSE");
41429
- src[t.MAINVERSIONLOOSE] = "(" + src[t.NUMERICIDENTIFIERLOOSE] + ")\\." + "(" + src[t.NUMERICIDENTIFIERLOOSE] + ")\\." + "(" + src[t.NUMERICIDENTIFIERLOOSE] + ")";
41430
- tok("PRERELEASEIDENTIFIER");
41431
- src[t.PRERELEASEIDENTIFIER] = "(?:" + src[t.NUMERICIDENTIFIER] + "|" + src[t.NONNUMERICIDENTIFIER] + ")";
41432
- tok("PRERELEASEIDENTIFIERLOOSE");
41433
- src[t.PRERELEASEIDENTIFIERLOOSE] = "(?:" + src[t.NUMERICIDENTIFIERLOOSE] + "|" + src[t.NONNUMERICIDENTIFIER] + ")";
41434
- tok("PRERELEASE");
41435
- src[t.PRERELEASE] = "(?:-(" + src[t.PRERELEASEIDENTIFIER] + "(?:\\." + src[t.PRERELEASEIDENTIFIER] + ")*))";
41436
- tok("PRERELEASELOOSE");
41437
- src[t.PRERELEASELOOSE] = "(?:-?(" + src[t.PRERELEASEIDENTIFIERLOOSE] + "(?:\\." + src[t.PRERELEASEIDENTIFIERLOOSE] + ")*))";
41438
- tok("BUILDIDENTIFIER");
41439
- src[t.BUILDIDENTIFIER] = LETTERDASHNUMBER + "+";
41440
- tok("BUILD");
41441
- src[t.BUILD] = "(?:\\+(" + src[t.BUILDIDENTIFIER] + "(?:\\." + src[t.BUILDIDENTIFIER] + ")*))";
41442
- tok("FULL");
41443
- tok("FULLPLAIN");
41444
- src[t.FULLPLAIN] = "v?" + src[t.MAINVERSION] + src[t.PRERELEASE] + "?" + src[t.BUILD] + "?";
41445
- src[t.FULL] = "^" + src[t.FULLPLAIN] + "$";
41446
- tok("LOOSEPLAIN");
41447
- src[t.LOOSEPLAIN] = "[v=\\s]*" + src[t.MAINVERSIONLOOSE] + src[t.PRERELEASELOOSE] + "?" + src[t.BUILD] + "?";
41448
- tok("LOOSE");
41449
- src[t.LOOSE] = "^" + src[t.LOOSEPLAIN] + "$";
41450
- tok("GTLT");
41451
- src[t.GTLT] = "((?:<|>)?=?)";
41452
- tok("XRANGEIDENTIFIERLOOSE");
41453
- src[t.XRANGEIDENTIFIERLOOSE] = src[t.NUMERICIDENTIFIERLOOSE] + "|x|X|\\*";
41454
- tok("XRANGEIDENTIFIER");
41455
- src[t.XRANGEIDENTIFIER] = src[t.NUMERICIDENTIFIER] + "|x|X|\\*";
41456
- tok("XRANGEPLAIN");
41457
- src[t.XRANGEPLAIN] = "[v=\\s]*(" + src[t.XRANGEIDENTIFIER] + ")" + "(?:\\.(" + src[t.XRANGEIDENTIFIER] + ")" + "(?:\\.(" + src[t.XRANGEIDENTIFIER] + ")" + "(?:" + src[t.PRERELEASE] + ")?" + src[t.BUILD] + "?" + ")?)?";
41458
- tok("XRANGEPLAINLOOSE");
41459
- src[t.XRANGEPLAINLOOSE] = "[v=\\s]*(" + src[t.XRANGEIDENTIFIERLOOSE] + ")" + "(?:\\.(" + src[t.XRANGEIDENTIFIERLOOSE] + ")" + "(?:\\.(" + src[t.XRANGEIDENTIFIERLOOSE] + ")" + "(?:" + src[t.PRERELEASELOOSE] + ")?" + src[t.BUILD] + "?" + ")?)?";
41460
- tok("XRANGE");
41461
- src[t.XRANGE] = "^" + src[t.GTLT] + "\\s*" + src[t.XRANGEPLAIN] + "$";
41462
- tok("XRANGELOOSE");
41463
- src[t.XRANGELOOSE] = "^" + src[t.GTLT] + "\\s*" + src[t.XRANGEPLAINLOOSE] + "$";
41464
- tok("COERCE");
41465
- src[t.COERCE] = "(^|[^\\d])" + "(\\d{1," + MAX_SAFE_COMPONENT_LENGTH + "})" + "(?:\\.(\\d{1," + MAX_SAFE_COMPONENT_LENGTH + "}))?" + "(?:\\.(\\d{1," + MAX_SAFE_COMPONENT_LENGTH + "}))?" + "(?:$|[^\\d])";
41466
- tok("COERCERTL");
41467
- re[t.COERCERTL] = new RegExp(src[t.COERCE], "g");
41468
- safeRe[t.COERCERTL] = new RegExp(makeSafeRe(src[t.COERCE]), "g");
41469
- tok("LONETILDE");
41470
- src[t.LONETILDE] = "(?:~>?)";
41471
- tok("TILDETRIM");
41472
- src[t.TILDETRIM] = "(\\s*)" + src[t.LONETILDE] + "\\s+";
41473
- re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], "g");
41474
- safeRe[t.TILDETRIM] = new RegExp(makeSafeRe(src[t.TILDETRIM]), "g");
41475
- var tildeTrimReplace = "$1~";
41476
- tok("TILDE");
41477
- src[t.TILDE] = "^" + src[t.LONETILDE] + src[t.XRANGEPLAIN] + "$";
41478
- tok("TILDELOOSE");
41479
- src[t.TILDELOOSE] = "^" + src[t.LONETILDE] + src[t.XRANGEPLAINLOOSE] + "$";
41480
- tok("LONECARET");
41481
- src[t.LONECARET] = "(?:\\^)";
41482
- tok("CARETTRIM");
41483
- src[t.CARETTRIM] = "(\\s*)" + src[t.LONECARET] + "\\s+";
41484
- re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], "g");
41485
- safeRe[t.CARETTRIM] = new RegExp(makeSafeRe(src[t.CARETTRIM]), "g");
41486
- var caretTrimReplace = "$1^";
41487
- tok("CARET");
41488
- src[t.CARET] = "^" + src[t.LONECARET] + src[t.XRANGEPLAIN] + "$";
41489
- tok("CARETLOOSE");
41490
- src[t.CARETLOOSE] = "^" + src[t.LONECARET] + src[t.XRANGEPLAINLOOSE] + "$";
41491
- tok("COMPARATORLOOSE");
41492
- src[t.COMPARATORLOOSE] = "^" + src[t.GTLT] + "\\s*(" + src[t.LOOSEPLAIN] + ")$|^$";
41493
- tok("COMPARATOR");
41494
- src[t.COMPARATOR] = "^" + src[t.GTLT] + "\\s*(" + src[t.FULLPLAIN] + ")$|^$";
41495
- tok("COMPARATORTRIM");
41496
- src[t.COMPARATORTRIM] = "(\\s*)" + src[t.GTLT] + "\\s*(" + src[t.LOOSEPLAIN] + "|" + src[t.XRANGEPLAIN] + ")";
41497
- re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], "g");
41498
- safeRe[t.COMPARATORTRIM] = new RegExp(makeSafeRe(src[t.COMPARATORTRIM]), "g");
41499
- var comparatorTrimReplace = "$1$2$3";
41500
- tok("HYPHENRANGE");
41501
- src[t.HYPHENRANGE] = "^\\s*(" + src[t.XRANGEPLAIN] + ")" + "\\s+-\\s+" + "(" + src[t.XRANGEPLAIN] + ")" + "\\s*$";
41502
- tok("HYPHENRANGELOOSE");
41503
- src[t.HYPHENRANGELOOSE] = "^\\s*(" + src[t.XRANGEPLAINLOOSE] + ")" + "\\s+-\\s+" + "(" + src[t.XRANGEPLAINLOOSE] + ")" + "\\s*$";
41504
- tok("STAR");
41505
- src[t.STAR] = "(<|>)?=?\\s*\\*";
41506
- for (i = 0;i < R; i++) {
41507
- debug(i, src[i]);
41508
- if (!re[i]) {
41509
- re[i] = new RegExp(src[i]);
41510
- safeRe[i] = new RegExp(makeSafeRe(src[i]));
41511
- }
41512
- }
41513
- var i;
41514
- exports.parse = parse;
41515
- function parse(version, options) {
41516
- if (!options || typeof options !== "object") {
41517
- options = {
41518
- loose: !!options,
41519
- includePrerelease: false
41520
- };
41521
- }
41522
- if (version instanceof SemVer) {
41523
- return version;
41524
- }
41525
- if (typeof version !== "string") {
41526
- return null;
41527
- }
41528
- if (version.length > MAX_LENGTH) {
41529
- return null;
41453
+ };
41454
+ var createToken = (name, value, isGlobal) => {
41455
+ const safe = makeSafeRegex(value);
41456
+ const index = R++;
41457
+ debug(name, index, value);
41458
+ t[name] = index;
41459
+ src[index] = value;
41460
+ safeSrc[index] = safe;
41461
+ re[index] = new RegExp(value, isGlobal ? "g" : undefined);
41462
+ safeRe[index] = new RegExp(safe, isGlobal ? "g" : undefined);
41463
+ };
41464
+ createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
41465
+ createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
41466
+ createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
41467
+ createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.` + `(${src[t.NUMERICIDENTIFIER]})\\.` + `(${src[t.NUMERICIDENTIFIER]})`);
41468
+ createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` + `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` + `(${src[t.NUMERICIDENTIFIERLOOSE]})`);
41469
+ createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`);
41470
+ createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`);
41471
+ createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`);
41472
+ createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`);
41473
+ createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
41474
+ createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`);
41475
+ createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`);
41476
+ createToken("FULL", `^${src[t.FULLPLAIN]}$`);
41477
+ createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`);
41478
+ createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`);
41479
+ createToken("GTLT", "((?:<|>)?=?)");
41480
+ createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);
41481
+ createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`);
41482
+ createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})` + `(?:\\.(${src[t.XRANGEIDENTIFIER]})` + `(?:\\.(${src[t.XRANGEIDENTIFIER]})` + `(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?` + `)?)?`);
41483
+ createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` + `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` + `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` + `(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?` + `)?)?`);
41484
+ createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
41485
+ createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
41486
+ createToken("COERCEPLAIN", `${"(^|[^\\d])" + "(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})` + `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` + `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
41487
+ createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
41488
+ createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?` + `(?:${src[t.BUILD]})?` + `(?:$|[^\\d])`);
41489
+ createToken("COERCERTL", src[t.COERCE], true);
41490
+ createToken("COERCERTLFULL", src[t.COERCEFULL], true);
41491
+ createToken("LONETILDE", "(?:~>?)");
41492
+ createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
41493
+ exports.tildeTrimReplace = "$1~";
41494
+ createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`);
41495
+ createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`);
41496
+ createToken("LONECARET", "(?:\\^)");
41497
+ createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true);
41498
+ exports.caretTrimReplace = "$1^";
41499
+ createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`);
41500
+ createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`);
41501
+ createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`);
41502
+ createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`);
41503
+ createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true);
41504
+ exports.comparatorTrimReplace = "$1$2$3";
41505
+ createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})` + `\\s+-\\s+` + `(${src[t.XRANGEPLAIN]})` + `\\s*$`);
41506
+ createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})` + `\\s+-\\s+` + `(${src[t.XRANGEPLAINLOOSE]})` + `\\s*$`);
41507
+ createToken("STAR", "(<|>)?=?\\s*\\*");
41508
+ createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$");
41509
+ createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
41510
+ });
41511
+
41512
+ // node_modules/semver/internal/parse-options.js
41513
+ var require_parse_options = __commonJS((exports, module) => {
41514
+ var looseOption = Object.freeze({ loose: true });
41515
+ var emptyOpts = Object.freeze({});
41516
+ var parseOptions = (options) => {
41517
+ if (!options) {
41518
+ return emptyOpts;
41530
41519
  }
41531
- var r = options.loose ? safeRe[t.LOOSE] : safeRe[t.FULL];
41532
- if (!r.test(version)) {
41533
- return null;
41520
+ if (typeof options !== "object") {
41521
+ return looseOption;
41534
41522
  }
41535
- try {
41536
- return new SemVer(version, options);
41537
- } catch (er) {
41538
- return null;
41539
- }
41540
- }
41541
- exports.valid = valid;
41542
- function valid(version, options) {
41543
- var v = parse(version, options);
41544
- return v ? v.version : null;
41545
- }
41546
- exports.clean = clean;
41547
- function clean(version, options) {
41548
- var s = parse(version.trim().replace(/^[=v]+/, ""), options);
41549
- return s ? s.version : null;
41550
- }
41551
- exports.SemVer = SemVer;
41552
- function SemVer(version, options) {
41553
- if (!options || typeof options !== "object") {
41554
- options = {
41555
- loose: !!options,
41556
- includePrerelease: false
41557
- };
41523
+ return options;
41524
+ };
41525
+ module.exports = parseOptions;
41526
+ });
41527
+
41528
+ // node_modules/semver/internal/identifiers.js
41529
+ var require_identifiers = __commonJS((exports, module) => {
41530
+ var numeric = /^[0-9]+$/;
41531
+ var compareIdentifiers = (a, b) => {
41532
+ const anum = numeric.test(a);
41533
+ const bnum = numeric.test(b);
41534
+ if (anum && bnum) {
41535
+ a = +a;
41536
+ b = +b;
41558
41537
  }
41559
- if (version instanceof SemVer) {
41560
- if (version.loose === options.loose) {
41561
- return version;
41538
+ return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;
41539
+ };
41540
+ var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a);
41541
+ module.exports = {
41542
+ compareIdentifiers,
41543
+ rcompareIdentifiers
41544
+ };
41545
+ });
41546
+
41547
+ // node_modules/semver/classes/semver.js
41548
+ var require_semver = __commonJS((exports, module) => {
41549
+ var debug = require_debug();
41550
+ var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
41551
+ var { safeRe: re, t } = require_re();
41552
+ var parseOptions = require_parse_options();
41553
+ var { compareIdentifiers } = require_identifiers();
41554
+
41555
+ class SemVer {
41556
+ constructor(version, options) {
41557
+ options = parseOptions(options);
41558
+ if (version instanceof SemVer) {
41559
+ if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) {
41560
+ return version;
41561
+ } else {
41562
+ version = version.version;
41563
+ }
41564
+ } else if (typeof version !== "string") {
41565
+ throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version}".`);
41566
+ }
41567
+ if (version.length > MAX_LENGTH) {
41568
+ throw new TypeError(`version is longer than ${MAX_LENGTH} characters`);
41569
+ }
41570
+ debug("SemVer", version, options);
41571
+ this.options = options;
41572
+ this.loose = !!options.loose;
41573
+ this.includePrerelease = !!options.includePrerelease;
41574
+ const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);
41575
+ if (!m) {
41576
+ throw new TypeError(`Invalid Version: ${version}`);
41577
+ }
41578
+ this.raw = version;
41579
+ this.major = +m[1];
41580
+ this.minor = +m[2];
41581
+ this.patch = +m[3];
41582
+ if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
41583
+ throw new TypeError("Invalid major version");
41584
+ }
41585
+ if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
41586
+ throw new TypeError("Invalid minor version");
41587
+ }
41588
+ if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
41589
+ throw new TypeError("Invalid patch version");
41590
+ }
41591
+ if (!m[4]) {
41592
+ this.prerelease = [];
41562
41593
  } else {
41563
- version = version.version;
41594
+ this.prerelease = m[4].split(".").map((id) => {
41595
+ if (/^[0-9]+$/.test(id)) {
41596
+ const num = +id;
41597
+ if (num >= 0 && num < MAX_SAFE_INTEGER) {
41598
+ return num;
41599
+ }
41600
+ }
41601
+ return id;
41602
+ });
41564
41603
  }
41565
- } else if (typeof version !== "string") {
41566
- throw new TypeError("Invalid Version: " + version);
41604
+ this.build = m[5] ? m[5].split(".") : [];
41605
+ this.format();
41567
41606
  }
41568
- if (version.length > MAX_LENGTH) {
41569
- throw new TypeError("version is longer than " + MAX_LENGTH + " characters");
41570
- }
41571
- if (!(this instanceof SemVer)) {
41572
- return new SemVer(version, options);
41573
- }
41574
- debug("SemVer", version, options);
41575
- this.options = options;
41576
- this.loose = !!options.loose;
41577
- var m = version.trim().match(options.loose ? safeRe[t.LOOSE] : safeRe[t.FULL]);
41578
- if (!m) {
41579
- throw new TypeError("Invalid Version: " + version);
41580
- }
41581
- this.raw = version;
41582
- this.major = +m[1];
41583
- this.minor = +m[2];
41584
- this.patch = +m[3];
41585
- if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
41586
- throw new TypeError("Invalid major version");
41587
- }
41588
- if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
41589
- throw new TypeError("Invalid minor version");
41607
+ format() {
41608
+ this.version = `${this.major}.${this.minor}.${this.patch}`;
41609
+ if (this.prerelease.length) {
41610
+ this.version += `-${this.prerelease.join(".")}`;
41611
+ }
41612
+ return this.version;
41590
41613
  }
41591
- if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
41592
- throw new TypeError("Invalid patch version");
41614
+ toString() {
41615
+ return this.version;
41593
41616
  }
41594
- if (!m[4]) {
41595
- this.prerelease = [];
41596
- } else {
41597
- this.prerelease = m[4].split(".").map(function(id) {
41598
- if (/^[0-9]+$/.test(id)) {
41599
- var num = +id;
41600
- if (num >= 0 && num < MAX_SAFE_INTEGER) {
41601
- return num;
41602
- }
41617
+ compare(other) {
41618
+ debug("SemVer.compare", this.version, this.options, other);
41619
+ if (!(other instanceof SemVer)) {
41620
+ if (typeof other === "string" && other === this.version) {
41621
+ return 0;
41603
41622
  }
41604
- return id;
41605
- });
41606
- }
41607
- this.build = m[5] ? m[5].split(".") : [];
41608
- this.format();
41609
- }
41610
- SemVer.prototype.format = function() {
41611
- this.version = this.major + "." + this.minor + "." + this.patch;
41612
- if (this.prerelease.length) {
41613
- this.version += "-" + this.prerelease.join(".");
41614
- }
41615
- return this.version;
41616
- };
41617
- SemVer.prototype.toString = function() {
41618
- return this.version;
41619
- };
41620
- SemVer.prototype.compare = function(other) {
41621
- debug("SemVer.compare", this.version, this.options, other);
41622
- if (!(other instanceof SemVer)) {
41623
- other = new SemVer(other, this.options);
41624
- }
41625
- return this.compareMain(other) || this.comparePre(other);
41626
- };
41627
- SemVer.prototype.compareMain = function(other) {
41628
- if (!(other instanceof SemVer)) {
41629
- other = new SemVer(other, this.options);
41630
- }
41631
- return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);
41632
- };
41633
- SemVer.prototype.comparePre = function(other) {
41634
- if (!(other instanceof SemVer)) {
41635
- other = new SemVer(other, this.options);
41636
- }
41637
- if (this.prerelease.length && !other.prerelease.length) {
41638
- return -1;
41639
- } else if (!this.prerelease.length && other.prerelease.length) {
41640
- return 1;
41641
- } else if (!this.prerelease.length && !other.prerelease.length) {
41642
- return 0;
41643
- }
41644
- var i2 = 0;
41645
- do {
41646
- var a = this.prerelease[i2];
41647
- var b = other.prerelease[i2];
41648
- debug("prerelease compare", i2, a, b);
41649
- if (a === undefined && b === undefined) {
41623
+ other = new SemVer(other, this.options);
41624
+ }
41625
+ if (other.version === this.version) {
41650
41626
  return 0;
41651
- } else if (b === undefined) {
41652
- return 1;
41653
- } else if (a === undefined) {
41654
- return -1;
41655
- } else if (a === b) {
41656
- continue;
41657
- } else {
41658
- return compareIdentifiers(a, b);
41659
41627
  }
41660
- } while (++i2);
41661
- };
41662
- SemVer.prototype.compareBuild = function(other) {
41663
- if (!(other instanceof SemVer)) {
41664
- other = new SemVer(other, this.options);
41628
+ return this.compareMain(other) || this.comparePre(other);
41665
41629
  }
41666
- var i2 = 0;
41667
- do {
41668
- var a = this.build[i2];
41669
- var b = other.build[i2];
41670
- debug("prerelease compare", i2, a, b);
41671
- if (a === undefined && b === undefined) {
41672
- return 0;
41673
- } else if (b === undefined) {
41674
- return 1;
41675
- } else if (a === undefined) {
41630
+ compareMain(other) {
41631
+ if (!(other instanceof SemVer)) {
41632
+ other = new SemVer(other, this.options);
41633
+ }
41634
+ return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);
41635
+ }
41636
+ comparePre(other) {
41637
+ if (!(other instanceof SemVer)) {
41638
+ other = new SemVer(other, this.options);
41639
+ }
41640
+ if (this.prerelease.length && !other.prerelease.length) {
41676
41641
  return -1;
41677
- } else if (a === b) {
41678
- continue;
41679
- } else {
41680
- return compareIdentifiers(a, b);
41681
- }
41682
- } while (++i2);
41683
- };
41684
- SemVer.prototype.inc = function(release, identifier) {
41685
- switch (release) {
41686
- case "premajor":
41687
- this.prerelease.length = 0;
41688
- this.patch = 0;
41689
- this.minor = 0;
41690
- this.major++;
41691
- this.inc("pre", identifier);
41692
- break;
41693
- case "preminor":
41694
- this.prerelease.length = 0;
41695
- this.patch = 0;
41696
- this.minor++;
41697
- this.inc("pre", identifier);
41698
- break;
41699
- case "prepatch":
41700
- this.prerelease.length = 0;
41701
- this.inc("patch", identifier);
41702
- this.inc("pre", identifier);
41703
- break;
41704
- case "prerelease":
41705
- if (this.prerelease.length === 0) {
41706
- this.inc("patch", identifier);
41642
+ } else if (!this.prerelease.length && other.prerelease.length) {
41643
+ return 1;
41644
+ } else if (!this.prerelease.length && !other.prerelease.length) {
41645
+ return 0;
41646
+ }
41647
+ let i = 0;
41648
+ do {
41649
+ const a = this.prerelease[i];
41650
+ const b = other.prerelease[i];
41651
+ debug("prerelease compare", i, a, b);
41652
+ if (a === undefined && b === undefined) {
41653
+ return 0;
41654
+ } else if (b === undefined) {
41655
+ return 1;
41656
+ } else if (a === undefined) {
41657
+ return -1;
41658
+ } else if (a === b) {
41659
+ continue;
41660
+ } else {
41661
+ return compareIdentifiers(a, b);
41707
41662
  }
41708
- this.inc("pre", identifier);
41709
- break;
41710
- case "major":
41711
- if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
41712
- this.major++;
41663
+ } while (++i);
41664
+ }
41665
+ compareBuild(other) {
41666
+ if (!(other instanceof SemVer)) {
41667
+ other = new SemVer(other, this.options);
41668
+ }
41669
+ let i = 0;
41670
+ do {
41671
+ const a = this.build[i];
41672
+ const b = other.build[i];
41673
+ debug("build compare", i, a, b);
41674
+ if (a === undefined && b === undefined) {
41675
+ return 0;
41676
+ } else if (b === undefined) {
41677
+ return 1;
41678
+ } else if (a === undefined) {
41679
+ return -1;
41680
+ } else if (a === b) {
41681
+ continue;
41682
+ } else {
41683
+ return compareIdentifiers(a, b);
41713
41684
  }
41714
- this.minor = 0;
41715
- this.patch = 0;
41716
- this.prerelease = [];
41717
- break;
41718
- case "minor":
41719
- if (this.patch !== 0 || this.prerelease.length === 0) {
41720
- this.minor++;
41685
+ } while (++i);
41686
+ }
41687
+ inc(release, identifier, identifierBase) {
41688
+ if (release.startsWith("pre")) {
41689
+ if (!identifier && identifierBase === false) {
41690
+ throw new Error("invalid increment argument: identifier is empty");
41721
41691
  }
41722
- this.patch = 0;
41723
- this.prerelease = [];
41724
- break;
41725
- case "patch":
41726
- if (this.prerelease.length === 0) {
41727
- this.patch++;
41692
+ if (identifier) {
41693
+ const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
41694
+ if (!match || match[1] !== identifier) {
41695
+ throw new Error(`invalid identifier: ${identifier}`);
41696
+ }
41728
41697
  }
41729
- this.prerelease = [];
41730
- break;
41731
- case "pre":
41732
- if (this.prerelease.length === 0) {
41733
- this.prerelease = [0];
41734
- } else {
41735
- var i2 = this.prerelease.length;
41736
- while (--i2 >= 0) {
41737
- if (typeof this.prerelease[i2] === "number") {
41738
- this.prerelease[i2]++;
41739
- i2 = -2;
41740
- }
41698
+ }
41699
+ switch (release) {
41700
+ case "premajor":
41701
+ this.prerelease.length = 0;
41702
+ this.patch = 0;
41703
+ this.minor = 0;
41704
+ this.major++;
41705
+ this.inc("pre", identifier, identifierBase);
41706
+ break;
41707
+ case "preminor":
41708
+ this.prerelease.length = 0;
41709
+ this.patch = 0;
41710
+ this.minor++;
41711
+ this.inc("pre", identifier, identifierBase);
41712
+ break;
41713
+ case "prepatch":
41714
+ this.prerelease.length = 0;
41715
+ this.inc("patch", identifier, identifierBase);
41716
+ this.inc("pre", identifier, identifierBase);
41717
+ break;
41718
+ case "prerelease":
41719
+ if (this.prerelease.length === 0) {
41720
+ this.inc("patch", identifier, identifierBase);
41741
41721
  }
41742
- if (i2 === -1) {
41743
- this.prerelease.push(0);
41722
+ this.inc("pre", identifier, identifierBase);
41723
+ break;
41724
+ case "release":
41725
+ if (this.prerelease.length === 0) {
41726
+ throw new Error(`version ${this.raw} is not a prerelease`);
41744
41727
  }
41745
- }
41746
- if (identifier) {
41747
- if (this.prerelease[0] === identifier) {
41748
- if (isNaN(this.prerelease[1])) {
41749
- this.prerelease = [identifier, 0];
41750
- }
41728
+ this.prerelease.length = 0;
41729
+ break;
41730
+ case "major":
41731
+ if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
41732
+ this.major++;
41733
+ }
41734
+ this.minor = 0;
41735
+ this.patch = 0;
41736
+ this.prerelease = [];
41737
+ break;
41738
+ case "minor":
41739
+ if (this.patch !== 0 || this.prerelease.length === 0) {
41740
+ this.minor++;
41741
+ }
41742
+ this.patch = 0;
41743
+ this.prerelease = [];
41744
+ break;
41745
+ case "patch":
41746
+ if (this.prerelease.length === 0) {
41747
+ this.patch++;
41748
+ }
41749
+ this.prerelease = [];
41750
+ break;
41751
+ case "pre": {
41752
+ const base = Number(identifierBase) ? 1 : 0;
41753
+ if (this.prerelease.length === 0) {
41754
+ this.prerelease = [base];
41751
41755
  } else {
41752
- this.prerelease = [identifier, 0];
41756
+ let i = this.prerelease.length;
41757
+ while (--i >= 0) {
41758
+ if (typeof this.prerelease[i] === "number") {
41759
+ this.prerelease[i]++;
41760
+ i = -2;
41761
+ }
41762
+ }
41763
+ if (i === -1) {
41764
+ if (identifier === this.prerelease.join(".") && identifierBase === false) {
41765
+ throw new Error("invalid increment argument: identifier already exists");
41766
+ }
41767
+ this.prerelease.push(base);
41768
+ }
41753
41769
  }
41770
+ if (identifier) {
41771
+ let prerelease = [identifier, base];
41772
+ if (identifierBase === false) {
41773
+ prerelease = [identifier];
41774
+ }
41775
+ if (compareIdentifiers(this.prerelease[0], identifier) === 0) {
41776
+ if (isNaN(this.prerelease[1])) {
41777
+ this.prerelease = prerelease;
41778
+ }
41779
+ } else {
41780
+ this.prerelease = prerelease;
41781
+ }
41782
+ }
41783
+ break;
41754
41784
  }
41755
- break;
41756
- default:
41757
- throw new Error("invalid increment argument: " + release);
41785
+ default:
41786
+ throw new Error(`invalid increment argument: ${release}`);
41787
+ }
41788
+ this.raw = this.format();
41789
+ if (this.build.length) {
41790
+ this.raw += `+${this.build.join(".")}`;
41791
+ }
41792
+ return this;
41793
+ }
41794
+ }
41795
+ module.exports = SemVer;
41796
+ });
41797
+
41798
+ // node_modules/semver/functions/parse.js
41799
+ var require_parse2 = __commonJS((exports, module) => {
41800
+ var SemVer = require_semver();
41801
+ var parse = (version, options, throwErrors = false) => {
41802
+ if (version instanceof SemVer) {
41803
+ return version;
41804
+ }
41805
+ try {
41806
+ return new SemVer(version, options);
41807
+ } catch (er) {
41808
+ if (!throwErrors) {
41809
+ return null;
41810
+ }
41811
+ throw er;
41758
41812
  }
41759
- this.format();
41760
- this.raw = this.version;
41761
- return this;
41762
41813
  };
41763
- exports.inc = inc;
41764
- function inc(version, release, loose, identifier) {
41765
- if (typeof loose === "string") {
41766
- identifier = loose;
41767
- loose = undefined;
41814
+ module.exports = parse;
41815
+ });
41816
+
41817
+ // node_modules/semver/functions/valid.js
41818
+ var require_valid = __commonJS((exports, module) => {
41819
+ var parse = require_parse2();
41820
+ var valid = (version, options) => {
41821
+ const v = parse(version, options);
41822
+ return v ? v.version : null;
41823
+ };
41824
+ module.exports = valid;
41825
+ });
41826
+
41827
+ // node_modules/semver/functions/clean.js
41828
+ var require_clean = __commonJS((exports, module) => {
41829
+ var parse = require_parse2();
41830
+ var clean = (version, options) => {
41831
+ const s = parse(version.trim().replace(/^[=v]+/, ""), options);
41832
+ return s ? s.version : null;
41833
+ };
41834
+ module.exports = clean;
41835
+ });
41836
+
41837
+ // node_modules/semver/functions/inc.js
41838
+ var require_inc = __commonJS((exports, module) => {
41839
+ var SemVer = require_semver();
41840
+ var inc = (version, release, options, identifier, identifierBase) => {
41841
+ if (typeof options === "string") {
41842
+ identifierBase = identifier;
41843
+ identifier = options;
41844
+ options = undefined;
41768
41845
  }
41769
41846
  try {
41770
- return new SemVer(version, loose).inc(release, identifier).version;
41847
+ return new SemVer(version instanceof SemVer ? version.version : version, options).inc(release, identifier, identifierBase).version;
41771
41848
  } catch (er) {
41772
41849
  return null;
41773
41850
  }
41774
- }
41775
- exports.diff = diff;
41776
- function diff(version1, version2) {
41777
- if (eq(version1, version2)) {
41851
+ };
41852
+ module.exports = inc;
41853
+ });
41854
+
41855
+ // node_modules/semver/functions/diff.js
41856
+ var require_diff = __commonJS((exports, module) => {
41857
+ var parse = require_parse2();
41858
+ var diff = (version1, version2) => {
41859
+ const v1 = parse(version1, null, true);
41860
+ const v2 = parse(version2, null, true);
41861
+ const comparison = v1.compare(v2);
41862
+ if (comparison === 0) {
41778
41863
  return null;
41779
- } else {
41780
- var v1 = parse(version1);
41781
- var v2 = parse(version2);
41782
- var prefix = "";
41783
- if (v1.prerelease.length || v2.prerelease.length) {
41784
- prefix = "pre";
41785
- var defaultResult = "prerelease";
41864
+ }
41865
+ const v1Higher = comparison > 0;
41866
+ const highVersion = v1Higher ? v1 : v2;
41867
+ const lowVersion = v1Higher ? v2 : v1;
41868
+ const highHasPre = !!highVersion.prerelease.length;
41869
+ const lowHasPre = !!lowVersion.prerelease.length;
41870
+ if (lowHasPre && !highHasPre) {
41871
+ if (!lowVersion.patch && !lowVersion.minor) {
41872
+ return "major";
41786
41873
  }
41787
- for (var key in v1) {
41788
- if (key === "major" || key === "minor" || key === "patch") {
41789
- if (v1[key] !== v2[key]) {
41790
- return prefix + key;
41791
- }
41874
+ if (lowVersion.compareMain(highVersion) === 0) {
41875
+ if (lowVersion.minor && !lowVersion.patch) {
41876
+ return "minor";
41792
41877
  }
41878
+ return "patch";
41793
41879
  }
41794
- return defaultResult;
41795
41880
  }
41796
- }
41797
- exports.compareIdentifiers = compareIdentifiers;
41798
- var numeric = /^[0-9]+$/;
41799
- function compareIdentifiers(a, b) {
41800
- var anum = numeric.test(a);
41801
- var bnum = numeric.test(b);
41802
- if (anum && bnum) {
41803
- a = +a;
41804
- b = +b;
41881
+ const prefix = highHasPre ? "pre" : "";
41882
+ if (v1.major !== v2.major) {
41883
+ return prefix + "major";
41805
41884
  }
41806
- return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;
41807
- }
41808
- exports.rcompareIdentifiers = rcompareIdentifiers;
41809
- function rcompareIdentifiers(a, b) {
41810
- return compareIdentifiers(b, a);
41811
- }
41812
- exports.major = major;
41813
- function major(a, loose) {
41814
- return new SemVer(a, loose).major;
41815
- }
41816
- exports.minor = minor;
41817
- function minor(a, loose) {
41818
- return new SemVer(a, loose).minor;
41819
- }
41820
- exports.patch = patch;
41821
- function patch(a, loose) {
41822
- return new SemVer(a, loose).patch;
41823
- }
41824
- exports.compare = compare;
41825
- function compare(a, b, loose) {
41826
- return new SemVer(a, loose).compare(new SemVer(b, loose));
41827
- }
41828
- exports.compareLoose = compareLoose;
41829
- function compareLoose(a, b) {
41830
- return compare(a, b, true);
41831
- }
41832
- exports.compareBuild = compareBuild;
41833
- function compareBuild(a, b, loose) {
41834
- var versionA = new SemVer(a, loose);
41835
- var versionB = new SemVer(b, loose);
41885
+ if (v1.minor !== v2.minor) {
41886
+ return prefix + "minor";
41887
+ }
41888
+ if (v1.patch !== v2.patch) {
41889
+ return prefix + "patch";
41890
+ }
41891
+ return "prerelease";
41892
+ };
41893
+ module.exports = diff;
41894
+ });
41895
+
41896
+ // node_modules/semver/functions/major.js
41897
+ var require_major = __commonJS((exports, module) => {
41898
+ var SemVer = require_semver();
41899
+ var major = (a, loose) => new SemVer(a, loose).major;
41900
+ module.exports = major;
41901
+ });
41902
+
41903
+ // node_modules/semver/functions/minor.js
41904
+ var require_minor = __commonJS((exports, module) => {
41905
+ var SemVer = require_semver();
41906
+ var minor = (a, loose) => new SemVer(a, loose).minor;
41907
+ module.exports = minor;
41908
+ });
41909
+
41910
+ // node_modules/semver/functions/patch.js
41911
+ var require_patch = __commonJS((exports, module) => {
41912
+ var SemVer = require_semver();
41913
+ var patch = (a, loose) => new SemVer(a, loose).patch;
41914
+ module.exports = patch;
41915
+ });
41916
+
41917
+ // node_modules/semver/functions/prerelease.js
41918
+ var require_prerelease = __commonJS((exports, module) => {
41919
+ var parse = require_parse2();
41920
+ var prerelease = (version, options) => {
41921
+ const parsed = parse(version, options);
41922
+ return parsed && parsed.prerelease.length ? parsed.prerelease : null;
41923
+ };
41924
+ module.exports = prerelease;
41925
+ });
41926
+
41927
+ // node_modules/semver/functions/compare.js
41928
+ var require_compare = __commonJS((exports, module) => {
41929
+ var SemVer = require_semver();
41930
+ var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
41931
+ module.exports = compare;
41932
+ });
41933
+
41934
+ // node_modules/semver/functions/rcompare.js
41935
+ var require_rcompare = __commonJS((exports, module) => {
41936
+ var compare = require_compare();
41937
+ var rcompare = (a, b, loose) => compare(b, a, loose);
41938
+ module.exports = rcompare;
41939
+ });
41940
+
41941
+ // node_modules/semver/functions/compare-loose.js
41942
+ var require_compare_loose = __commonJS((exports, module) => {
41943
+ var compare = require_compare();
41944
+ var compareLoose = (a, b) => compare(a, b, true);
41945
+ module.exports = compareLoose;
41946
+ });
41947
+
41948
+ // node_modules/semver/functions/compare-build.js
41949
+ var require_compare_build = __commonJS((exports, module) => {
41950
+ var SemVer = require_semver();
41951
+ var compareBuild = (a, b, loose) => {
41952
+ const versionA = new SemVer(a, loose);
41953
+ const versionB = new SemVer(b, loose);
41836
41954
  return versionA.compare(versionB) || versionA.compareBuild(versionB);
41837
- }
41838
- exports.rcompare = rcompare;
41839
- function rcompare(a, b, loose) {
41840
- return compare(b, a, loose);
41841
- }
41842
- exports.sort = sort;
41843
- function sort(list, loose) {
41844
- return list.sort(function(a, b) {
41845
- return exports.compareBuild(a, b, loose);
41846
- });
41847
- }
41848
- exports.rsort = rsort;
41849
- function rsort(list, loose) {
41850
- return list.sort(function(a, b) {
41851
- return exports.compareBuild(b, a, loose);
41852
- });
41853
- }
41854
- exports.gt = gt;
41855
- function gt(a, b, loose) {
41856
- return compare(a, b, loose) > 0;
41857
- }
41858
- exports.lt = lt;
41859
- function lt(a, b, loose) {
41860
- return compare(a, b, loose) < 0;
41861
- }
41862
- exports.eq = eq;
41863
- function eq(a, b, loose) {
41864
- return compare(a, b, loose) === 0;
41865
- }
41866
- exports.neq = neq;
41867
- function neq(a, b, loose) {
41868
- return compare(a, b, loose) !== 0;
41869
- }
41870
- exports.gte = gte;
41871
- function gte(a, b, loose) {
41872
- return compare(a, b, loose) >= 0;
41873
- }
41874
- exports.lte = lte;
41875
- function lte(a, b, loose) {
41876
- return compare(a, b, loose) <= 0;
41877
- }
41878
- exports.cmp = cmp;
41879
- function cmp(a, op, b, loose) {
41955
+ };
41956
+ module.exports = compareBuild;
41957
+ });
41958
+
41959
+ // node_modules/semver/functions/sort.js
41960
+ var require_sort = __commonJS((exports, module) => {
41961
+ var compareBuild = require_compare_build();
41962
+ var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
41963
+ module.exports = sort;
41964
+ });
41965
+
41966
+ // node_modules/semver/functions/rsort.js
41967
+ var require_rsort = __commonJS((exports, module) => {
41968
+ var compareBuild = require_compare_build();
41969
+ var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
41970
+ module.exports = rsort;
41971
+ });
41972
+
41973
+ // node_modules/semver/functions/gt.js
41974
+ var require_gt = __commonJS((exports, module) => {
41975
+ var compare = require_compare();
41976
+ var gt = (a, b, loose) => compare(a, b, loose) > 0;
41977
+ module.exports = gt;
41978
+ });
41979
+
41980
+ // node_modules/semver/functions/lt.js
41981
+ var require_lt = __commonJS((exports, module) => {
41982
+ var compare = require_compare();
41983
+ var lt = (a, b, loose) => compare(a, b, loose) < 0;
41984
+ module.exports = lt;
41985
+ });
41986
+
41987
+ // node_modules/semver/functions/eq.js
41988
+ var require_eq = __commonJS((exports, module) => {
41989
+ var compare = require_compare();
41990
+ var eq = (a, b, loose) => compare(a, b, loose) === 0;
41991
+ module.exports = eq;
41992
+ });
41993
+
41994
+ // node_modules/semver/functions/neq.js
41995
+ var require_neq = __commonJS((exports, module) => {
41996
+ var compare = require_compare();
41997
+ var neq = (a, b, loose) => compare(a, b, loose) !== 0;
41998
+ module.exports = neq;
41999
+ });
42000
+
42001
+ // node_modules/semver/functions/gte.js
42002
+ var require_gte = __commonJS((exports, module) => {
42003
+ var compare = require_compare();
42004
+ var gte = (a, b, loose) => compare(a, b, loose) >= 0;
42005
+ module.exports = gte;
42006
+ });
42007
+
42008
+ // node_modules/semver/functions/lte.js
42009
+ var require_lte = __commonJS((exports, module) => {
42010
+ var compare = require_compare();
42011
+ var lte = (a, b, loose) => compare(a, b, loose) <= 0;
42012
+ module.exports = lte;
42013
+ });
42014
+
42015
+ // node_modules/semver/functions/cmp.js
42016
+ var require_cmp = __commonJS((exports, module) => {
42017
+ var eq = require_eq();
42018
+ var neq = require_neq();
42019
+ var gt = require_gt();
42020
+ var gte = require_gte();
42021
+ var lt = require_lt();
42022
+ var lte = require_lte();
42023
+ var cmp = (a, op, b, loose) => {
41880
42024
  switch (op) {
41881
42025
  case "===":
41882
- if (typeof a === "object")
42026
+ if (typeof a === "object") {
41883
42027
  a = a.version;
41884
- if (typeof b === "object")
42028
+ }
42029
+ if (typeof b === "object") {
41885
42030
  b = b.version;
42031
+ }
41886
42032
  return a === b;
41887
42033
  case "!==":
41888
- if (typeof a === "object")
42034
+ if (typeof a === "object") {
41889
42035
  a = a.version;
41890
- if (typeof b === "object")
42036
+ }
42037
+ if (typeof b === "object") {
41891
42038
  b = b.version;
42039
+ }
41892
42040
  return a !== b;
41893
42041
  case "":
41894
42042
  case "=":
@@ -41905,208 +42053,261 @@ var require_semver = __commonJS((exports, module) => {
41905
42053
  case "<=":
41906
42054
  return lte(a, b, loose);
41907
42055
  default:
41908
- throw new TypeError("Invalid operator: " + op);
42056
+ throw new TypeError(`Invalid operator: ${op}`);
41909
42057
  }
41910
- }
41911
- exports.Comparator = Comparator;
41912
- function Comparator(comp, options) {
41913
- if (!options || typeof options !== "object") {
41914
- options = {
41915
- loose: !!options,
41916
- includePrerelease: false
41917
- };
42058
+ };
42059
+ module.exports = cmp;
42060
+ });
42061
+
42062
+ // node_modules/semver/functions/coerce.js
42063
+ var require_coerce = __commonJS((exports, module) => {
42064
+ var SemVer = require_semver();
42065
+ var parse = require_parse2();
42066
+ var { safeRe: re, t } = require_re();
42067
+ var coerce = (version, options) => {
42068
+ if (version instanceof SemVer) {
42069
+ return version;
41918
42070
  }
41919
- if (comp instanceof Comparator) {
41920
- if (comp.loose === !!options.loose) {
41921
- return comp;
41922
- } else {
41923
- comp = comp.value;
41924
- }
42071
+ if (typeof version === "number") {
42072
+ version = String(version);
41925
42073
  }
41926
- if (!(this instanceof Comparator)) {
41927
- return new Comparator(comp, options);
42074
+ if (typeof version !== "string") {
42075
+ return null;
41928
42076
  }
41929
- comp = comp.trim().split(/\s+/).join(" ");
41930
- debug("comparator", comp, options);
41931
- this.options = options;
41932
- this.loose = !!options.loose;
41933
- this.parse(comp);
41934
- if (this.semver === ANY) {
41935
- this.value = "";
42077
+ options = options || {};
42078
+ let match = null;
42079
+ if (!options.rtl) {
42080
+ match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
41936
42081
  } else {
41937
- this.value = this.operator + this.semver.version;
41938
- }
41939
- debug("comp", this);
41940
- }
41941
- var ANY = {};
41942
- Comparator.prototype.parse = function(comp) {
41943
- var r = this.options.loose ? safeRe[t.COMPARATORLOOSE] : safeRe[t.COMPARATOR];
41944
- var m = comp.match(r);
41945
- if (!m) {
41946
- throw new TypeError("Invalid comparator: " + comp);
41947
- }
41948
- this.operator = m[1] !== undefined ? m[1] : "";
41949
- if (this.operator === "=") {
41950
- this.operator = "";
42082
+ const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
42083
+ let next;
42084
+ while ((next = coerceRtlRegex.exec(version)) && (!match || match.index + match[0].length !== version.length)) {
42085
+ if (!match || next.index + next[0].length !== match.index + match[0].length) {
42086
+ match = next;
42087
+ }
42088
+ coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
42089
+ }
42090
+ coerceRtlRegex.lastIndex = -1;
41951
42091
  }
41952
- if (!m[2]) {
41953
- this.semver = ANY;
41954
- } else {
41955
- this.semver = new SemVer(m[2], this.options.loose);
42092
+ if (match === null) {
42093
+ return null;
41956
42094
  }
42095
+ const major = match[2];
42096
+ const minor = match[3] || "0";
42097
+ const patch = match[4] || "0";
42098
+ const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
42099
+ const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
42100
+ return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options);
41957
42101
  };
41958
- Comparator.prototype.toString = function() {
41959
- return this.value;
41960
- };
41961
- Comparator.prototype.test = function(version) {
41962
- debug("Comparator.test", version, this.options.loose);
41963
- if (this.semver === ANY || version === ANY) {
41964
- return true;
42102
+ module.exports = coerce;
42103
+ });
42104
+
42105
+ // node_modules/semver/internal/lrucache.js
42106
+ var require_lrucache = __commonJS((exports, module) => {
42107
+ class LRUCache {
42108
+ constructor() {
42109
+ this.max = 1000;
42110
+ this.map = new Map;
41965
42111
  }
41966
- if (typeof version === "string") {
41967
- try {
41968
- version = new SemVer(version, this.options);
41969
- } catch (er) {
41970
- return false;
42112
+ get(key) {
42113
+ const value = this.map.get(key);
42114
+ if (value === undefined) {
42115
+ return;
42116
+ } else {
42117
+ this.map.delete(key);
42118
+ this.map.set(key, value);
42119
+ return value;
41971
42120
  }
41972
42121
  }
41973
- return cmp(version, this.operator, this.semver, this.options);
41974
- };
41975
- Comparator.prototype.intersects = function(comp, options) {
41976
- if (!(comp instanceof Comparator)) {
41977
- throw new TypeError("a Comparator is required");
42122
+ delete(key) {
42123
+ return this.map.delete(key);
41978
42124
  }
41979
- if (!options || typeof options !== "object") {
41980
- options = {
41981
- loose: !!options,
41982
- includePrerelease: false
41983
- };
42125
+ set(key, value) {
42126
+ const deleted = this.delete(key);
42127
+ if (!deleted && value !== undefined) {
42128
+ if (this.map.size >= this.max) {
42129
+ const firstKey = this.map.keys().next().value;
42130
+ this.delete(firstKey);
42131
+ }
42132
+ this.map.set(key, value);
42133
+ }
42134
+ return this;
41984
42135
  }
41985
- var rangeTmp;
41986
- if (this.operator === "") {
41987
- if (this.value === "") {
41988
- return true;
42136
+ }
42137
+ module.exports = LRUCache;
42138
+ });
42139
+
42140
+ // node_modules/semver/classes/range.js
42141
+ var require_range2 = __commonJS((exports, module) => {
42142
+ var SPACE_CHARACTERS = /\s+/g;
42143
+
42144
+ class Range {
42145
+ constructor(range, options) {
42146
+ options = parseOptions(options);
42147
+ if (range instanceof Range) {
42148
+ if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) {
42149
+ return range;
42150
+ } else {
42151
+ return new Range(range.raw, options);
42152
+ }
41989
42153
  }
41990
- rangeTmp = new Range(comp.value, options);
41991
- return satisfies(this.value, rangeTmp, options);
41992
- } else if (comp.operator === "") {
41993
- if (comp.value === "") {
41994
- return true;
42154
+ if (range instanceof Comparator) {
42155
+ this.raw = range.value;
42156
+ this.set = [[range]];
42157
+ this.formatted = undefined;
42158
+ return this;
41995
42159
  }
41996
- rangeTmp = new Range(this.value, options);
41997
- return satisfies(comp.semver, rangeTmp, options);
41998
- }
41999
- var sameDirectionIncreasing = (this.operator === ">=" || this.operator === ">") && (comp.operator === ">=" || comp.operator === ">");
42000
- var sameDirectionDecreasing = (this.operator === "<=" || this.operator === "<") && (comp.operator === "<=" || comp.operator === "<");
42001
- var sameSemVer = this.semver.version === comp.semver.version;
42002
- var differentDirectionsInclusive = (this.operator === ">=" || this.operator === "<=") && (comp.operator === ">=" || comp.operator === "<=");
42003
- var oppositeDirectionsLessThan = cmp(this.semver, "<", comp.semver, options) && ((this.operator === ">=" || this.operator === ">") && (comp.operator === "<=" || comp.operator === "<"));
42004
- var oppositeDirectionsGreaterThan = cmp(this.semver, ">", comp.semver, options) && ((this.operator === "<=" || this.operator === "<") && (comp.operator === ">=" || comp.operator === ">"));
42005
- return sameDirectionIncreasing || sameDirectionDecreasing || sameSemVer && differentDirectionsInclusive || oppositeDirectionsLessThan || oppositeDirectionsGreaterThan;
42006
- };
42007
- exports.Range = Range;
42008
- function Range(range, options) {
42009
- if (!options || typeof options !== "object") {
42010
- options = {
42011
- loose: !!options,
42012
- includePrerelease: false
42013
- };
42014
- }
42015
- if (range instanceof Range) {
42016
- if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) {
42017
- return range;
42018
- } else {
42019
- return new Range(range.raw, options);
42160
+ this.options = options;
42161
+ this.loose = !!options.loose;
42162
+ this.includePrerelease = !!options.includePrerelease;
42163
+ this.raw = range.trim().replace(SPACE_CHARACTERS, " ");
42164
+ this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
42165
+ if (!this.set.length) {
42166
+ throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
42167
+ }
42168
+ if (this.set.length > 1) {
42169
+ const first = this.set[0];
42170
+ this.set = this.set.filter((c) => !isNullSet(c[0]));
42171
+ if (this.set.length === 0) {
42172
+ this.set = [first];
42173
+ } else if (this.set.length > 1) {
42174
+ for (const c of this.set) {
42175
+ if (c.length === 1 && isAny(c[0])) {
42176
+ this.set = [c];
42177
+ break;
42178
+ }
42179
+ }
42180
+ }
42020
42181
  }
42182
+ this.formatted = undefined;
42021
42183
  }
42022
- if (range instanceof Comparator) {
42023
- return new Range(range.value, options);
42024
- }
42025
- if (!(this instanceof Range)) {
42026
- return new Range(range, options);
42184
+ get range() {
42185
+ if (this.formatted === undefined) {
42186
+ this.formatted = "";
42187
+ for (let i = 0;i < this.set.length; i++) {
42188
+ if (i > 0) {
42189
+ this.formatted += "||";
42190
+ }
42191
+ const comps = this.set[i];
42192
+ for (let k = 0;k < comps.length; k++) {
42193
+ if (k > 0) {
42194
+ this.formatted += " ";
42195
+ }
42196
+ this.formatted += comps[k].toString().trim();
42197
+ }
42198
+ }
42199
+ }
42200
+ return this.formatted;
42027
42201
  }
42028
- this.options = options;
42029
- this.loose = !!options.loose;
42030
- this.includePrerelease = !!options.includePrerelease;
42031
- this.raw = range.trim().split(/\s+/).join(" ");
42032
- this.set = this.raw.split("||").map(function(range2) {
42033
- return this.parseRange(range2.trim());
42034
- }, this).filter(function(c) {
42035
- return c.length;
42036
- });
42037
- if (!this.set.length) {
42038
- throw new TypeError("Invalid SemVer Range: " + this.raw);
42039
- }
42040
- this.format();
42041
- }
42042
- Range.prototype.format = function() {
42043
- this.range = this.set.map(function(comps) {
42044
- return comps.join(" ").trim();
42045
- }).join("||").trim();
42046
- return this.range;
42047
- };
42048
- Range.prototype.toString = function() {
42049
- return this.range;
42050
- };
42051
- Range.prototype.parseRange = function(range) {
42052
- var loose = this.options.loose;
42053
- var hr = loose ? safeRe[t.HYPHENRANGELOOSE] : safeRe[t.HYPHENRANGE];
42054
- range = range.replace(hr, hyphenReplace);
42055
- debug("hyphen replace", range);
42056
- range = range.replace(safeRe[t.COMPARATORTRIM], comparatorTrimReplace);
42057
- debug("comparator trim", range, safeRe[t.COMPARATORTRIM]);
42058
- range = range.replace(safeRe[t.TILDETRIM], tildeTrimReplace);
42059
- range = range.replace(safeRe[t.CARETTRIM], caretTrimReplace);
42060
- range = range.split(/\s+/).join(" ");
42061
- var compRe = loose ? safeRe[t.COMPARATORLOOSE] : safeRe[t.COMPARATOR];
42062
- var set = range.split(" ").map(function(comp) {
42063
- return parseComparator(comp, this.options);
42064
- }, this).join(" ").split(/\s+/);
42065
- if (this.options.loose) {
42066
- set = set.filter(function(comp) {
42067
- return !!comp.match(compRe);
42068
- });
42202
+ format() {
42203
+ return this.range;
42069
42204
  }
42070
- set = set.map(function(comp) {
42071
- return new Comparator(comp, this.options);
42072
- }, this);
42073
- return set;
42074
- };
42075
- Range.prototype.intersects = function(range, options) {
42076
- if (!(range instanceof Range)) {
42077
- throw new TypeError("a Range is required");
42205
+ toString() {
42206
+ return this.range;
42207
+ }
42208
+ parseRange(range) {
42209
+ const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
42210
+ const memoKey = memoOpts + ":" + range;
42211
+ const cached = cache.get(memoKey);
42212
+ if (cached) {
42213
+ return cached;
42214
+ }
42215
+ const loose = this.options.loose;
42216
+ const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
42217
+ range = range.replace(hr, hyphenReplace(this.options.includePrerelease));
42218
+ debug("hyphen replace", range);
42219
+ range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
42220
+ debug("comparator trim", range);
42221
+ range = range.replace(re[t.TILDETRIM], tildeTrimReplace);
42222
+ debug("tilde trim", range);
42223
+ range = range.replace(re[t.CARETTRIM], caretTrimReplace);
42224
+ debug("caret trim", range);
42225
+ let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
42226
+ if (loose) {
42227
+ rangeList = rangeList.filter((comp) => {
42228
+ debug("loose invalid filter", comp, this.options);
42229
+ return !!comp.match(re[t.COMPARATORLOOSE]);
42230
+ });
42231
+ }
42232
+ debug("range list", rangeList);
42233
+ const rangeMap = new Map;
42234
+ const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
42235
+ for (const comp of comparators) {
42236
+ if (isNullSet(comp)) {
42237
+ return [comp];
42238
+ }
42239
+ rangeMap.set(comp.value, comp);
42240
+ }
42241
+ if (rangeMap.size > 1 && rangeMap.has("")) {
42242
+ rangeMap.delete("");
42243
+ }
42244
+ const result = [...rangeMap.values()];
42245
+ cache.set(memoKey, result);
42246
+ return result;
42078
42247
  }
42079
- return this.set.some(function(thisComparators) {
42080
- return isSatisfiable(thisComparators, options) && range.set.some(function(rangeComparators) {
42081
- return isSatisfiable(rangeComparators, options) && thisComparators.every(function(thisComparator) {
42082
- return rangeComparators.every(function(rangeComparator) {
42083
- return thisComparator.intersects(rangeComparator, options);
42248
+ intersects(range, options) {
42249
+ if (!(range instanceof Range)) {
42250
+ throw new TypeError("a Range is required");
42251
+ }
42252
+ return this.set.some((thisComparators) => {
42253
+ return isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => {
42254
+ return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
42255
+ return rangeComparators.every((rangeComparator) => {
42256
+ return thisComparator.intersects(rangeComparator, options);
42257
+ });
42084
42258
  });
42085
42259
  });
42086
42260
  });
42087
- });
42088
- };
42089
- function isSatisfiable(comparators, options) {
42090
- var result = true;
42091
- var remainingComparators = comparators.slice();
42092
- var testComparator = remainingComparators.pop();
42261
+ }
42262
+ test(version) {
42263
+ if (!version) {
42264
+ return false;
42265
+ }
42266
+ if (typeof version === "string") {
42267
+ try {
42268
+ version = new SemVer(version, this.options);
42269
+ } catch (er) {
42270
+ return false;
42271
+ }
42272
+ }
42273
+ for (let i = 0;i < this.set.length; i++) {
42274
+ if (testSet(this.set[i], version, this.options)) {
42275
+ return true;
42276
+ }
42277
+ }
42278
+ return false;
42279
+ }
42280
+ }
42281
+ module.exports = Range;
42282
+ var LRU = require_lrucache();
42283
+ var cache = new LRU;
42284
+ var parseOptions = require_parse_options();
42285
+ var Comparator = require_comparator();
42286
+ var debug = require_debug();
42287
+ var SemVer = require_semver();
42288
+ var {
42289
+ safeRe: re,
42290
+ t,
42291
+ comparatorTrimReplace,
42292
+ tildeTrimReplace,
42293
+ caretTrimReplace
42294
+ } = require_re();
42295
+ var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants();
42296
+ var isNullSet = (c) => c.value === "<0.0.0-0";
42297
+ var isAny = (c) => c.value === "";
42298
+ var isSatisfiable = (comparators, options) => {
42299
+ let result = true;
42300
+ const remainingComparators = comparators.slice();
42301
+ let testComparator = remainingComparators.pop();
42093
42302
  while (result && remainingComparators.length) {
42094
- result = remainingComparators.every(function(otherComparator) {
42303
+ result = remainingComparators.every((otherComparator) => {
42095
42304
  return testComparator.intersects(otherComparator, options);
42096
42305
  });
42097
42306
  testComparator = remainingComparators.pop();
42098
42307
  }
42099
42308
  return result;
42100
- }
42101
- exports.toComparators = toComparators;
42102
- function toComparators(range, options) {
42103
- return new Range(range, options).set.map(function(comp) {
42104
- return comp.map(function(c) {
42105
- return c.value;
42106
- }).join(" ").trim().split(" ");
42107
- });
42108
- }
42109
- function parseComparator(comp, options) {
42309
+ };
42310
+ var parseComparator = (comp, options) => {
42110
42311
  debug("comp", comp, options);
42111
42312
  comp = replaceCarets(comp, options);
42112
42313
  debug("caret", comp);
@@ -42117,99 +42318,92 @@ var require_semver = __commonJS((exports, module) => {
42117
42318
  comp = replaceStars(comp, options);
42118
42319
  debug("stars", comp);
42119
42320
  return comp;
42120
- }
42121
- function isX(id) {
42122
- return !id || id.toLowerCase() === "x" || id === "*";
42123
- }
42124
- function replaceTildes(comp, options) {
42125
- return comp.trim().split(/\s+/).map(function(comp2) {
42126
- return replaceTilde(comp2, options);
42127
- }).join(" ");
42128
- }
42129
- function replaceTilde(comp, options) {
42130
- var r = options.loose ? safeRe[t.TILDELOOSE] : safeRe[t.TILDE];
42131
- return comp.replace(r, function(_, M, m, p, pr) {
42321
+ };
42322
+ var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
42323
+ var replaceTildes = (comp, options) => {
42324
+ return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
42325
+ };
42326
+ var replaceTilde = (comp, options) => {
42327
+ const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
42328
+ return comp.replace(r, (_, M, m, p, pr) => {
42132
42329
  debug("tilde", comp, _, M, m, p, pr);
42133
- var ret;
42330
+ let ret;
42134
42331
  if (isX(M)) {
42135
42332
  ret = "";
42136
42333
  } else if (isX(m)) {
42137
- ret = ">=" + M + ".0.0 <" + (+M + 1) + ".0.0";
42334
+ ret = `>=${M}.0.0 <${+M + 1}.0.0-0`;
42138
42335
  } else if (isX(p)) {
42139
- ret = ">=" + M + "." + m + ".0 <" + M + "." + (+m + 1) + ".0";
42336
+ ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`;
42140
42337
  } else if (pr) {
42141
42338
  debug("replaceTilde pr", pr);
42142
- ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + M + "." + (+m + 1) + ".0";
42339
+ ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
42143
42340
  } else {
42144
- ret = ">=" + M + "." + m + "." + p + " <" + M + "." + (+m + 1) + ".0";
42341
+ ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
42145
42342
  }
42146
42343
  debug("tilde return", ret);
42147
42344
  return ret;
42148
42345
  });
42149
- }
42150
- function replaceCarets(comp, options) {
42151
- return comp.trim().split(/\s+/).map(function(comp2) {
42152
- return replaceCaret(comp2, options);
42153
- }).join(" ");
42154
- }
42155
- function replaceCaret(comp, options) {
42346
+ };
42347
+ var replaceCarets = (comp, options) => {
42348
+ return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
42349
+ };
42350
+ var replaceCaret = (comp, options) => {
42156
42351
  debug("caret", comp, options);
42157
- var r = options.loose ? safeRe[t.CARETLOOSE] : safeRe[t.CARET];
42158
- return comp.replace(r, function(_, M, m, p, pr) {
42352
+ const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
42353
+ const z = options.includePrerelease ? "-0" : "";
42354
+ return comp.replace(r, (_, M, m, p, pr) => {
42159
42355
  debug("caret", comp, _, M, m, p, pr);
42160
- var ret;
42356
+ let ret;
42161
42357
  if (isX(M)) {
42162
42358
  ret = "";
42163
42359
  } else if (isX(m)) {
42164
- ret = ">=" + M + ".0.0 <" + (+M + 1) + ".0.0";
42360
+ ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
42165
42361
  } else if (isX(p)) {
42166
42362
  if (M === "0") {
42167
- ret = ">=" + M + "." + m + ".0 <" + M + "." + (+m + 1) + ".0";
42363
+ ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
42168
42364
  } else {
42169
- ret = ">=" + M + "." + m + ".0 <" + (+M + 1) + ".0.0";
42365
+ ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`;
42170
42366
  }
42171
42367
  } else if (pr) {
42172
42368
  debug("replaceCaret pr", pr);
42173
42369
  if (M === "0") {
42174
42370
  if (m === "0") {
42175
- ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + M + "." + m + "." + (+p + 1);
42371
+ ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`;
42176
42372
  } else {
42177
- ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + M + "." + (+m + 1) + ".0";
42373
+ ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
42178
42374
  }
42179
42375
  } else {
42180
- ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + (+M + 1) + ".0.0";
42376
+ ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`;
42181
42377
  }
42182
42378
  } else {
42183
42379
  debug("no pr");
42184
42380
  if (M === "0") {
42185
42381
  if (m === "0") {
42186
- ret = ">=" + M + "." + m + "." + p + " <" + M + "." + m + "." + (+p + 1);
42382
+ ret = `>=${M}.${m}.${p}${z} <${M}.${m}.${+p + 1}-0`;
42187
42383
  } else {
42188
- ret = ">=" + M + "." + m + "." + p + " <" + M + "." + (+m + 1) + ".0";
42384
+ ret = `>=${M}.${m}.${p}${z} <${M}.${+m + 1}.0-0`;
42189
42385
  }
42190
42386
  } else {
42191
- ret = ">=" + M + "." + m + "." + p + " <" + (+M + 1) + ".0.0";
42387
+ ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`;
42192
42388
  }
42193
42389
  }
42194
42390
  debug("caret return", ret);
42195
42391
  return ret;
42196
42392
  });
42197
- }
42198
- function replaceXRanges(comp, options) {
42393
+ };
42394
+ var replaceXRanges = (comp, options) => {
42199
42395
  debug("replaceXRanges", comp, options);
42200
- return comp.split(/\s+/).map(function(comp2) {
42201
- return replaceXRange(comp2, options);
42202
- }).join(" ");
42203
- }
42204
- function replaceXRange(comp, options) {
42396
+ return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
42397
+ };
42398
+ var replaceXRange = (comp, options) => {
42205
42399
  comp = comp.trim();
42206
- var r = options.loose ? safeRe[t.XRANGELOOSE] : safeRe[t.XRANGE];
42207
- return comp.replace(r, function(ret, gtlt, M, m, p, pr) {
42400
+ const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
42401
+ return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
42208
42402
  debug("xRange", comp, ret, gtlt, M, m, p, pr);
42209
- var xM = isX(M);
42210
- var xm = xM || isX(m);
42211
- var xp = xm || isX(p);
42212
- var anyX = xp;
42403
+ const xM = isX(M);
42404
+ const xm = xM || isX(m);
42405
+ const xp = xm || isX(p);
42406
+ const anyX = xp;
42213
42407
  if (gtlt === "=" && anyX) {
42214
42408
  gtlt = "";
42215
42409
  }
@@ -42243,75 +42437,68 @@ var require_semver = __commonJS((exports, module) => {
42243
42437
  m = +m + 1;
42244
42438
  }
42245
42439
  }
42246
- ret = gtlt + M + "." + m + "." + p + pr;
42440
+ if (gtlt === "<") {
42441
+ pr = "-0";
42442
+ }
42443
+ ret = `${gtlt + M}.${m}.${p}${pr}`;
42247
42444
  } else if (xm) {
42248
- ret = ">=" + M + ".0.0" + pr + " <" + (+M + 1) + ".0.0" + pr;
42445
+ ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`;
42249
42446
  } else if (xp) {
42250
- ret = ">=" + M + "." + m + ".0" + pr + " <" + M + "." + (+m + 1) + ".0" + pr;
42447
+ ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`;
42251
42448
  }
42252
42449
  debug("xRange return", ret);
42253
42450
  return ret;
42254
42451
  });
42255
- }
42256
- function replaceStars(comp, options) {
42452
+ };
42453
+ var replaceStars = (comp, options) => {
42257
42454
  debug("replaceStars", comp, options);
42258
- return comp.trim().replace(safeRe[t.STAR], "");
42259
- }
42260
- function hyphenReplace($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) {
42455
+ return comp.trim().replace(re[t.STAR], "");
42456
+ };
42457
+ var replaceGTE0 = (comp, options) => {
42458
+ debug("replaceGTE0", comp, options);
42459
+ return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "");
42460
+ };
42461
+ var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
42261
42462
  if (isX(fM)) {
42262
42463
  from = "";
42263
42464
  } else if (isX(fm)) {
42264
- from = ">=" + fM + ".0.0";
42465
+ from = `>=${fM}.0.0${incPr ? "-0" : ""}`;
42265
42466
  } else if (isX(fp)) {
42266
- from = ">=" + fM + "." + fm + ".0";
42467
+ from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
42468
+ } else if (fpr) {
42469
+ from = `>=${from}`;
42267
42470
  } else {
42268
- from = ">=" + from;
42471
+ from = `>=${from}${incPr ? "-0" : ""}`;
42269
42472
  }
42270
42473
  if (isX(tM)) {
42271
42474
  to = "";
42272
42475
  } else if (isX(tm)) {
42273
- to = "<" + (+tM + 1) + ".0.0";
42476
+ to = `<${+tM + 1}.0.0-0`;
42274
42477
  } else if (isX(tp)) {
42275
- to = "<" + tM + "." + (+tm + 1) + ".0";
42478
+ to = `<${tM}.${+tm + 1}.0-0`;
42276
42479
  } else if (tpr) {
42277
- to = "<=" + tM + "." + tm + "." + tp + "-" + tpr;
42480
+ to = `<=${tM}.${tm}.${tp}-${tpr}`;
42481
+ } else if (incPr) {
42482
+ to = `<${tM}.${tm}.${+tp + 1}-0`;
42278
42483
  } else {
42279
- to = "<=" + to;
42280
- }
42281
- return (from + " " + to).trim();
42282
- }
42283
- Range.prototype.test = function(version) {
42284
- if (!version) {
42285
- return false;
42286
- }
42287
- if (typeof version === "string") {
42288
- try {
42289
- version = new SemVer(version, this.options);
42290
- } catch (er) {
42291
- return false;
42292
- }
42484
+ to = `<=${to}`;
42293
42485
  }
42294
- for (var i2 = 0;i2 < this.set.length; i2++) {
42295
- if (testSet(this.set[i2], version, this.options)) {
42296
- return true;
42297
- }
42298
- }
42299
- return false;
42486
+ return `${from} ${to}`.trim();
42300
42487
  };
42301
- function testSet(set, version, options) {
42302
- for (var i2 = 0;i2 < set.length; i2++) {
42303
- if (!set[i2].test(version)) {
42488
+ var testSet = (set, version, options) => {
42489
+ for (let i = 0;i < set.length; i++) {
42490
+ if (!set[i].test(version)) {
42304
42491
  return false;
42305
42492
  }
42306
42493
  }
42307
42494
  if (version.prerelease.length && !options.includePrerelease) {
42308
- for (i2 = 0;i2 < set.length; i2++) {
42309
- debug(set[i2].semver);
42310
- if (set[i2].semver === ANY) {
42495
+ for (let i = 0;i < set.length; i++) {
42496
+ debug(set[i].semver);
42497
+ if (set[i].semver === Comparator.ANY) {
42311
42498
  continue;
42312
42499
  }
42313
- if (set[i2].semver.prerelease.length > 0) {
42314
- var allowed = set[i2].semver;
42500
+ if (set[i].semver.prerelease.length > 0) {
42501
+ const allowed = set[i].semver;
42315
42502
  if (allowed.major === version.major && allowed.minor === version.minor && allowed.patch === version.patch) {
42316
42503
  return true;
42317
42504
  }
@@ -42320,26 +42507,155 @@ var require_semver = __commonJS((exports, module) => {
42320
42507
  return false;
42321
42508
  }
42322
42509
  return true;
42510
+ };
42511
+ });
42512
+
42513
+ // node_modules/semver/classes/comparator.js
42514
+ var require_comparator = __commonJS((exports, module) => {
42515
+ var ANY = Symbol("SemVer ANY");
42516
+
42517
+ class Comparator {
42518
+ static get ANY() {
42519
+ return ANY;
42520
+ }
42521
+ constructor(comp, options) {
42522
+ options = parseOptions(options);
42523
+ if (comp instanceof Comparator) {
42524
+ if (comp.loose === !!options.loose) {
42525
+ return comp;
42526
+ } else {
42527
+ comp = comp.value;
42528
+ }
42529
+ }
42530
+ comp = comp.trim().split(/\s+/).join(" ");
42531
+ debug("comparator", comp, options);
42532
+ this.options = options;
42533
+ this.loose = !!options.loose;
42534
+ this.parse(comp);
42535
+ if (this.semver === ANY) {
42536
+ this.value = "";
42537
+ } else {
42538
+ this.value = this.operator + this.semver.version;
42539
+ }
42540
+ debug("comp", this);
42541
+ }
42542
+ parse(comp) {
42543
+ const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR];
42544
+ const m = comp.match(r);
42545
+ if (!m) {
42546
+ throw new TypeError(`Invalid comparator: ${comp}`);
42547
+ }
42548
+ this.operator = m[1] !== undefined ? m[1] : "";
42549
+ if (this.operator === "=") {
42550
+ this.operator = "";
42551
+ }
42552
+ if (!m[2]) {
42553
+ this.semver = ANY;
42554
+ } else {
42555
+ this.semver = new SemVer(m[2], this.options.loose);
42556
+ }
42557
+ }
42558
+ toString() {
42559
+ return this.value;
42560
+ }
42561
+ test(version) {
42562
+ debug("Comparator.test", version, this.options.loose);
42563
+ if (this.semver === ANY || version === ANY) {
42564
+ return true;
42565
+ }
42566
+ if (typeof version === "string") {
42567
+ try {
42568
+ version = new SemVer(version, this.options);
42569
+ } catch (er) {
42570
+ return false;
42571
+ }
42572
+ }
42573
+ return cmp(version, this.operator, this.semver, this.options);
42574
+ }
42575
+ intersects(comp, options) {
42576
+ if (!(comp instanceof Comparator)) {
42577
+ throw new TypeError("a Comparator is required");
42578
+ }
42579
+ if (this.operator === "") {
42580
+ if (this.value === "") {
42581
+ return true;
42582
+ }
42583
+ return new Range(comp.value, options).test(this.value);
42584
+ } else if (comp.operator === "") {
42585
+ if (comp.value === "") {
42586
+ return true;
42587
+ }
42588
+ return new Range(this.value, options).test(comp.semver);
42589
+ }
42590
+ options = parseOptions(options);
42591
+ if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
42592
+ return false;
42593
+ }
42594
+ if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
42595
+ return false;
42596
+ }
42597
+ if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
42598
+ return true;
42599
+ }
42600
+ if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
42601
+ return true;
42602
+ }
42603
+ if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
42604
+ return true;
42605
+ }
42606
+ if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
42607
+ return true;
42608
+ }
42609
+ if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
42610
+ return true;
42611
+ }
42612
+ return false;
42613
+ }
42323
42614
  }
42324
- exports.satisfies = satisfies;
42325
- function satisfies(version, range, options) {
42615
+ module.exports = Comparator;
42616
+ var parseOptions = require_parse_options();
42617
+ var { safeRe: re, t } = require_re();
42618
+ var cmp = require_cmp();
42619
+ var debug = require_debug();
42620
+ var SemVer = require_semver();
42621
+ var Range = require_range2();
42622
+ });
42623
+
42624
+ // node_modules/semver/functions/satisfies.js
42625
+ var require_satisfies = __commonJS((exports, module) => {
42626
+ var Range = require_range2();
42627
+ var satisfies = (version, range, options) => {
42326
42628
  try {
42327
42629
  range = new Range(range, options);
42328
42630
  } catch (er) {
42329
42631
  return false;
42330
42632
  }
42331
42633
  return range.test(version);
42332
- }
42333
- exports.maxSatisfying = maxSatisfying;
42334
- function maxSatisfying(versions, range, options) {
42335
- var max = null;
42336
- var maxSV = null;
42634
+ };
42635
+ module.exports = satisfies;
42636
+ });
42637
+
42638
+ // node_modules/semver/ranges/to-comparators.js
42639
+ var require_to_comparators = __commonJS((exports, module) => {
42640
+ var Range = require_range2();
42641
+ var toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
42642
+ module.exports = toComparators;
42643
+ });
42644
+
42645
+ // node_modules/semver/ranges/max-satisfying.js
42646
+ var require_max_satisfying = __commonJS((exports, module) => {
42647
+ var SemVer = require_semver();
42648
+ var Range = require_range2();
42649
+ var maxSatisfying = (versions, range, options) => {
42650
+ let max = null;
42651
+ let maxSV = null;
42652
+ let rangeObj = null;
42337
42653
  try {
42338
- var rangeObj = new Range(range, options);
42654
+ rangeObj = new Range(range, options);
42339
42655
  } catch (er) {
42340
42656
  return null;
42341
42657
  }
42342
- versions.forEach(function(v) {
42658
+ versions.forEach((v) => {
42343
42659
  if (rangeObj.test(v)) {
42344
42660
  if (!max || maxSV.compare(v) === -1) {
42345
42661
  max = v;
@@ -42348,17 +42664,24 @@ var require_semver = __commonJS((exports, module) => {
42348
42664
  }
42349
42665
  });
42350
42666
  return max;
42351
- }
42352
- exports.minSatisfying = minSatisfying;
42353
- function minSatisfying(versions, range, options) {
42354
- var min = null;
42355
- var minSV = null;
42667
+ };
42668
+ module.exports = maxSatisfying;
42669
+ });
42670
+
42671
+ // node_modules/semver/ranges/min-satisfying.js
42672
+ var require_min_satisfying = __commonJS((exports, module) => {
42673
+ var SemVer = require_semver();
42674
+ var Range = require_range2();
42675
+ var minSatisfying = (versions, range, options) => {
42676
+ let min = null;
42677
+ let minSV = null;
42678
+ let rangeObj = null;
42356
42679
  try {
42357
- var rangeObj = new Range(range, options);
42680
+ rangeObj = new Range(range, options);
42358
42681
  } catch (er) {
42359
42682
  return null;
42360
42683
  }
42361
- versions.forEach(function(v) {
42684
+ versions.forEach((v) => {
42362
42685
  if (rangeObj.test(v)) {
42363
42686
  if (!min || minSV.compare(v) === 1) {
42364
42687
  min = v;
@@ -42367,11 +42690,18 @@ var require_semver = __commonJS((exports, module) => {
42367
42690
  }
42368
42691
  });
42369
42692
  return min;
42370
- }
42371
- exports.minVersion = minVersion;
42372
- function minVersion(range, loose) {
42693
+ };
42694
+ module.exports = minSatisfying;
42695
+ });
42696
+
42697
+ // node_modules/semver/ranges/min-version.js
42698
+ var require_min_version = __commonJS((exports, module) => {
42699
+ var SemVer = require_semver();
42700
+ var Range = require_range2();
42701
+ var gt = require_gt();
42702
+ var minVersion = (range, loose) => {
42373
42703
  range = new Range(range, loose);
42374
- var minver = new SemVer("0.0.0");
42704
+ let minver = new SemVer("0.0.0");
42375
42705
  if (range.test(minver)) {
42376
42706
  return minver;
42377
42707
  }
@@ -42380,10 +42710,11 @@ var require_semver = __commonJS((exports, module) => {
42380
42710
  return minver;
42381
42711
  }
42382
42712
  minver = null;
42383
- for (var i2 = 0;i2 < range.set.length; ++i2) {
42384
- var comparators = range.set[i2];
42385
- comparators.forEach(function(comparator) {
42386
- var compver = new SemVer(comparator.semver.version);
42713
+ for (let i = 0;i < range.set.length; ++i) {
42714
+ const comparators = range.set[i];
42715
+ let setMin = null;
42716
+ comparators.forEach((comparator) => {
42717
+ const compver = new SemVer(comparator.semver.version);
42387
42718
  switch (comparator.operator) {
42388
42719
  case ">":
42389
42720
  if (compver.prerelease.length === 0) {
@@ -42394,44 +42725,57 @@ var require_semver = __commonJS((exports, module) => {
42394
42725
  compver.raw = compver.format();
42395
42726
  case "":
42396
42727
  case ">=":
42397
- if (!minver || gt(minver, compver)) {
42398
- minver = compver;
42728
+ if (!setMin || gt(compver, setMin)) {
42729
+ setMin = compver;
42399
42730
  }
42400
42731
  break;
42401
42732
  case "<":
42402
42733
  case "<=":
42403
42734
  break;
42404
42735
  default:
42405
- throw new Error("Unexpected operation: " + comparator.operator);
42736
+ throw new Error(`Unexpected operation: ${comparator.operator}`);
42406
42737
  }
42407
42738
  });
42739
+ if (setMin && (!minver || gt(minver, setMin))) {
42740
+ minver = setMin;
42741
+ }
42408
42742
  }
42409
42743
  if (minver && range.test(minver)) {
42410
42744
  return minver;
42411
42745
  }
42412
42746
  return null;
42413
- }
42414
- exports.validRange = validRange;
42415
- function validRange(range, options) {
42747
+ };
42748
+ module.exports = minVersion;
42749
+ });
42750
+
42751
+ // node_modules/semver/ranges/valid.js
42752
+ var require_valid2 = __commonJS((exports, module) => {
42753
+ var Range = require_range2();
42754
+ var validRange = (range, options) => {
42416
42755
  try {
42417
42756
  return new Range(range, options).range || "*";
42418
42757
  } catch (er) {
42419
42758
  return null;
42420
42759
  }
42421
- }
42422
- exports.ltr = ltr;
42423
- function ltr(version, range, options) {
42424
- return outside(version, range, "<", options);
42425
- }
42426
- exports.gtr = gtr;
42427
- function gtr(version, range, options) {
42428
- return outside(version, range, ">", options);
42429
- }
42430
- exports.outside = outside;
42431
- function outside(version, range, hilo, options) {
42760
+ };
42761
+ module.exports = validRange;
42762
+ });
42763
+
42764
+ // node_modules/semver/ranges/outside.js
42765
+ var require_outside = __commonJS((exports, module) => {
42766
+ var SemVer = require_semver();
42767
+ var Comparator = require_comparator();
42768
+ var { ANY } = Comparator;
42769
+ var Range = require_range2();
42770
+ var satisfies = require_satisfies();
42771
+ var gt = require_gt();
42772
+ var lt = require_lt();
42773
+ var lte = require_lte();
42774
+ var gte = require_gte();
42775
+ var outside = (version, range, hilo, options) => {
42432
42776
  version = new SemVer(version, options);
42433
42777
  range = new Range(range, options);
42434
- var gtfn, ltefn, ltfn, comp, ecomp;
42778
+ let gtfn, ltefn, ltfn, comp, ecomp;
42435
42779
  switch (hilo) {
42436
42780
  case ">":
42437
42781
  gtfn = gt;
@@ -42453,11 +42797,11 @@ var require_semver = __commonJS((exports, module) => {
42453
42797
  if (satisfies(version, range, options)) {
42454
42798
  return false;
42455
42799
  }
42456
- for (var i2 = 0;i2 < range.set.length; ++i2) {
42457
- var comparators = range.set[i2];
42458
- var high = null;
42459
- var low = null;
42460
- comparators.forEach(function(comparator) {
42800
+ for (let i = 0;i < range.set.length; ++i) {
42801
+ const comparators = range.set[i];
42802
+ let high = null;
42803
+ let low = null;
42804
+ comparators.forEach((comparator) => {
42461
42805
  if (comparator.semver === ANY) {
42462
42806
  comparator = new Comparator(">=0.0.0");
42463
42807
  }
@@ -42479,57 +42823,341 @@ var require_semver = __commonJS((exports, module) => {
42479
42823
  }
42480
42824
  }
42481
42825
  return true;
42482
- }
42483
- exports.prerelease = prerelease;
42484
- function prerelease(version, options) {
42485
- var parsed = parse(version, options);
42486
- return parsed && parsed.prerelease.length ? parsed.prerelease : null;
42487
- }
42488
- exports.intersects = intersects;
42489
- function intersects(r1, r2, options) {
42826
+ };
42827
+ module.exports = outside;
42828
+ });
42829
+
42830
+ // node_modules/semver/ranges/gtr.js
42831
+ var require_gtr = __commonJS((exports, module) => {
42832
+ var outside = require_outside();
42833
+ var gtr = (version, range, options) => outside(version, range, ">", options);
42834
+ module.exports = gtr;
42835
+ });
42836
+
42837
+ // node_modules/semver/ranges/ltr.js
42838
+ var require_ltr = __commonJS((exports, module) => {
42839
+ var outside = require_outside();
42840
+ var ltr = (version, range, options) => outside(version, range, "<", options);
42841
+ module.exports = ltr;
42842
+ });
42843
+
42844
+ // node_modules/semver/ranges/intersects.js
42845
+ var require_intersects = __commonJS((exports, module) => {
42846
+ var Range = require_range2();
42847
+ var intersects = (r1, r2, options) => {
42490
42848
  r1 = new Range(r1, options);
42491
42849
  r2 = new Range(r2, options);
42492
- return r1.intersects(r2);
42493
- }
42494
- exports.coerce = coerce;
42495
- function coerce(version, options) {
42496
- if (version instanceof SemVer) {
42497
- return version;
42850
+ return r1.intersects(r2, options);
42851
+ };
42852
+ module.exports = intersects;
42853
+ });
42854
+
42855
+ // node_modules/semver/ranges/simplify.js
42856
+ var require_simplify = __commonJS((exports, module) => {
42857
+ var satisfies = require_satisfies();
42858
+ var compare = require_compare();
42859
+ module.exports = (versions, range, options) => {
42860
+ const set = [];
42861
+ let first = null;
42862
+ let prev = null;
42863
+ const v = versions.sort((a, b) => compare(a, b, options));
42864
+ for (const version of v) {
42865
+ const included = satisfies(version, range, options);
42866
+ if (included) {
42867
+ prev = version;
42868
+ if (!first) {
42869
+ first = version;
42870
+ }
42871
+ } else {
42872
+ if (prev) {
42873
+ set.push([first, prev]);
42874
+ }
42875
+ prev = null;
42876
+ first = null;
42877
+ }
42878
+ }
42879
+ if (first) {
42880
+ set.push([first, null]);
42881
+ }
42882
+ const ranges = [];
42883
+ for (const [min, max] of set) {
42884
+ if (min === max) {
42885
+ ranges.push(min);
42886
+ } else if (!max && min === v[0]) {
42887
+ ranges.push("*");
42888
+ } else if (!max) {
42889
+ ranges.push(`>=${min}`);
42890
+ } else if (min === v[0]) {
42891
+ ranges.push(`<=${max}`);
42892
+ } else {
42893
+ ranges.push(`${min} - ${max}`);
42894
+ }
42498
42895
  }
42499
- if (typeof version === "number") {
42500
- version = String(version);
42896
+ const simplified = ranges.join(" || ");
42897
+ const original = typeof range.raw === "string" ? range.raw : String(range);
42898
+ return simplified.length < original.length ? simplified : range;
42899
+ };
42900
+ });
42901
+
42902
+ // node_modules/semver/ranges/subset.js
42903
+ var require_subset = __commonJS((exports, module) => {
42904
+ var Range = require_range2();
42905
+ var Comparator = require_comparator();
42906
+ var { ANY } = Comparator;
42907
+ var satisfies = require_satisfies();
42908
+ var compare = require_compare();
42909
+ var subset = (sub, dom, options = {}) => {
42910
+ if (sub === dom) {
42911
+ return true;
42501
42912
  }
42502
- if (typeof version !== "string") {
42913
+ sub = new Range(sub, options);
42914
+ dom = new Range(dom, options);
42915
+ let sawNonNull = false;
42916
+ OUTER:
42917
+ for (const simpleSub of sub.set) {
42918
+ for (const simpleDom of dom.set) {
42919
+ const isSub = simpleSubset(simpleSub, simpleDom, options);
42920
+ sawNonNull = sawNonNull || isSub !== null;
42921
+ if (isSub) {
42922
+ continue OUTER;
42923
+ }
42924
+ }
42925
+ if (sawNonNull) {
42926
+ return false;
42927
+ }
42928
+ }
42929
+ return true;
42930
+ };
42931
+ var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
42932
+ var minimumVersion = [new Comparator(">=0.0.0")];
42933
+ var simpleSubset = (sub, dom, options) => {
42934
+ if (sub === dom) {
42935
+ return true;
42936
+ }
42937
+ if (sub.length === 1 && sub[0].semver === ANY) {
42938
+ if (dom.length === 1 && dom[0].semver === ANY) {
42939
+ return true;
42940
+ } else if (options.includePrerelease) {
42941
+ sub = minimumVersionWithPreRelease;
42942
+ } else {
42943
+ sub = minimumVersion;
42944
+ }
42945
+ }
42946
+ if (dom.length === 1 && dom[0].semver === ANY) {
42947
+ if (options.includePrerelease) {
42948
+ return true;
42949
+ } else {
42950
+ dom = minimumVersion;
42951
+ }
42952
+ }
42953
+ const eqSet = new Set;
42954
+ let gt, lt;
42955
+ for (const c of sub) {
42956
+ if (c.operator === ">" || c.operator === ">=") {
42957
+ gt = higherGT(gt, c, options);
42958
+ } else if (c.operator === "<" || c.operator === "<=") {
42959
+ lt = lowerLT(lt, c, options);
42960
+ } else {
42961
+ eqSet.add(c.semver);
42962
+ }
42963
+ }
42964
+ if (eqSet.size > 1) {
42503
42965
  return null;
42504
42966
  }
42505
- options = options || {};
42506
- var match = null;
42507
- if (!options.rtl) {
42508
- match = version.match(safeRe[t.COERCE]);
42509
- } else {
42510
- var next;
42511
- while ((next = safeRe[t.COERCERTL].exec(version)) && (!match || match.index + match[0].length !== version.length)) {
42512
- if (!match || next.index + next[0].length !== match.index + match[0].length) {
42513
- match = next;
42967
+ let gtltComp;
42968
+ if (gt && lt) {
42969
+ gtltComp = compare(gt.semver, lt.semver, options);
42970
+ if (gtltComp > 0) {
42971
+ return null;
42972
+ } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) {
42973
+ return null;
42974
+ }
42975
+ }
42976
+ for (const eq of eqSet) {
42977
+ if (gt && !satisfies(eq, String(gt), options)) {
42978
+ return null;
42979
+ }
42980
+ if (lt && !satisfies(eq, String(lt), options)) {
42981
+ return null;
42982
+ }
42983
+ for (const c of dom) {
42984
+ if (!satisfies(eq, String(c), options)) {
42985
+ return false;
42514
42986
  }
42515
- safeRe[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length;
42516
42987
  }
42517
- safeRe[t.COERCERTL].lastIndex = -1;
42988
+ return true;
42518
42989
  }
42519
- if (match === null) {
42520
- return null;
42990
+ let higher, lower;
42991
+ let hasDomLT, hasDomGT;
42992
+ let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
42993
+ let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
42994
+ if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
42995
+ needDomLTPre = false;
42996
+ }
42997
+ for (const c of dom) {
42998
+ hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=";
42999
+ hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=";
43000
+ if (gt) {
43001
+ if (needDomGTPre) {
43002
+ if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) {
43003
+ needDomGTPre = false;
43004
+ }
43005
+ }
43006
+ if (c.operator === ">" || c.operator === ">=") {
43007
+ higher = higherGT(gt, c, options);
43008
+ if (higher === c && higher !== gt) {
43009
+ return false;
43010
+ }
43011
+ } else if (gt.operator === ">=" && !satisfies(gt.semver, String(c), options)) {
43012
+ return false;
43013
+ }
43014
+ }
43015
+ if (lt) {
43016
+ if (needDomLTPre) {
43017
+ if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) {
43018
+ needDomLTPre = false;
43019
+ }
43020
+ }
43021
+ if (c.operator === "<" || c.operator === "<=") {
43022
+ lower = lowerLT(lt, c, options);
43023
+ if (lower === c && lower !== lt) {
43024
+ return false;
43025
+ }
43026
+ } else if (lt.operator === "<=" && !satisfies(lt.semver, String(c), options)) {
43027
+ return false;
43028
+ }
43029
+ }
43030
+ if (!c.operator && (lt || gt) && gtltComp !== 0) {
43031
+ return false;
43032
+ }
42521
43033
  }
42522
- return parse(match[2] + "." + (match[3] || "0") + "." + (match[4] || "0"), options);
42523
- }
43034
+ if (gt && hasDomLT && !lt && gtltComp !== 0) {
43035
+ return false;
43036
+ }
43037
+ if (lt && hasDomGT && !gt && gtltComp !== 0) {
43038
+ return false;
43039
+ }
43040
+ if (needDomGTPre || needDomLTPre) {
43041
+ return false;
43042
+ }
43043
+ return true;
43044
+ };
43045
+ var higherGT = (a, b, options) => {
43046
+ if (!a) {
43047
+ return b;
43048
+ }
43049
+ const comp = compare(a.semver, b.semver, options);
43050
+ return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a;
43051
+ };
43052
+ var lowerLT = (a, b, options) => {
43053
+ if (!a) {
43054
+ return b;
43055
+ }
43056
+ const comp = compare(a.semver, b.semver, options);
43057
+ return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a;
43058
+ };
43059
+ module.exports = subset;
43060
+ });
43061
+
43062
+ // node_modules/semver/index.js
43063
+ var require_semver2 = __commonJS((exports, module) => {
43064
+ var internalRe = require_re();
43065
+ var constants = require_constants();
43066
+ var SemVer = require_semver();
43067
+ var identifiers = require_identifiers();
43068
+ var parse = require_parse2();
43069
+ var valid = require_valid();
43070
+ var clean = require_clean();
43071
+ var inc = require_inc();
43072
+ var diff = require_diff();
43073
+ var major = require_major();
43074
+ var minor = require_minor();
43075
+ var patch = require_patch();
43076
+ var prerelease = require_prerelease();
43077
+ var compare = require_compare();
43078
+ var rcompare = require_rcompare();
43079
+ var compareLoose = require_compare_loose();
43080
+ var compareBuild = require_compare_build();
43081
+ var sort = require_sort();
43082
+ var rsort = require_rsort();
43083
+ var gt = require_gt();
43084
+ var lt = require_lt();
43085
+ var eq = require_eq();
43086
+ var neq = require_neq();
43087
+ var gte = require_gte();
43088
+ var lte = require_lte();
43089
+ var cmp = require_cmp();
43090
+ var coerce = require_coerce();
43091
+ var Comparator = require_comparator();
43092
+ var Range = require_range2();
43093
+ var satisfies = require_satisfies();
43094
+ var toComparators = require_to_comparators();
43095
+ var maxSatisfying = require_max_satisfying();
43096
+ var minSatisfying = require_min_satisfying();
43097
+ var minVersion = require_min_version();
43098
+ var validRange = require_valid2();
43099
+ var outside = require_outside();
43100
+ var gtr = require_gtr();
43101
+ var ltr = require_ltr();
43102
+ var intersects = require_intersects();
43103
+ var simplifyRange = require_simplify();
43104
+ var subset = require_subset();
43105
+ module.exports = {
43106
+ parse,
43107
+ valid,
43108
+ clean,
43109
+ inc,
43110
+ diff,
43111
+ major,
43112
+ minor,
43113
+ patch,
43114
+ prerelease,
43115
+ compare,
43116
+ rcompare,
43117
+ compareLoose,
43118
+ compareBuild,
43119
+ sort,
43120
+ rsort,
43121
+ gt,
43122
+ lt,
43123
+ eq,
43124
+ neq,
43125
+ gte,
43126
+ lte,
43127
+ cmp,
43128
+ coerce,
43129
+ Comparator,
43130
+ Range,
43131
+ satisfies,
43132
+ toComparators,
43133
+ maxSatisfying,
43134
+ minSatisfying,
43135
+ minVersion,
43136
+ validRange,
43137
+ outside,
43138
+ gtr,
43139
+ ltr,
43140
+ intersects,
43141
+ simplifyRange,
43142
+ subset,
43143
+ SemVer,
43144
+ re: internalRe.re,
43145
+ src: internalRe.src,
43146
+ tokens: internalRe.t,
43147
+ SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,
43148
+ RELEASE_TYPES: constants.RELEASE_TYPES,
43149
+ compareIdentifiers: identifiers.compareIdentifiers,
43150
+ rcompareIdentifiers: identifiers.rcompareIdentifiers
43151
+ };
42524
43152
  });
42525
43153
 
42526
43154
  // package.json
42527
43155
  var require_package = __commonJS((exports, module) => {
42528
43156
  module.exports = {
42529
43157
  name: "@betty-blocks/cli",
42530
- version: "25.108.0",
43158
+ version: "26.0.0-beta.11",
42531
43159
  description: "A Betty Blocks CLI",
42532
- module: "./src/bb.ts",
43160
+ module: "./build/src/bb.js",
42533
43161
  type: "module",
42534
43162
  license: "UNLICENSED",
42535
43163
  repository: {
@@ -42549,70 +43177,69 @@ var require_package = __commonJS((exports, module) => {
42549
43177
  clean: "rm -rf build/ && rm -rf node_modules/"
42550
43178
  },
42551
43179
  devDependencies: {
42552
- "@commitlint/cli": "^15.0.0",
42553
- "@commitlint/config-angular": "^15.0.0",
42554
- "@commitlint/prompt-cli": "^15.0.0",
42555
- "@semantic-release/changelog": "^6.0.1",
43180
+ "@commitlint/cli": "^20.1.0",
43181
+ "@commitlint/config-angular": "^20.0.0",
43182
+ "@commitlint/prompt-cli": "^20.1.0",
43183
+ "@semantic-release/changelog": "^6.0.3",
42556
43184
  "@semantic-release/git": "^10.0.1",
42557
- "@types/adm-zip": "0.5.7",
42558
43185
  "@types/app-root-path": "^1.2.4",
42559
43186
  "@types/babel__generator": "7.27.0",
42560
43187
  "@types/babel__traverse": "7.28.0",
42561
- "@types/bun": "^1.2.19",
43188
+ "@types/bun": "^1.2.23",
42562
43189
  "@types/fs-extra": "^8.0.0",
42563
43190
  "@types/glob": "^7.2.0",
42564
- "@types/hapi__joi": "^16.0.0",
42565
- "@types/minimatch": "^6.0.0",
42566
- "@types/promise-sequential": "^1.1.0",
42567
- "@types/prompts": "^2.0.14",
42568
- "@types/react": "^16.9.9",
42569
- "@types/semver": "^7.3.9",
42570
- "@types/serve-handler": "^6.1.0",
43191
+ "@types/promise-sequential": "^1.1.2",
43192
+ "@types/semver": "^7.7.1",
42571
43193
  "app-root-path": "^2.2.1",
42572
- eslint: "^9.23.0",
42573
- "eslint-config-prettier": "^10.1.1",
42574
- "eslint-plugin-prettier": "^5.2.5",
43194
+ "eslint-config-prettier": "^10.1.8",
43195
+ "eslint-plugin-prettier": "^5.5.4",
42575
43196
  "eslint-plugin-simple-import-sort": "^12.1.1",
42576
- prettier: "3.5.3",
42577
- "semantic-release": "^24.2.7",
42578
- "typescript-eslint": "^8.18.0",
42579
- typescript: "^5.8.2"
43197
+ eslint: "^9.36.0",
43198
+ prettier: "3.6.2",
43199
+ "semantic-release": "^24.2.9",
43200
+ "typescript-eslint": "^8.45.0"
42580
43201
  },
42581
43202
  dependencies: {
42582
- "@azure/ms-rest-js": "^2.0.4",
43203
+ "@azure/ms-rest-js": "^2.7.0",
42583
43204
  "@azure/storage-blob": "^10.3.0",
42584
- "@babel/generator": "7.28.0",
42585
- "@babel/parser": "7.28.0",
42586
- "@babel/traverse": "7.28.0",
42587
- "@babel/types": "7.28.2",
42588
- "@betty-blocks/component-sdk": "^1.91.3",
43205
+ "@babel/generator": "7.28.3",
43206
+ "@babel/parser": "7.28.4",
43207
+ "@babel/traverse": "7.28.4",
43208
+ "@babel/types": "7.28.4",
43209
+ "@betty-blocks/component-sdk": "^1.91.4",
43210
+ "@types/adm-zip": "0.5.7",
43211
+ "@types/hapi__joi": "^16.0.0",
43212
+ "@types/prompts": "^2.4.9",
43213
+ "@types/react": "^16.9.9",
43214
+ "@types/serve-handler": "^6.1.4",
42589
43215
  "adm-zip": "0.5.16",
42590
43216
  case: "^1.6.3",
42591
- chalk: "^5.5.0",
42592
- commander: "^14.0.0",
42593
- "form-data": "4.0.4",
42594
- "fs-extra": "11.3.1",
42595
- glob: "^7.2.0",
42596
- joi: "18.0.0",
43217
+ chalk: "^5.6.2",
43218
+ commander: "^14.0.1",
43219
+ "fs-extra": "11.3.2",
43220
+ glob: "^11.0.3",
43221
+ joi: "18.0.1",
42597
43222
  "jsdoc-api": "^7.1.0",
42598
- jsonschema: "^1.4.0",
42599
- minimatch: "10.0.3",
43223
+ jsonschema: "^1.5.0",
42600
43224
  minimist: "1.2.8",
42601
43225
  "node-fetch": "3.3.2",
42602
- ora: "8.2.0",
43226
+ ora: "9.0.0",
42603
43227
  prismjs: "1.30.0",
42604
43228
  prompts: "^2.4.2",
42605
- semver: "^6.3.0",
42606
- serve: "^11.1.0",
43229
+ semver: "^7.7.2",
42607
43230
  "serve-handler": "6.1.6",
42608
- "tsconfig-paths": "^3.9.0",
43231
+ serve: "^11.1.0",
43232
+ "ts-node": "10.9.2",
43233
+ "tsconfig-paths": "^3.15.0",
43234
+ typescript: "^5.9.2",
42609
43235
  webhead: "^1.1.3"
42610
43236
  },
42611
43237
  bin: {
42612
- bb: "./src/bb.ts"
43238
+ bb: "./build/src/bb.js"
42613
43239
  },
42614
43240
  resolutions: {
42615
- "@types/react": "^16.9.9"
43241
+ "@types/react": "^16.9.9",
43242
+ "@types/minimatch": "5.1.2"
42616
43243
  },
42617
43244
  files: [
42618
43245
  "assets/",
@@ -42892,6 +43519,9 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
42892
43519
  if (env.TERM === "xterm-ghostty") {
42893
43520
  return 3;
42894
43521
  }
43522
+ if (env.TERM === "wezterm") {
43523
+ return 3;
43524
+ }
42895
43525
  if ("TERM_PROGRAM" in env) {
42896
43526
  const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
42897
43527
  switch (env.TERM_PROGRAM) {
@@ -43189,7 +43819,7 @@ var uploadBlob_default = async ({
43189
43819
  return { ...uploadResponse, url: containerURL.url };
43190
43820
  };
43191
43821
 
43192
- // src/functions/bb-components-functions.ts
43822
+ // src/components/bb-components-functions.ts
43193
43823
  var upload2 = async ({
43194
43824
  blobContentType,
43195
43825
  bucketName,
@@ -43241,7 +43871,7 @@ var validateBucketName = (name) => {
43241
43871
 
43242
43872
  // src/utils/checkUpdateAvailable.ts
43243
43873
  var import_fs_extra = __toESM(require_lib4(), 1);
43244
- var import_semver = __toESM(require_semver(), 1);
43874
+ var import_semver = __toESM(require_semver2(), 1);
43245
43875
  import { exec } from "child_process";
43246
43876
  import { tmpdir } from "os";
43247
43877
  import { promisify } from "util";