vercel 28.16.15 → 28.18.0

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 (2) hide show
  1. package/dist/index.js +1533 -684
  2. package/package.json +17 -27
package/dist/index.js CHANGED
@@ -24,7 +24,7 @@ var ProjectEnvType;
24
24
  ProjectEnvType["Encrypted"] = "encrypted";
25
25
  ProjectEnvType["System"] = "system";
26
26
  })(ProjectEnvType = exports.ProjectEnvType || (exports.ProjectEnvType = {}));
27
-
27
+ //# sourceMappingURL=index.js.map
28
28
 
29
29
  /***/ }),
30
30
 
@@ -10286,7 +10286,7 @@ function setup(fetch) {
10286
10286
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10287
10287
 
10288
10288
  const retry = __webpack_require__(69420);
10289
- const debug = __webpack_require__(49064)('fetch-retry');
10289
+ const debug = __webpack_require__(94219)('fetch-retry');
10290
10290
 
10291
10291
  // retry settings
10292
10292
  const MIN_TIMEOUT = 10;
@@ -41142,656 +41142,6 @@ function init (debug) {
41142
41142
  exports.enable(load());
41143
41143
 
41144
41144
 
41145
- /***/ }),
41146
-
41147
- /***/ 12308:
41148
- /***/ ((module, exports, __webpack_require__) => {
41149
-
41150
- "use strict";
41151
-
41152
-
41153
- function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
41154
-
41155
- /* eslint-env browser */
41156
-
41157
- /**
41158
- * This is the web browser implementation of `debug()`.
41159
- */
41160
- exports.log = log;
41161
- exports.formatArgs = formatArgs;
41162
- exports.save = save;
41163
- exports.load = load;
41164
- exports.useColors = useColors;
41165
- exports.storage = localstorage();
41166
- /**
41167
- * Colors.
41168
- */
41169
-
41170
- exports.colors = ['#0000CC', '#0000FF', '#0033CC', '#0033FF', '#0066CC', '#0066FF', '#0099CC', '#0099FF', '#00CC00', '#00CC33', '#00CC66', '#00CC99', '#00CCCC', '#00CCFF', '#3300CC', '#3300FF', '#3333CC', '#3333FF', '#3366CC', '#3366FF', '#3399CC', '#3399FF', '#33CC00', '#33CC33', '#33CC66', '#33CC99', '#33CCCC', '#33CCFF', '#6600CC', '#6600FF', '#6633CC', '#6633FF', '#66CC00', '#66CC33', '#9900CC', '#9900FF', '#9933CC', '#9933FF', '#99CC00', '#99CC33', '#CC0000', '#CC0033', '#CC0066', '#CC0099', '#CC00CC', '#CC00FF', '#CC3300', '#CC3333', '#CC3366', '#CC3399', '#CC33CC', '#CC33FF', '#CC6600', '#CC6633', '#CC9900', '#CC9933', '#CCCC00', '#CCCC33', '#FF0000', '#FF0033', '#FF0066', '#FF0099', '#FF00CC', '#FF00FF', '#FF3300', '#FF3333', '#FF3366', '#FF3399', '#FF33CC', '#FF33FF', '#FF6600', '#FF6633', '#FF9900', '#FF9933', '#FFCC00', '#FFCC33'];
41171
- /**
41172
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
41173
- * and the Firebug extension (any Firefox version) are known
41174
- * to support "%c" CSS customizations.
41175
- *
41176
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
41177
- */
41178
- // eslint-disable-next-line complexity
41179
-
41180
- function useColors() {
41181
- // NB: In an Electron preload script, document will be defined but not fully
41182
- // initialized. Since we know we're in Chrome, we'll just detect this case
41183
- // explicitly
41184
- if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
41185
- return true;
41186
- } // Internet Explorer and Edge do not support colors.
41187
-
41188
-
41189
- if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
41190
- return false;
41191
- } // Is webkit? http://stackoverflow.com/a/16459606/376773
41192
- // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
41193
-
41194
-
41195
- return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773
41196
- typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31?
41197
- // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
41198
- typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker
41199
- typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
41200
- }
41201
- /**
41202
- * Colorize log arguments if enabled.
41203
- *
41204
- * @api public
41205
- */
41206
-
41207
-
41208
- function formatArgs(args) {
41209
- args[0] = (this.useColors ? '%c' : '') + this.namespace + (this.useColors ? ' %c' : ' ') + args[0] + (this.useColors ? '%c ' : ' ') + '+' + module.exports.humanize(this.diff);
41210
-
41211
- if (!this.useColors) {
41212
- return;
41213
- }
41214
-
41215
- var c = 'color: ' + this.color;
41216
- args.splice(1, 0, c, 'color: inherit'); // The final "%c" is somewhat tricky, because there could be other
41217
- // arguments passed either before or after the %c, so we need to
41218
- // figure out the correct index to insert the CSS into
41219
-
41220
- var index = 0;
41221
- var lastC = 0;
41222
- args[0].replace(/%[a-zA-Z%]/g, function (match) {
41223
- if (match === '%%') {
41224
- return;
41225
- }
41226
-
41227
- index++;
41228
-
41229
- if (match === '%c') {
41230
- // We only are interested in the *last* %c
41231
- // (the user may have provided their own)
41232
- lastC = index;
41233
- }
41234
- });
41235
- args.splice(lastC, 0, c);
41236
- }
41237
- /**
41238
- * Invokes `console.log()` when available.
41239
- * No-op when `console.log` is not a "function".
41240
- *
41241
- * @api public
41242
- */
41243
-
41244
-
41245
- function log() {
41246
- var _console;
41247
-
41248
- // This hackery is required for IE8/9, where
41249
- // the `console.log` function doesn't have 'apply'
41250
- return (typeof console === "undefined" ? "undefined" : _typeof(console)) === 'object' && console.log && (_console = console).log.apply(_console, arguments);
41251
- }
41252
- /**
41253
- * Save `namespaces`.
41254
- *
41255
- * @param {String} namespaces
41256
- * @api private
41257
- */
41258
-
41259
-
41260
- function save(namespaces) {
41261
- try {
41262
- if (namespaces) {
41263
- exports.storage.setItem('debug', namespaces);
41264
- } else {
41265
- exports.storage.removeItem('debug');
41266
- }
41267
- } catch (error) {// Swallow
41268
- // XXX (@Qix-) should we be logging these?
41269
- }
41270
- }
41271
- /**
41272
- * Load `namespaces`.
41273
- *
41274
- * @return {String} returns the previously persisted debug modes
41275
- * @api private
41276
- */
41277
-
41278
-
41279
- function load() {
41280
- var r;
41281
-
41282
- try {
41283
- r = exports.storage.getItem('debug');
41284
- } catch (error) {} // Swallow
41285
- // XXX (@Qix-) should we be logging these?
41286
- // If debug isn't set in LS, and we're in Electron, try to load $DEBUG
41287
-
41288
-
41289
- if (!r && typeof process !== 'undefined' && 'env' in process) {
41290
- r = process.env.DEBUG;
41291
- }
41292
-
41293
- return r;
41294
- }
41295
- /**
41296
- * Localstorage attempts to return the localstorage.
41297
- *
41298
- * This is necessary because safari throws
41299
- * when a user disables cookies/localstorage
41300
- * and you attempt to access it.
41301
- *
41302
- * @return {LocalStorage}
41303
- * @api private
41304
- */
41305
-
41306
-
41307
- function localstorage() {
41308
- try {
41309
- // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context
41310
- // The Browser also has localStorage in the global context.
41311
- return localStorage;
41312
- } catch (error) {// Swallow
41313
- // XXX (@Qix-) should we be logging these?
41314
- }
41315
- }
41316
-
41317
- module.exports = __webpack_require__(14878)(exports);
41318
- var formatters = module.exports.formatters;
41319
- /**
41320
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
41321
- */
41322
-
41323
- formatters.j = function (v) {
41324
- try {
41325
- return JSON.stringify(v);
41326
- } catch (error) {
41327
- return '[UnexpectedJSONParseError]: ' + error.message;
41328
- }
41329
- };
41330
-
41331
-
41332
-
41333
- /***/ }),
41334
-
41335
- /***/ 14878:
41336
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
41337
-
41338
- "use strict";
41339
-
41340
-
41341
- /**
41342
- * This is the common logic for both the Node.js and web browser
41343
- * implementations of `debug()`.
41344
- */
41345
- function setup(env) {
41346
- createDebug.debug = createDebug;
41347
- createDebug.default = createDebug;
41348
- createDebug.coerce = coerce;
41349
- createDebug.disable = disable;
41350
- createDebug.enable = enable;
41351
- createDebug.enabled = enabled;
41352
- createDebug.humanize = __webpack_require__(21378);
41353
- Object.keys(env).forEach(function (key) {
41354
- createDebug[key] = env[key];
41355
- });
41356
- /**
41357
- * Active `debug` instances.
41358
- */
41359
-
41360
- createDebug.instances = [];
41361
- /**
41362
- * The currently active debug mode names, and names to skip.
41363
- */
41364
-
41365
- createDebug.names = [];
41366
- createDebug.skips = [];
41367
- /**
41368
- * Map of special "%n" handling functions, for the debug "format" argument.
41369
- *
41370
- * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
41371
- */
41372
-
41373
- createDebug.formatters = {};
41374
- /**
41375
- * Selects a color for a debug namespace
41376
- * @param {String} namespace The namespace string for the for the debug instance to be colored
41377
- * @return {Number|String} An ANSI color code for the given namespace
41378
- * @api private
41379
- */
41380
-
41381
- function selectColor(namespace) {
41382
- var hash = 0;
41383
-
41384
- for (var i = 0; i < namespace.length; i++) {
41385
- hash = (hash << 5) - hash + namespace.charCodeAt(i);
41386
- hash |= 0; // Convert to 32bit integer
41387
- }
41388
-
41389
- return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
41390
- }
41391
-
41392
- createDebug.selectColor = selectColor;
41393
- /**
41394
- * Create a debugger with the given `namespace`.
41395
- *
41396
- * @param {String} namespace
41397
- * @return {Function}
41398
- * @api public
41399
- */
41400
-
41401
- function createDebug(namespace) {
41402
- var prevTime;
41403
-
41404
- function debug() {
41405
- // Disabled?
41406
- if (!debug.enabled) {
41407
- return;
41408
- }
41409
-
41410
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
41411
- args[_key] = arguments[_key];
41412
- }
41413
-
41414
- var self = debug; // Set `diff` timestamp
41415
-
41416
- var curr = Number(new Date());
41417
- var ms = curr - (prevTime || curr);
41418
- self.diff = ms;
41419
- self.prev = prevTime;
41420
- self.curr = curr;
41421
- prevTime = curr;
41422
- args[0] = createDebug.coerce(args[0]);
41423
-
41424
- if (typeof args[0] !== 'string') {
41425
- // Anything else let's inspect with %O
41426
- args.unshift('%O');
41427
- } // Apply any `formatters` transformations
41428
-
41429
-
41430
- var index = 0;
41431
- args[0] = args[0].replace(/%([a-zA-Z%])/g, function (match, format) {
41432
- // If we encounter an escaped % then don't increase the array index
41433
- if (match === '%%') {
41434
- return match;
41435
- }
41436
-
41437
- index++;
41438
- var formatter = createDebug.formatters[format];
41439
-
41440
- if (typeof formatter === 'function') {
41441
- var val = args[index];
41442
- match = formatter.call(self, val); // Now we need to remove `args[index]` since it's inlined in the `format`
41443
-
41444
- args.splice(index, 1);
41445
- index--;
41446
- }
41447
-
41448
- return match;
41449
- }); // Apply env-specific formatting (colors, etc.)
41450
-
41451
- createDebug.formatArgs.call(self, args);
41452
- var logFn = self.log || createDebug.log;
41453
- logFn.apply(self, args);
41454
- }
41455
-
41456
- debug.namespace = namespace;
41457
- debug.enabled = createDebug.enabled(namespace);
41458
- debug.useColors = createDebug.useColors();
41459
- debug.color = selectColor(namespace);
41460
- debug.destroy = destroy;
41461
- debug.extend = extend; // Debug.formatArgs = formatArgs;
41462
- // debug.rawLog = rawLog;
41463
- // env-specific initialization logic for debug instances
41464
-
41465
- if (typeof createDebug.init === 'function') {
41466
- createDebug.init(debug);
41467
- }
41468
-
41469
- createDebug.instances.push(debug);
41470
- return debug;
41471
- }
41472
-
41473
- function destroy() {
41474
- var index = createDebug.instances.indexOf(this);
41475
-
41476
- if (index !== -1) {
41477
- createDebug.instances.splice(index, 1);
41478
- return true;
41479
- }
41480
-
41481
- return false;
41482
- }
41483
-
41484
- function extend(namespace, delimiter) {
41485
- return createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);
41486
- }
41487
- /**
41488
- * Enables a debug mode by namespaces. This can include modes
41489
- * separated by a colon and wildcards.
41490
- *
41491
- * @param {String} namespaces
41492
- * @api public
41493
- */
41494
-
41495
-
41496
- function enable(namespaces) {
41497
- createDebug.save(namespaces);
41498
- createDebug.names = [];
41499
- createDebug.skips = [];
41500
- var i;
41501
- var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
41502
- var len = split.length;
41503
-
41504
- for (i = 0; i < len; i++) {
41505
- if (!split[i]) {
41506
- // ignore empty strings
41507
- continue;
41508
- }
41509
-
41510
- namespaces = split[i].replace(/\*/g, '.*?');
41511
-
41512
- if (namespaces[0] === '-') {
41513
- createDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
41514
- } else {
41515
- createDebug.names.push(new RegExp('^' + namespaces + '$'));
41516
- }
41517
- }
41518
-
41519
- for (i = 0; i < createDebug.instances.length; i++) {
41520
- var instance = createDebug.instances[i];
41521
- instance.enabled = createDebug.enabled(instance.namespace);
41522
- }
41523
- }
41524
- /**
41525
- * Disable debug output.
41526
- *
41527
- * @api public
41528
- */
41529
-
41530
-
41531
- function disable() {
41532
- createDebug.enable('');
41533
- }
41534
- /**
41535
- * Returns true if the given mode name is enabled, false otherwise.
41536
- *
41537
- * @param {String} name
41538
- * @return {Boolean}
41539
- * @api public
41540
- */
41541
-
41542
-
41543
- function enabled(name) {
41544
- if (name[name.length - 1] === '*') {
41545
- return true;
41546
- }
41547
-
41548
- var i;
41549
- var len;
41550
-
41551
- for (i = 0, len = createDebug.skips.length; i < len; i++) {
41552
- if (createDebug.skips[i].test(name)) {
41553
- return false;
41554
- }
41555
- }
41556
-
41557
- for (i = 0, len = createDebug.names.length; i < len; i++) {
41558
- if (createDebug.names[i].test(name)) {
41559
- return true;
41560
- }
41561
- }
41562
-
41563
- return false;
41564
- }
41565
- /**
41566
- * Coerce `val`.
41567
- *
41568
- * @param {Mixed} val
41569
- * @return {Mixed}
41570
- * @api private
41571
- */
41572
-
41573
-
41574
- function coerce(val) {
41575
- if (val instanceof Error) {
41576
- return val.stack || val.message;
41577
- }
41578
-
41579
- return val;
41580
- }
41581
-
41582
- createDebug.enable(createDebug.load());
41583
- return createDebug;
41584
- }
41585
-
41586
- module.exports = setup;
41587
-
41588
-
41589
-
41590
- /***/ }),
41591
-
41592
- /***/ 49064:
41593
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
41594
-
41595
- "use strict";
41596
-
41597
-
41598
- /**
41599
- * Detect Electron renderer / nwjs process, which is node, but we should
41600
- * treat as a browser.
41601
- */
41602
- if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
41603
- module.exports = __webpack_require__(12308);
41604
- } else {
41605
- module.exports = __webpack_require__(39227);
41606
- }
41607
-
41608
-
41609
-
41610
- /***/ }),
41611
-
41612
- /***/ 39227:
41613
- /***/ ((module, exports, __webpack_require__) => {
41614
-
41615
- "use strict";
41616
-
41617
-
41618
- /**
41619
- * Module dependencies.
41620
- */
41621
- var tty = __webpack_require__(33867);
41622
-
41623
- var util = __webpack_require__(31669);
41624
- /**
41625
- * This is the Node.js implementation of `debug()`.
41626
- */
41627
-
41628
-
41629
- exports.init = init;
41630
- exports.log = log;
41631
- exports.formatArgs = formatArgs;
41632
- exports.save = save;
41633
- exports.load = load;
41634
- exports.useColors = useColors;
41635
- /**
41636
- * Colors.
41637
- */
41638
-
41639
- exports.colors = [6, 2, 3, 4, 5, 1];
41640
-
41641
- try {
41642
- // Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)
41643
- // eslint-disable-next-line import/no-extraneous-dependencies
41644
- var supportsColor = __webpack_require__(96328);
41645
-
41646
- if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {
41647
- exports.colors = [20, 21, 26, 27, 32, 33, 38, 39, 40, 41, 42, 43, 44, 45, 56, 57, 62, 63, 68, 69, 74, 75, 76, 77, 78, 79, 80, 81, 92, 93, 98, 99, 112, 113, 128, 129, 134, 135, 148, 149, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 178, 179, 184, 185, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 214, 215, 220, 221];
41648
- }
41649
- } catch (error) {} // Swallow - we only care if `supports-color` is available; it doesn't have to be.
41650
-
41651
- /**
41652
- * Build up the default `inspectOpts` object from the environment variables.
41653
- *
41654
- * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
41655
- */
41656
-
41657
-
41658
- exports.inspectOpts = Object.keys(process.env).filter(function (key) {
41659
- return /^debug_/i.test(key);
41660
- }).reduce(function (obj, key) {
41661
- // Camel-case
41662
- var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function (_, k) {
41663
- return k.toUpperCase();
41664
- }); // Coerce string value into JS value
41665
-
41666
- var val = process.env[key];
41667
-
41668
- if (/^(yes|on|true|enabled)$/i.test(val)) {
41669
- val = true;
41670
- } else if (/^(no|off|false|disabled)$/i.test(val)) {
41671
- val = false;
41672
- } else if (val === 'null') {
41673
- val = null;
41674
- } else {
41675
- val = Number(val);
41676
- }
41677
-
41678
- obj[prop] = val;
41679
- return obj;
41680
- }, {});
41681
- /**
41682
- * Is stdout a TTY? Colored output is enabled when `true`.
41683
- */
41684
-
41685
- function useColors() {
41686
- return 'colors' in exports.inspectOpts ? Boolean(exports.inspectOpts.colors) : tty.isatty(process.stderr.fd);
41687
- }
41688
- /**
41689
- * Adds ANSI color escape codes if enabled.
41690
- *
41691
- * @api public
41692
- */
41693
-
41694
-
41695
- function formatArgs(args) {
41696
- var name = this.namespace,
41697
- useColors = this.useColors;
41698
-
41699
- if (useColors) {
41700
- var c = this.color;
41701
- var colorCode = "\x1B[3" + (c < 8 ? c : '8;5;' + c);
41702
- var prefix = " ".concat(colorCode, ";1m").concat(name, " \x1B[0m");
41703
- args[0] = prefix + args[0].split('\n').join('\n' + prefix);
41704
- args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + "\x1B[0m");
41705
- } else {
41706
- args[0] = getDate() + name + ' ' + args[0];
41707
- }
41708
- }
41709
-
41710
- function getDate() {
41711
- if (exports.inspectOpts.hideDate) {
41712
- return '';
41713
- }
41714
-
41715
- return new Date().toISOString() + ' ';
41716
- }
41717
- /**
41718
- * Invokes `util.format()` with the specified arguments and writes to stderr.
41719
- */
41720
-
41721
-
41722
- function log() {
41723
- return process.stderr.write(util.format.apply(util, arguments) + '\n');
41724
- }
41725
- /**
41726
- * Save `namespaces`.
41727
- *
41728
- * @param {String} namespaces
41729
- * @api private
41730
- */
41731
-
41732
-
41733
- function save(namespaces) {
41734
- if (namespaces) {
41735
- process.env.DEBUG = namespaces;
41736
- } else {
41737
- // If you set a process.env field to null or undefined, it gets cast to the
41738
- // string 'null' or 'undefined'. Just delete instead.
41739
- delete process.env.DEBUG;
41740
- }
41741
- }
41742
- /**
41743
- * Load `namespaces`.
41744
- *
41745
- * @return {String} returns the previously persisted debug modes
41746
- * @api private
41747
- */
41748
-
41749
-
41750
- function load() {
41751
- return process.env.DEBUG;
41752
- }
41753
- /**
41754
- * Init logic for `debug` instances.
41755
- *
41756
- * Create a new `inspectOpts` object in case `useColors` is set
41757
- * differently for a particular `debug` instance.
41758
- */
41759
-
41760
-
41761
- function init(debug) {
41762
- debug.inspectOpts = {};
41763
- var keys = Object.keys(exports.inspectOpts);
41764
-
41765
- for (var i = 0; i < keys.length; i++) {
41766
- debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];
41767
- }
41768
- }
41769
-
41770
- module.exports = __webpack_require__(14878)(exports);
41771
- var formatters = module.exports.formatters;
41772
- /**
41773
- * Map %o to `util.inspect()`, all on a single line.
41774
- */
41775
-
41776
- formatters.o = function (v) {
41777
- this.inspectOpts.colors = this.useColors;
41778
- return util.inspect(v, this.inspectOpts)
41779
- .split('\n')
41780
- .map(function (str) { return str.trim(); })
41781
- .join(' ');
41782
- };
41783
- /**
41784
- * Map %O to `util.inspect()`, allowing multiple lines if needed.
41785
- */
41786
-
41787
-
41788
- formatters.O = function (v) {
41789
- this.inspectOpts.colors = this.useColors;
41790
- return util.inspect(v, this.inspectOpts);
41791
- };
41792
-
41793
-
41794
-
41795
41145
  /***/ }),
41796
41146
 
41797
41147
  /***/ 80279:
@@ -66501,7 +65851,7 @@ var tls = __webpack_require__(4016);
66501
65851
  var url = __webpack_require__(78835);
66502
65852
  var Agent = __webpack_require__(54119);
66503
65853
  var inherits = __webpack_require__(31669).inherits;
66504
- var debug = __webpack_require__(49064)('https-proxy-agent');
65854
+ var debug = __webpack_require__(94219)('https-proxy-agent');
66505
65855
 
66506
65856
  /**
66507
65857
  * Module exports.
@@ -116056,7 +115406,7 @@ function fromRegistry (res) {
116056
115406
  // version, not on the argument so this can't compute that.
116057
115407
  res.saveSpec = null
116058
115408
  res.fetchSpec = spec
116059
- if (!semver) semver = __webpack_require__(54373)
115409
+ if (!semver) semver = __webpack_require__(58223)
116060
115410
  const version = semver.valid(spec, true)
116061
115411
  const range = semver.validRange(spec, true)
116062
115412
  if (version) {
@@ -144130,6 +143480,1496 @@ function coerce(version) {
144130
143480
  }
144131
143481
 
144132
143482
 
143483
+ /***/ }),
143484
+
143485
+ /***/ 58223:
143486
+ /***/ ((module, exports) => {
143487
+
143488
+ exports = module.exports = SemVer
143489
+
143490
+ var debug
143491
+ /* istanbul ignore next */
143492
+ if (typeof process === 'object' &&
143493
+ process.env &&
143494
+ process.env.NODE_DEBUG &&
143495
+ /\bsemver\b/i.test(process.env.NODE_DEBUG)) {
143496
+ debug = function () {
143497
+ var args = Array.prototype.slice.call(arguments, 0)
143498
+ args.unshift('SEMVER')
143499
+ console.log.apply(console, args)
143500
+ }
143501
+ } else {
143502
+ debug = function () {}
143503
+ }
143504
+
143505
+ // Note: this is the semver.org version of the spec that it implements
143506
+ // Not necessarily the package version of this code.
143507
+ exports.SEMVER_SPEC_VERSION = '2.0.0'
143508
+
143509
+ var MAX_LENGTH = 256
143510
+ var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
143511
+ /* istanbul ignore next */ 9007199254740991
143512
+
143513
+ // Max safe segment length for coercion.
143514
+ var MAX_SAFE_COMPONENT_LENGTH = 16
143515
+
143516
+ // The actual regexps go on exports.re
143517
+ var re = exports.re = []
143518
+ var src = exports.src = []
143519
+ var R = 0
143520
+
143521
+ // The following Regular Expressions can be used for tokenizing,
143522
+ // validating, and parsing SemVer version strings.
143523
+
143524
+ // ## Numeric Identifier
143525
+ // A single `0`, or a non-zero digit followed by zero or more digits.
143526
+
143527
+ var NUMERICIDENTIFIER = R++
143528
+ src[NUMERICIDENTIFIER] = '0|[1-9]\\d*'
143529
+ var NUMERICIDENTIFIERLOOSE = R++
143530
+ src[NUMERICIDENTIFIERLOOSE] = '[0-9]+'
143531
+
143532
+ // ## Non-numeric Identifier
143533
+ // Zero or more digits, followed by a letter or hyphen, and then zero or
143534
+ // more letters, digits, or hyphens.
143535
+
143536
+ var NONNUMERICIDENTIFIER = R++
143537
+ src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*'
143538
+
143539
+ // ## Main Version
143540
+ // Three dot-separated numeric identifiers.
143541
+
143542
+ var MAINVERSION = R++
143543
+ src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' +
143544
+ '(' + src[NUMERICIDENTIFIER] + ')\\.' +
143545
+ '(' + src[NUMERICIDENTIFIER] + ')'
143546
+
143547
+ var MAINVERSIONLOOSE = R++
143548
+ src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
143549
+ '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
143550
+ '(' + src[NUMERICIDENTIFIERLOOSE] + ')'
143551
+
143552
+ // ## Pre-release Version Identifier
143553
+ // A numeric identifier, or a non-numeric identifier.
143554
+
143555
+ var PRERELEASEIDENTIFIER = R++
143556
+ src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] +
143557
+ '|' + src[NONNUMERICIDENTIFIER] + ')'
143558
+
143559
+ var PRERELEASEIDENTIFIERLOOSE = R++
143560
+ src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] +
143561
+ '|' + src[NONNUMERICIDENTIFIER] + ')'
143562
+
143563
+ // ## Pre-release Version
143564
+ // Hyphen, followed by one or more dot-separated pre-release version
143565
+ // identifiers.
143566
+
143567
+ var PRERELEASE = R++
143568
+ src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] +
143569
+ '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))'
143570
+
143571
+ var PRERELEASELOOSE = R++
143572
+ src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] +
143573
+ '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))'
143574
+
143575
+ // ## Build Metadata Identifier
143576
+ // Any combination of digits, letters, or hyphens.
143577
+
143578
+ var BUILDIDENTIFIER = R++
143579
+ src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+'
143580
+
143581
+ // ## Build Metadata
143582
+ // Plus sign, followed by one or more period-separated build metadata
143583
+ // identifiers.
143584
+
143585
+ var BUILD = R++
143586
+ src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] +
143587
+ '(?:\\.' + src[BUILDIDENTIFIER] + ')*))'
143588
+
143589
+ // ## Full Version String
143590
+ // A main version, followed optionally by a pre-release version and
143591
+ // build metadata.
143592
+
143593
+ // Note that the only major, minor, patch, and pre-release sections of
143594
+ // the version string are capturing groups. The build metadata is not a
143595
+ // capturing group, because it should not ever be used in version
143596
+ // comparison.
143597
+
143598
+ var FULL = R++
143599
+ var FULLPLAIN = 'v?' + src[MAINVERSION] +
143600
+ src[PRERELEASE] + '?' +
143601
+ src[BUILD] + '?'
143602
+
143603
+ src[FULL] = '^' + FULLPLAIN + '$'
143604
+
143605
+ // like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
143606
+ // also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
143607
+ // common in the npm registry.
143608
+ var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] +
143609
+ src[PRERELEASELOOSE] + '?' +
143610
+ src[BUILD] + '?'
143611
+
143612
+ var LOOSE = R++
143613
+ src[LOOSE] = '^' + LOOSEPLAIN + '$'
143614
+
143615
+ var GTLT = R++
143616
+ src[GTLT] = '((?:<|>)?=?)'
143617
+
143618
+ // Something like "2.*" or "1.2.x".
143619
+ // Note that "x.x" is a valid xRange identifer, meaning "any version"
143620
+ // Only the first item is strictly required.
143621
+ var XRANGEIDENTIFIERLOOSE = R++
143622
+ src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'
143623
+ var XRANGEIDENTIFIER = R++
143624
+ src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*'
143625
+
143626
+ var XRANGEPLAIN = R++
143627
+ src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' +
143628
+ '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
143629
+ '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
143630
+ '(?:' + src[PRERELEASE] + ')?' +
143631
+ src[BUILD] + '?' +
143632
+ ')?)?'
143633
+
143634
+ var XRANGEPLAINLOOSE = R++
143635
+ src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
143636
+ '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
143637
+ '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
143638
+ '(?:' + src[PRERELEASELOOSE] + ')?' +
143639
+ src[BUILD] + '?' +
143640
+ ')?)?'
143641
+
143642
+ var XRANGE = R++
143643
+ src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$'
143644
+ var XRANGELOOSE = R++
143645
+ src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$'
143646
+
143647
+ // Coercion.
143648
+ // Extract anything that could conceivably be a part of a valid semver
143649
+ var COERCE = R++
143650
+ src[COERCE] = '(?:^|[^\\d])' +
143651
+ '(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '})' +
143652
+ '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +
143653
+ '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +
143654
+ '(?:$|[^\\d])'
143655
+
143656
+ // Tilde ranges.
143657
+ // Meaning is "reasonably at or greater than"
143658
+ var LONETILDE = R++
143659
+ src[LONETILDE] = '(?:~>?)'
143660
+
143661
+ var TILDETRIM = R++
143662
+ src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+'
143663
+ re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g')
143664
+ var tildeTrimReplace = '$1~'
143665
+
143666
+ var TILDE = R++
143667
+ src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$'
143668
+ var TILDELOOSE = R++
143669
+ src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$'
143670
+
143671
+ // Caret ranges.
143672
+ // Meaning is "at least and backwards compatible with"
143673
+ var LONECARET = R++
143674
+ src[LONECARET] = '(?:\\^)'
143675
+
143676
+ var CARETTRIM = R++
143677
+ src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+'
143678
+ re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g')
143679
+ var caretTrimReplace = '$1^'
143680
+
143681
+ var CARET = R++
143682
+ src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$'
143683
+ var CARETLOOSE = R++
143684
+ src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$'
143685
+
143686
+ // A simple gt/lt/eq thing, or just "" to indicate "any version"
143687
+ var COMPARATORLOOSE = R++
143688
+ src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$'
143689
+ var COMPARATOR = R++
143690
+ src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$'
143691
+
143692
+ // An expression to strip any whitespace between the gtlt and the thing
143693
+ // it modifies, so that `> 1.2.3` ==> `>1.2.3`
143694
+ var COMPARATORTRIM = R++
143695
+ src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] +
143696
+ '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')'
143697
+
143698
+ // this one has to use the /g flag
143699
+ re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g')
143700
+ var comparatorTrimReplace = '$1$2$3'
143701
+
143702
+ // Something like `1.2.3 - 1.2.4`
143703
+ // Note that these all use the loose form, because they'll be
143704
+ // checked against either the strict or loose comparator form
143705
+ // later.
143706
+ var HYPHENRANGE = R++
143707
+ src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' +
143708
+ '\\s+-\\s+' +
143709
+ '(' + src[XRANGEPLAIN] + ')' +
143710
+ '\\s*$'
143711
+
143712
+ var HYPHENRANGELOOSE = R++
143713
+ src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' +
143714
+ '\\s+-\\s+' +
143715
+ '(' + src[XRANGEPLAINLOOSE] + ')' +
143716
+ '\\s*$'
143717
+
143718
+ // Star ranges basically just allow anything at all.
143719
+ var STAR = R++
143720
+ src[STAR] = '(<|>)?=?\\s*\\*'
143721
+
143722
+ // Compile to actual regexp objects.
143723
+ // All are flag-free, unless they were created above with a flag.
143724
+ for (var i = 0; i < R; i++) {
143725
+ debug(i, src[i])
143726
+ if (!re[i]) {
143727
+ re[i] = new RegExp(src[i])
143728
+ }
143729
+ }
143730
+
143731
+ exports.parse = parse
143732
+ function parse (version, options) {
143733
+ if (!options || typeof options !== 'object') {
143734
+ options = {
143735
+ loose: !!options,
143736
+ includePrerelease: false
143737
+ }
143738
+ }
143739
+
143740
+ if (version instanceof SemVer) {
143741
+ return version
143742
+ }
143743
+
143744
+ if (typeof version !== 'string') {
143745
+ return null
143746
+ }
143747
+
143748
+ if (version.length > MAX_LENGTH) {
143749
+ return null
143750
+ }
143751
+
143752
+ var r = options.loose ? re[LOOSE] : re[FULL]
143753
+ if (!r.test(version)) {
143754
+ return null
143755
+ }
143756
+
143757
+ try {
143758
+ return new SemVer(version, options)
143759
+ } catch (er) {
143760
+ return null
143761
+ }
143762
+ }
143763
+
143764
+ exports.valid = valid
143765
+ function valid (version, options) {
143766
+ var v = parse(version, options)
143767
+ return v ? v.version : null
143768
+ }
143769
+
143770
+ exports.clean = clean
143771
+ function clean (version, options) {
143772
+ var s = parse(version.trim().replace(/^[=v]+/, ''), options)
143773
+ return s ? s.version : null
143774
+ }
143775
+
143776
+ exports.SemVer = SemVer
143777
+
143778
+ function SemVer (version, options) {
143779
+ if (!options || typeof options !== 'object') {
143780
+ options = {
143781
+ loose: !!options,
143782
+ includePrerelease: false
143783
+ }
143784
+ }
143785
+ if (version instanceof SemVer) {
143786
+ if (version.loose === options.loose) {
143787
+ return version
143788
+ } else {
143789
+ version = version.version
143790
+ }
143791
+ } else if (typeof version !== 'string') {
143792
+ throw new TypeError('Invalid Version: ' + version)
143793
+ }
143794
+
143795
+ if (version.length > MAX_LENGTH) {
143796
+ throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')
143797
+ }
143798
+
143799
+ if (!(this instanceof SemVer)) {
143800
+ return new SemVer(version, options)
143801
+ }
143802
+
143803
+ debug('SemVer', version, options)
143804
+ this.options = options
143805
+ this.loose = !!options.loose
143806
+
143807
+ var m = version.trim().match(options.loose ? re[LOOSE] : re[FULL])
143808
+
143809
+ if (!m) {
143810
+ throw new TypeError('Invalid Version: ' + version)
143811
+ }
143812
+
143813
+ this.raw = version
143814
+
143815
+ // these are actually numbers
143816
+ this.major = +m[1]
143817
+ this.minor = +m[2]
143818
+ this.patch = +m[3]
143819
+
143820
+ if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
143821
+ throw new TypeError('Invalid major version')
143822
+ }
143823
+
143824
+ if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
143825
+ throw new TypeError('Invalid minor version')
143826
+ }
143827
+
143828
+ if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
143829
+ throw new TypeError('Invalid patch version')
143830
+ }
143831
+
143832
+ // numberify any prerelease numeric ids
143833
+ if (!m[4]) {
143834
+ this.prerelease = []
143835
+ } else {
143836
+ this.prerelease = m[4].split('.').map(function (id) {
143837
+ if (/^[0-9]+$/.test(id)) {
143838
+ var num = +id
143839
+ if (num >= 0 && num < MAX_SAFE_INTEGER) {
143840
+ return num
143841
+ }
143842
+ }
143843
+ return id
143844
+ })
143845
+ }
143846
+
143847
+ this.build = m[5] ? m[5].split('.') : []
143848
+ this.format()
143849
+ }
143850
+
143851
+ SemVer.prototype.format = function () {
143852
+ this.version = this.major + '.' + this.minor + '.' + this.patch
143853
+ if (this.prerelease.length) {
143854
+ this.version += '-' + this.prerelease.join('.')
143855
+ }
143856
+ return this.version
143857
+ }
143858
+
143859
+ SemVer.prototype.toString = function () {
143860
+ return this.version
143861
+ }
143862
+
143863
+ SemVer.prototype.compare = function (other) {
143864
+ debug('SemVer.compare', this.version, this.options, other)
143865
+ if (!(other instanceof SemVer)) {
143866
+ other = new SemVer(other, this.options)
143867
+ }
143868
+
143869
+ return this.compareMain(other) || this.comparePre(other)
143870
+ }
143871
+
143872
+ SemVer.prototype.compareMain = function (other) {
143873
+ if (!(other instanceof SemVer)) {
143874
+ other = new SemVer(other, this.options)
143875
+ }
143876
+
143877
+ return compareIdentifiers(this.major, other.major) ||
143878
+ compareIdentifiers(this.minor, other.minor) ||
143879
+ compareIdentifiers(this.patch, other.patch)
143880
+ }
143881
+
143882
+ SemVer.prototype.comparePre = function (other) {
143883
+ if (!(other instanceof SemVer)) {
143884
+ other = new SemVer(other, this.options)
143885
+ }
143886
+
143887
+ // NOT having a prerelease is > having one
143888
+ if (this.prerelease.length && !other.prerelease.length) {
143889
+ return -1
143890
+ } else if (!this.prerelease.length && other.prerelease.length) {
143891
+ return 1
143892
+ } else if (!this.prerelease.length && !other.prerelease.length) {
143893
+ return 0
143894
+ }
143895
+
143896
+ var i = 0
143897
+ do {
143898
+ var a = this.prerelease[i]
143899
+ var b = other.prerelease[i]
143900
+ debug('prerelease compare', i, a, b)
143901
+ if (a === undefined && b === undefined) {
143902
+ return 0
143903
+ } else if (b === undefined) {
143904
+ return 1
143905
+ } else if (a === undefined) {
143906
+ return -1
143907
+ } else if (a === b) {
143908
+ continue
143909
+ } else {
143910
+ return compareIdentifiers(a, b)
143911
+ }
143912
+ } while (++i)
143913
+ }
143914
+
143915
+ // preminor will bump the version up to the next minor release, and immediately
143916
+ // down to pre-release. premajor and prepatch work the same way.
143917
+ SemVer.prototype.inc = function (release, identifier) {
143918
+ switch (release) {
143919
+ case 'premajor':
143920
+ this.prerelease.length = 0
143921
+ this.patch = 0
143922
+ this.minor = 0
143923
+ this.major++
143924
+ this.inc('pre', identifier)
143925
+ break
143926
+ case 'preminor':
143927
+ this.prerelease.length = 0
143928
+ this.patch = 0
143929
+ this.minor++
143930
+ this.inc('pre', identifier)
143931
+ break
143932
+ case 'prepatch':
143933
+ // If this is already a prerelease, it will bump to the next version
143934
+ // drop any prereleases that might already exist, since they are not
143935
+ // relevant at this point.
143936
+ this.prerelease.length = 0
143937
+ this.inc('patch', identifier)
143938
+ this.inc('pre', identifier)
143939
+ break
143940
+ // If the input is a non-prerelease version, this acts the same as
143941
+ // prepatch.
143942
+ case 'prerelease':
143943
+ if (this.prerelease.length === 0) {
143944
+ this.inc('patch', identifier)
143945
+ }
143946
+ this.inc('pre', identifier)
143947
+ break
143948
+
143949
+ case 'major':
143950
+ // If this is a pre-major version, bump up to the same major version.
143951
+ // Otherwise increment major.
143952
+ // 1.0.0-5 bumps to 1.0.0
143953
+ // 1.1.0 bumps to 2.0.0
143954
+ if (this.minor !== 0 ||
143955
+ this.patch !== 0 ||
143956
+ this.prerelease.length === 0) {
143957
+ this.major++
143958
+ }
143959
+ this.minor = 0
143960
+ this.patch = 0
143961
+ this.prerelease = []
143962
+ break
143963
+ case 'minor':
143964
+ // If this is a pre-minor version, bump up to the same minor version.
143965
+ // Otherwise increment minor.
143966
+ // 1.2.0-5 bumps to 1.2.0
143967
+ // 1.2.1 bumps to 1.3.0
143968
+ if (this.patch !== 0 || this.prerelease.length === 0) {
143969
+ this.minor++
143970
+ }
143971
+ this.patch = 0
143972
+ this.prerelease = []
143973
+ break
143974
+ case 'patch':
143975
+ // If this is not a pre-release version, it will increment the patch.
143976
+ // If it is a pre-release it will bump up to the same patch version.
143977
+ // 1.2.0-5 patches to 1.2.0
143978
+ // 1.2.0 patches to 1.2.1
143979
+ if (this.prerelease.length === 0) {
143980
+ this.patch++
143981
+ }
143982
+ this.prerelease = []
143983
+ break
143984
+ // This probably shouldn't be used publicly.
143985
+ // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
143986
+ case 'pre':
143987
+ if (this.prerelease.length === 0) {
143988
+ this.prerelease = [0]
143989
+ } else {
143990
+ var i = this.prerelease.length
143991
+ while (--i >= 0) {
143992
+ if (typeof this.prerelease[i] === 'number') {
143993
+ this.prerelease[i]++
143994
+ i = -2
143995
+ }
143996
+ }
143997
+ if (i === -1) {
143998
+ // didn't increment anything
143999
+ this.prerelease.push(0)
144000
+ }
144001
+ }
144002
+ if (identifier) {
144003
+ // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
144004
+ // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
144005
+ if (this.prerelease[0] === identifier) {
144006
+ if (isNaN(this.prerelease[1])) {
144007
+ this.prerelease = [identifier, 0]
144008
+ }
144009
+ } else {
144010
+ this.prerelease = [identifier, 0]
144011
+ }
144012
+ }
144013
+ break
144014
+
144015
+ default:
144016
+ throw new Error('invalid increment argument: ' + release)
144017
+ }
144018
+ this.format()
144019
+ this.raw = this.version
144020
+ return this
144021
+ }
144022
+
144023
+ exports.inc = inc
144024
+ function inc (version, release, loose, identifier) {
144025
+ if (typeof (loose) === 'string') {
144026
+ identifier = loose
144027
+ loose = undefined
144028
+ }
144029
+
144030
+ try {
144031
+ return new SemVer(version, loose).inc(release, identifier).version
144032
+ } catch (er) {
144033
+ return null
144034
+ }
144035
+ }
144036
+
144037
+ exports.diff = diff
144038
+ function diff (version1, version2) {
144039
+ if (eq(version1, version2)) {
144040
+ return null
144041
+ } else {
144042
+ var v1 = parse(version1)
144043
+ var v2 = parse(version2)
144044
+ var prefix = ''
144045
+ if (v1.prerelease.length || v2.prerelease.length) {
144046
+ prefix = 'pre'
144047
+ var defaultResult = 'prerelease'
144048
+ }
144049
+ for (var key in v1) {
144050
+ if (key === 'major' || key === 'minor' || key === 'patch') {
144051
+ if (v1[key] !== v2[key]) {
144052
+ return prefix + key
144053
+ }
144054
+ }
144055
+ }
144056
+ return defaultResult // may be undefined
144057
+ }
144058
+ }
144059
+
144060
+ exports.compareIdentifiers = compareIdentifiers
144061
+
144062
+ var numeric = /^[0-9]+$/
144063
+ function compareIdentifiers (a, b) {
144064
+ var anum = numeric.test(a)
144065
+ var bnum = numeric.test(b)
144066
+
144067
+ if (anum && bnum) {
144068
+ a = +a
144069
+ b = +b
144070
+ }
144071
+
144072
+ return a === b ? 0
144073
+ : (anum && !bnum) ? -1
144074
+ : (bnum && !anum) ? 1
144075
+ : a < b ? -1
144076
+ : 1
144077
+ }
144078
+
144079
+ exports.rcompareIdentifiers = rcompareIdentifiers
144080
+ function rcompareIdentifiers (a, b) {
144081
+ return compareIdentifiers(b, a)
144082
+ }
144083
+
144084
+ exports.major = major
144085
+ function major (a, loose) {
144086
+ return new SemVer(a, loose).major
144087
+ }
144088
+
144089
+ exports.minor = minor
144090
+ function minor (a, loose) {
144091
+ return new SemVer(a, loose).minor
144092
+ }
144093
+
144094
+ exports.patch = patch
144095
+ function patch (a, loose) {
144096
+ return new SemVer(a, loose).patch
144097
+ }
144098
+
144099
+ exports.compare = compare
144100
+ function compare (a, b, loose) {
144101
+ return new SemVer(a, loose).compare(new SemVer(b, loose))
144102
+ }
144103
+
144104
+ exports.compareLoose = compareLoose
144105
+ function compareLoose (a, b) {
144106
+ return compare(a, b, true)
144107
+ }
144108
+
144109
+ exports.rcompare = rcompare
144110
+ function rcompare (a, b, loose) {
144111
+ return compare(b, a, loose)
144112
+ }
144113
+
144114
+ exports.sort = sort
144115
+ function sort (list, loose) {
144116
+ return list.sort(function (a, b) {
144117
+ return exports.compare(a, b, loose)
144118
+ })
144119
+ }
144120
+
144121
+ exports.rsort = rsort
144122
+ function rsort (list, loose) {
144123
+ return list.sort(function (a, b) {
144124
+ return exports.rcompare(a, b, loose)
144125
+ })
144126
+ }
144127
+
144128
+ exports.gt = gt
144129
+ function gt (a, b, loose) {
144130
+ return compare(a, b, loose) > 0
144131
+ }
144132
+
144133
+ exports.lt = lt
144134
+ function lt (a, b, loose) {
144135
+ return compare(a, b, loose) < 0
144136
+ }
144137
+
144138
+ exports.eq = eq
144139
+ function eq (a, b, loose) {
144140
+ return compare(a, b, loose) === 0
144141
+ }
144142
+
144143
+ exports.neq = neq
144144
+ function neq (a, b, loose) {
144145
+ return compare(a, b, loose) !== 0
144146
+ }
144147
+
144148
+ exports.gte = gte
144149
+ function gte (a, b, loose) {
144150
+ return compare(a, b, loose) >= 0
144151
+ }
144152
+
144153
+ exports.lte = lte
144154
+ function lte (a, b, loose) {
144155
+ return compare(a, b, loose) <= 0
144156
+ }
144157
+
144158
+ exports.cmp = cmp
144159
+ function cmp (a, op, b, loose) {
144160
+ switch (op) {
144161
+ case '===':
144162
+ if (typeof a === 'object')
144163
+ a = a.version
144164
+ if (typeof b === 'object')
144165
+ b = b.version
144166
+ return a === b
144167
+
144168
+ case '!==':
144169
+ if (typeof a === 'object')
144170
+ a = a.version
144171
+ if (typeof b === 'object')
144172
+ b = b.version
144173
+ return a !== b
144174
+
144175
+ case '':
144176
+ case '=':
144177
+ case '==':
144178
+ return eq(a, b, loose)
144179
+
144180
+ case '!=':
144181
+ return neq(a, b, loose)
144182
+
144183
+ case '>':
144184
+ return gt(a, b, loose)
144185
+
144186
+ case '>=':
144187
+ return gte(a, b, loose)
144188
+
144189
+ case '<':
144190
+ return lt(a, b, loose)
144191
+
144192
+ case '<=':
144193
+ return lte(a, b, loose)
144194
+
144195
+ default:
144196
+ throw new TypeError('Invalid operator: ' + op)
144197
+ }
144198
+ }
144199
+
144200
+ exports.Comparator = Comparator
144201
+ function Comparator (comp, options) {
144202
+ if (!options || typeof options !== 'object') {
144203
+ options = {
144204
+ loose: !!options,
144205
+ includePrerelease: false
144206
+ }
144207
+ }
144208
+
144209
+ if (comp instanceof Comparator) {
144210
+ if (comp.loose === !!options.loose) {
144211
+ return comp
144212
+ } else {
144213
+ comp = comp.value
144214
+ }
144215
+ }
144216
+
144217
+ if (!(this instanceof Comparator)) {
144218
+ return new Comparator(comp, options)
144219
+ }
144220
+
144221
+ debug('comparator', comp, options)
144222
+ this.options = options
144223
+ this.loose = !!options.loose
144224
+ this.parse(comp)
144225
+
144226
+ if (this.semver === ANY) {
144227
+ this.value = ''
144228
+ } else {
144229
+ this.value = this.operator + this.semver.version
144230
+ }
144231
+
144232
+ debug('comp', this)
144233
+ }
144234
+
144235
+ var ANY = {}
144236
+ Comparator.prototype.parse = function (comp) {
144237
+ var r = this.options.loose ? re[COMPARATORLOOSE] : re[COMPARATOR]
144238
+ var m = comp.match(r)
144239
+
144240
+ if (!m) {
144241
+ throw new TypeError('Invalid comparator: ' + comp)
144242
+ }
144243
+
144244
+ this.operator = m[1]
144245
+ if (this.operator === '=') {
144246
+ this.operator = ''
144247
+ }
144248
+
144249
+ // if it literally is just '>' or '' then allow anything.
144250
+ if (!m[2]) {
144251
+ this.semver = ANY
144252
+ } else {
144253
+ this.semver = new SemVer(m[2], this.options.loose)
144254
+ }
144255
+ }
144256
+
144257
+ Comparator.prototype.toString = function () {
144258
+ return this.value
144259
+ }
144260
+
144261
+ Comparator.prototype.test = function (version) {
144262
+ debug('Comparator.test', version, this.options.loose)
144263
+
144264
+ if (this.semver === ANY) {
144265
+ return true
144266
+ }
144267
+
144268
+ if (typeof version === 'string') {
144269
+ version = new SemVer(version, this.options)
144270
+ }
144271
+
144272
+ return cmp(version, this.operator, this.semver, this.options)
144273
+ }
144274
+
144275
+ Comparator.prototype.intersects = function (comp, options) {
144276
+ if (!(comp instanceof Comparator)) {
144277
+ throw new TypeError('a Comparator is required')
144278
+ }
144279
+
144280
+ if (!options || typeof options !== 'object') {
144281
+ options = {
144282
+ loose: !!options,
144283
+ includePrerelease: false
144284
+ }
144285
+ }
144286
+
144287
+ var rangeTmp
144288
+
144289
+ if (this.operator === '') {
144290
+ rangeTmp = new Range(comp.value, options)
144291
+ return satisfies(this.value, rangeTmp, options)
144292
+ } else if (comp.operator === '') {
144293
+ rangeTmp = new Range(this.value, options)
144294
+ return satisfies(comp.semver, rangeTmp, options)
144295
+ }
144296
+
144297
+ var sameDirectionIncreasing =
144298
+ (this.operator === '>=' || this.operator === '>') &&
144299
+ (comp.operator === '>=' || comp.operator === '>')
144300
+ var sameDirectionDecreasing =
144301
+ (this.operator === '<=' || this.operator === '<') &&
144302
+ (comp.operator === '<=' || comp.operator === '<')
144303
+ var sameSemVer = this.semver.version === comp.semver.version
144304
+ var differentDirectionsInclusive =
144305
+ (this.operator === '>=' || this.operator === '<=') &&
144306
+ (comp.operator === '>=' || comp.operator === '<=')
144307
+ var oppositeDirectionsLessThan =
144308
+ cmp(this.semver, '<', comp.semver, options) &&
144309
+ ((this.operator === '>=' || this.operator === '>') &&
144310
+ (comp.operator === '<=' || comp.operator === '<'))
144311
+ var oppositeDirectionsGreaterThan =
144312
+ cmp(this.semver, '>', comp.semver, options) &&
144313
+ ((this.operator === '<=' || this.operator === '<') &&
144314
+ (comp.operator === '>=' || comp.operator === '>'))
144315
+
144316
+ return sameDirectionIncreasing || sameDirectionDecreasing ||
144317
+ (sameSemVer && differentDirectionsInclusive) ||
144318
+ oppositeDirectionsLessThan || oppositeDirectionsGreaterThan
144319
+ }
144320
+
144321
+ exports.Range = Range
144322
+ function Range (range, options) {
144323
+ if (!options || typeof options !== 'object') {
144324
+ options = {
144325
+ loose: !!options,
144326
+ includePrerelease: false
144327
+ }
144328
+ }
144329
+
144330
+ if (range instanceof Range) {
144331
+ if (range.loose === !!options.loose &&
144332
+ range.includePrerelease === !!options.includePrerelease) {
144333
+ return range
144334
+ } else {
144335
+ return new Range(range.raw, options)
144336
+ }
144337
+ }
144338
+
144339
+ if (range instanceof Comparator) {
144340
+ return new Range(range.value, options)
144341
+ }
144342
+
144343
+ if (!(this instanceof Range)) {
144344
+ return new Range(range, options)
144345
+ }
144346
+
144347
+ this.options = options
144348
+ this.loose = !!options.loose
144349
+ this.includePrerelease = !!options.includePrerelease
144350
+
144351
+ // First, split based on boolean or ||
144352
+ this.raw = range
144353
+ this.set = range.split(/\s*\|\|\s*/).map(function (range) {
144354
+ return this.parseRange(range.trim())
144355
+ }, this).filter(function (c) {
144356
+ // throw out any that are not relevant for whatever reason
144357
+ return c.length
144358
+ })
144359
+
144360
+ if (!this.set.length) {
144361
+ throw new TypeError('Invalid SemVer Range: ' + range)
144362
+ }
144363
+
144364
+ this.format()
144365
+ }
144366
+
144367
+ Range.prototype.format = function () {
144368
+ this.range = this.set.map(function (comps) {
144369
+ return comps.join(' ').trim()
144370
+ }).join('||').trim()
144371
+ return this.range
144372
+ }
144373
+
144374
+ Range.prototype.toString = function () {
144375
+ return this.range
144376
+ }
144377
+
144378
+ Range.prototype.parseRange = function (range) {
144379
+ var loose = this.options.loose
144380
+ range = range.trim()
144381
+ // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
144382
+ var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE]
144383
+ range = range.replace(hr, hyphenReplace)
144384
+ debug('hyphen replace', range)
144385
+ // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
144386
+ range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace)
144387
+ debug('comparator trim', range, re[COMPARATORTRIM])
144388
+
144389
+ // `~ 1.2.3` => `~1.2.3`
144390
+ range = range.replace(re[TILDETRIM], tildeTrimReplace)
144391
+
144392
+ // `^ 1.2.3` => `^1.2.3`
144393
+ range = range.replace(re[CARETTRIM], caretTrimReplace)
144394
+
144395
+ // normalize spaces
144396
+ range = range.split(/\s+/).join(' ')
144397
+
144398
+ // At this point, the range is completely trimmed and
144399
+ // ready to be split into comparators.
144400
+
144401
+ var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR]
144402
+ var set = range.split(' ').map(function (comp) {
144403
+ return parseComparator(comp, this.options)
144404
+ }, this).join(' ').split(/\s+/)
144405
+ if (this.options.loose) {
144406
+ // in loose mode, throw out any that are not valid comparators
144407
+ set = set.filter(function (comp) {
144408
+ return !!comp.match(compRe)
144409
+ })
144410
+ }
144411
+ set = set.map(function (comp) {
144412
+ return new Comparator(comp, this.options)
144413
+ }, this)
144414
+
144415
+ return set
144416
+ }
144417
+
144418
+ Range.prototype.intersects = function (range, options) {
144419
+ if (!(range instanceof Range)) {
144420
+ throw new TypeError('a Range is required')
144421
+ }
144422
+
144423
+ return this.set.some(function (thisComparators) {
144424
+ return thisComparators.every(function (thisComparator) {
144425
+ return range.set.some(function (rangeComparators) {
144426
+ return rangeComparators.every(function (rangeComparator) {
144427
+ return thisComparator.intersects(rangeComparator, options)
144428
+ })
144429
+ })
144430
+ })
144431
+ })
144432
+ }
144433
+
144434
+ // Mostly just for testing and legacy API reasons
144435
+ exports.toComparators = toComparators
144436
+ function toComparators (range, options) {
144437
+ return new Range(range, options).set.map(function (comp) {
144438
+ return comp.map(function (c) {
144439
+ return c.value
144440
+ }).join(' ').trim().split(' ')
144441
+ })
144442
+ }
144443
+
144444
+ // comprised of xranges, tildes, stars, and gtlt's at this point.
144445
+ // already replaced the hyphen ranges
144446
+ // turn into a set of JUST comparators.
144447
+ function parseComparator (comp, options) {
144448
+ debug('comp', comp, options)
144449
+ comp = replaceCarets(comp, options)
144450
+ debug('caret', comp)
144451
+ comp = replaceTildes(comp, options)
144452
+ debug('tildes', comp)
144453
+ comp = replaceXRanges(comp, options)
144454
+ debug('xrange', comp)
144455
+ comp = replaceStars(comp, options)
144456
+ debug('stars', comp)
144457
+ return comp
144458
+ }
144459
+
144460
+ function isX (id) {
144461
+ return !id || id.toLowerCase() === 'x' || id === '*'
144462
+ }
144463
+
144464
+ // ~, ~> --> * (any, kinda silly)
144465
+ // ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0
144466
+ // ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0
144467
+ // ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0
144468
+ // ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0
144469
+ // ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0
144470
+ function replaceTildes (comp, options) {
144471
+ return comp.trim().split(/\s+/).map(function (comp) {
144472
+ return replaceTilde(comp, options)
144473
+ }).join(' ')
144474
+ }
144475
+
144476
+ function replaceTilde (comp, options) {
144477
+ var r = options.loose ? re[TILDELOOSE] : re[TILDE]
144478
+ return comp.replace(r, function (_, M, m, p, pr) {
144479
+ debug('tilde', comp, _, M, m, p, pr)
144480
+ var ret
144481
+
144482
+ if (isX(M)) {
144483
+ ret = ''
144484
+ } else if (isX(m)) {
144485
+ ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'
144486
+ } else if (isX(p)) {
144487
+ // ~1.2 == >=1.2.0 <1.3.0
144488
+ ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'
144489
+ } else if (pr) {
144490
+ debug('replaceTilde pr', pr)
144491
+ ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
144492
+ ' <' + M + '.' + (+m + 1) + '.0'
144493
+ } else {
144494
+ // ~1.2.3 == >=1.2.3 <1.3.0
144495
+ ret = '>=' + M + '.' + m + '.' + p +
144496
+ ' <' + M + '.' + (+m + 1) + '.0'
144497
+ }
144498
+
144499
+ debug('tilde return', ret)
144500
+ return ret
144501
+ })
144502
+ }
144503
+
144504
+ // ^ --> * (any, kinda silly)
144505
+ // ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0
144506
+ // ^2.0, ^2.0.x --> >=2.0.0 <3.0.0
144507
+ // ^1.2, ^1.2.x --> >=1.2.0 <2.0.0
144508
+ // ^1.2.3 --> >=1.2.3 <2.0.0
144509
+ // ^1.2.0 --> >=1.2.0 <2.0.0
144510
+ function replaceCarets (comp, options) {
144511
+ return comp.trim().split(/\s+/).map(function (comp) {
144512
+ return replaceCaret(comp, options)
144513
+ }).join(' ')
144514
+ }
144515
+
144516
+ function replaceCaret (comp, options) {
144517
+ debug('caret', comp, options)
144518
+ var r = options.loose ? re[CARETLOOSE] : re[CARET]
144519
+ return comp.replace(r, function (_, M, m, p, pr) {
144520
+ debug('caret', comp, _, M, m, p, pr)
144521
+ var ret
144522
+
144523
+ if (isX(M)) {
144524
+ ret = ''
144525
+ } else if (isX(m)) {
144526
+ ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'
144527
+ } else if (isX(p)) {
144528
+ if (M === '0') {
144529
+ ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'
144530
+ } else {
144531
+ ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0'
144532
+ }
144533
+ } else if (pr) {
144534
+ debug('replaceCaret pr', pr)
144535
+ if (M === '0') {
144536
+ if (m === '0') {
144537
+ ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
144538
+ ' <' + M + '.' + m + '.' + (+p + 1)
144539
+ } else {
144540
+ ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
144541
+ ' <' + M + '.' + (+m + 1) + '.0'
144542
+ }
144543
+ } else {
144544
+ ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
144545
+ ' <' + (+M + 1) + '.0.0'
144546
+ }
144547
+ } else {
144548
+ debug('no pr')
144549
+ if (M === '0') {
144550
+ if (m === '0') {
144551
+ ret = '>=' + M + '.' + m + '.' + p +
144552
+ ' <' + M + '.' + m + '.' + (+p + 1)
144553
+ } else {
144554
+ ret = '>=' + M + '.' + m + '.' + p +
144555
+ ' <' + M + '.' + (+m + 1) + '.0'
144556
+ }
144557
+ } else {
144558
+ ret = '>=' + M + '.' + m + '.' + p +
144559
+ ' <' + (+M + 1) + '.0.0'
144560
+ }
144561
+ }
144562
+
144563
+ debug('caret return', ret)
144564
+ return ret
144565
+ })
144566
+ }
144567
+
144568
+ function replaceXRanges (comp, options) {
144569
+ debug('replaceXRanges', comp, options)
144570
+ return comp.split(/\s+/).map(function (comp) {
144571
+ return replaceXRange(comp, options)
144572
+ }).join(' ')
144573
+ }
144574
+
144575
+ function replaceXRange (comp, options) {
144576
+ comp = comp.trim()
144577
+ var r = options.loose ? re[XRANGELOOSE] : re[XRANGE]
144578
+ return comp.replace(r, function (ret, gtlt, M, m, p, pr) {
144579
+ debug('xRange', comp, ret, gtlt, M, m, p, pr)
144580
+ var xM = isX(M)
144581
+ var xm = xM || isX(m)
144582
+ var xp = xm || isX(p)
144583
+ var anyX = xp
144584
+
144585
+ if (gtlt === '=' && anyX) {
144586
+ gtlt = ''
144587
+ }
144588
+
144589
+ if (xM) {
144590
+ if (gtlt === '>' || gtlt === '<') {
144591
+ // nothing is allowed
144592
+ ret = '<0.0.0'
144593
+ } else {
144594
+ // nothing is forbidden
144595
+ ret = '*'
144596
+ }
144597
+ } else if (gtlt && anyX) {
144598
+ // we know patch is an x, because we have any x at all.
144599
+ // replace X with 0
144600
+ if (xm) {
144601
+ m = 0
144602
+ }
144603
+ p = 0
144604
+
144605
+ if (gtlt === '>') {
144606
+ // >1 => >=2.0.0
144607
+ // >1.2 => >=1.3.0
144608
+ // >1.2.3 => >= 1.2.4
144609
+ gtlt = '>='
144610
+ if (xm) {
144611
+ M = +M + 1
144612
+ m = 0
144613
+ p = 0
144614
+ } else {
144615
+ m = +m + 1
144616
+ p = 0
144617
+ }
144618
+ } else if (gtlt === '<=') {
144619
+ // <=0.7.x is actually <0.8.0, since any 0.7.x should
144620
+ // pass. Similarly, <=7.x is actually <8.0.0, etc.
144621
+ gtlt = '<'
144622
+ if (xm) {
144623
+ M = +M + 1
144624
+ } else {
144625
+ m = +m + 1
144626
+ }
144627
+ }
144628
+
144629
+ ret = gtlt + M + '.' + m + '.' + p
144630
+ } else if (xm) {
144631
+ ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'
144632
+ } else if (xp) {
144633
+ ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'
144634
+ }
144635
+
144636
+ debug('xRange return', ret)
144637
+
144638
+ return ret
144639
+ })
144640
+ }
144641
+
144642
+ // Because * is AND-ed with everything else in the comparator,
144643
+ // and '' means "any version", just remove the *s entirely.
144644
+ function replaceStars (comp, options) {
144645
+ debug('replaceStars', comp, options)
144646
+ // Looseness is ignored here. star is always as loose as it gets!
144647
+ return comp.trim().replace(re[STAR], '')
144648
+ }
144649
+
144650
+ // This function is passed to string.replace(re[HYPHENRANGE])
144651
+ // M, m, patch, prerelease, build
144652
+ // 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
144653
+ // 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do
144654
+ // 1.2 - 3.4 => >=1.2.0 <3.5.0
144655
+ function hyphenReplace ($0,
144656
+ from, fM, fm, fp, fpr, fb,
144657
+ to, tM, tm, tp, tpr, tb) {
144658
+ if (isX(fM)) {
144659
+ from = ''
144660
+ } else if (isX(fm)) {
144661
+ from = '>=' + fM + '.0.0'
144662
+ } else if (isX(fp)) {
144663
+ from = '>=' + fM + '.' + fm + '.0'
144664
+ } else {
144665
+ from = '>=' + from
144666
+ }
144667
+
144668
+ if (isX(tM)) {
144669
+ to = ''
144670
+ } else if (isX(tm)) {
144671
+ to = '<' + (+tM + 1) + '.0.0'
144672
+ } else if (isX(tp)) {
144673
+ to = '<' + tM + '.' + (+tm + 1) + '.0'
144674
+ } else if (tpr) {
144675
+ to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr
144676
+ } else {
144677
+ to = '<=' + to
144678
+ }
144679
+
144680
+ return (from + ' ' + to).trim()
144681
+ }
144682
+
144683
+ // if ANY of the sets match ALL of its comparators, then pass
144684
+ Range.prototype.test = function (version) {
144685
+ if (!version) {
144686
+ return false
144687
+ }
144688
+
144689
+ if (typeof version === 'string') {
144690
+ version = new SemVer(version, this.options)
144691
+ }
144692
+
144693
+ for (var i = 0; i < this.set.length; i++) {
144694
+ if (testSet(this.set[i], version, this.options)) {
144695
+ return true
144696
+ }
144697
+ }
144698
+ return false
144699
+ }
144700
+
144701
+ function testSet (set, version, options) {
144702
+ for (var i = 0; i < set.length; i++) {
144703
+ if (!set[i].test(version)) {
144704
+ return false
144705
+ }
144706
+ }
144707
+
144708
+ if (version.prerelease.length && !options.includePrerelease) {
144709
+ // Find the set of versions that are allowed to have prereleases
144710
+ // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
144711
+ // That should allow `1.2.3-pr.2` to pass.
144712
+ // However, `1.2.4-alpha.notready` should NOT be allowed,
144713
+ // even though it's within the range set by the comparators.
144714
+ for (i = 0; i < set.length; i++) {
144715
+ debug(set[i].semver)
144716
+ if (set[i].semver === ANY) {
144717
+ continue
144718
+ }
144719
+
144720
+ if (set[i].semver.prerelease.length > 0) {
144721
+ var allowed = set[i].semver
144722
+ if (allowed.major === version.major &&
144723
+ allowed.minor === version.minor &&
144724
+ allowed.patch === version.patch) {
144725
+ return true
144726
+ }
144727
+ }
144728
+ }
144729
+
144730
+ // Version has a -pre, but it's not one of the ones we like.
144731
+ return false
144732
+ }
144733
+
144734
+ return true
144735
+ }
144736
+
144737
+ exports.satisfies = satisfies
144738
+ function satisfies (version, range, options) {
144739
+ try {
144740
+ range = new Range(range, options)
144741
+ } catch (er) {
144742
+ return false
144743
+ }
144744
+ return range.test(version)
144745
+ }
144746
+
144747
+ exports.maxSatisfying = maxSatisfying
144748
+ function maxSatisfying (versions, range, options) {
144749
+ var max = null
144750
+ var maxSV = null
144751
+ try {
144752
+ var rangeObj = new Range(range, options)
144753
+ } catch (er) {
144754
+ return null
144755
+ }
144756
+ versions.forEach(function (v) {
144757
+ if (rangeObj.test(v)) {
144758
+ // satisfies(v, range, options)
144759
+ if (!max || maxSV.compare(v) === -1) {
144760
+ // compare(max, v, true)
144761
+ max = v
144762
+ maxSV = new SemVer(max, options)
144763
+ }
144764
+ }
144765
+ })
144766
+ return max
144767
+ }
144768
+
144769
+ exports.minSatisfying = minSatisfying
144770
+ function minSatisfying (versions, range, options) {
144771
+ var min = null
144772
+ var minSV = null
144773
+ try {
144774
+ var rangeObj = new Range(range, options)
144775
+ } catch (er) {
144776
+ return null
144777
+ }
144778
+ versions.forEach(function (v) {
144779
+ if (rangeObj.test(v)) {
144780
+ // satisfies(v, range, options)
144781
+ if (!min || minSV.compare(v) === 1) {
144782
+ // compare(min, v, true)
144783
+ min = v
144784
+ minSV = new SemVer(min, options)
144785
+ }
144786
+ }
144787
+ })
144788
+ return min
144789
+ }
144790
+
144791
+ exports.minVersion = minVersion
144792
+ function minVersion (range, loose) {
144793
+ range = new Range(range, loose)
144794
+
144795
+ var minver = new SemVer('0.0.0')
144796
+ if (range.test(minver)) {
144797
+ return minver
144798
+ }
144799
+
144800
+ minver = new SemVer('0.0.0-0')
144801
+ if (range.test(minver)) {
144802
+ return minver
144803
+ }
144804
+
144805
+ minver = null
144806
+ for (var i = 0; i < range.set.length; ++i) {
144807
+ var comparators = range.set[i]
144808
+
144809
+ comparators.forEach(function (comparator) {
144810
+ // Clone to avoid manipulating the comparator's semver object.
144811
+ var compver = new SemVer(comparator.semver.version)
144812
+ switch (comparator.operator) {
144813
+ case '>':
144814
+ if (compver.prerelease.length === 0) {
144815
+ compver.patch++
144816
+ } else {
144817
+ compver.prerelease.push(0)
144818
+ }
144819
+ compver.raw = compver.format()
144820
+ /* fallthrough */
144821
+ case '':
144822
+ case '>=':
144823
+ if (!minver || gt(minver, compver)) {
144824
+ minver = compver
144825
+ }
144826
+ break
144827
+ case '<':
144828
+ case '<=':
144829
+ /* Ignore maximum versions */
144830
+ break
144831
+ /* istanbul ignore next */
144832
+ default:
144833
+ throw new Error('Unexpected operation: ' + comparator.operator)
144834
+ }
144835
+ })
144836
+ }
144837
+
144838
+ if (minver && range.test(minver)) {
144839
+ return minver
144840
+ }
144841
+
144842
+ return null
144843
+ }
144844
+
144845
+ exports.validRange = validRange
144846
+ function validRange (range, options) {
144847
+ try {
144848
+ // Return '*' instead of '' so that truthiness works.
144849
+ // This will throw if it's invalid anyway
144850
+ return new Range(range, options).range || '*'
144851
+ } catch (er) {
144852
+ return null
144853
+ }
144854
+ }
144855
+
144856
+ // Determine if version is less than all the versions possible in the range
144857
+ exports.ltr = ltr
144858
+ function ltr (version, range, options) {
144859
+ return outside(version, range, '<', options)
144860
+ }
144861
+
144862
+ // Determine if version is greater than all the versions possible in the range.
144863
+ exports.gtr = gtr
144864
+ function gtr (version, range, options) {
144865
+ return outside(version, range, '>', options)
144866
+ }
144867
+
144868
+ exports.outside = outside
144869
+ function outside (version, range, hilo, options) {
144870
+ version = new SemVer(version, options)
144871
+ range = new Range(range, options)
144872
+
144873
+ var gtfn, ltefn, ltfn, comp, ecomp
144874
+ switch (hilo) {
144875
+ case '>':
144876
+ gtfn = gt
144877
+ ltefn = lte
144878
+ ltfn = lt
144879
+ comp = '>'
144880
+ ecomp = '>='
144881
+ break
144882
+ case '<':
144883
+ gtfn = lt
144884
+ ltefn = gte
144885
+ ltfn = gt
144886
+ comp = '<'
144887
+ ecomp = '<='
144888
+ break
144889
+ default:
144890
+ throw new TypeError('Must provide a hilo val of "<" or ">"')
144891
+ }
144892
+
144893
+ // If it satisifes the range it is not outside
144894
+ if (satisfies(version, range, options)) {
144895
+ return false
144896
+ }
144897
+
144898
+ // From now on, variable terms are as if we're in "gtr" mode.
144899
+ // but note that everything is flipped for the "ltr" function.
144900
+
144901
+ for (var i = 0; i < range.set.length; ++i) {
144902
+ var comparators = range.set[i]
144903
+
144904
+ var high = null
144905
+ var low = null
144906
+
144907
+ comparators.forEach(function (comparator) {
144908
+ if (comparator.semver === ANY) {
144909
+ comparator = new Comparator('>=0.0.0')
144910
+ }
144911
+ high = high || comparator
144912
+ low = low || comparator
144913
+ if (gtfn(comparator.semver, high.semver, options)) {
144914
+ high = comparator
144915
+ } else if (ltfn(comparator.semver, low.semver, options)) {
144916
+ low = comparator
144917
+ }
144918
+ })
144919
+
144920
+ // If the edge version comparator has a operator then our version
144921
+ // isn't outside it
144922
+ if (high.operator === comp || high.operator === ecomp) {
144923
+ return false
144924
+ }
144925
+
144926
+ // If the lowest version comparator has an operator and our version
144927
+ // is less than it then it isn't higher than the range
144928
+ if ((!low.operator || low.operator === comp) &&
144929
+ ltefn(version, low.semver)) {
144930
+ return false
144931
+ } else if (low.operator === ecomp && ltfn(version, low.semver)) {
144932
+ return false
144933
+ }
144934
+ }
144935
+ return true
144936
+ }
144937
+
144938
+ exports.prerelease = prerelease
144939
+ function prerelease (version, options) {
144940
+ var parsed = parse(version, options)
144941
+ return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
144942
+ }
144943
+
144944
+ exports.intersects = intersects
144945
+ function intersects (r1, r2, options) {
144946
+ r1 = new Range(r1, options)
144947
+ r2 = new Range(r2, options)
144948
+ return r1.intersects(r2)
144949
+ }
144950
+
144951
+ exports.coerce = coerce
144952
+ function coerce (version) {
144953
+ if (version instanceof SemVer) {
144954
+ return version
144955
+ }
144956
+
144957
+ if (typeof version !== 'string') {
144958
+ return null
144959
+ }
144960
+
144961
+ var match = version.match(re[COERCE])
144962
+
144963
+ if (match == null) {
144964
+ return null
144965
+ }
144966
+
144967
+ return parse(match[1] +
144968
+ '.' + (match[2] || '0') +
144969
+ '.' + (match[3] || '0'))
144970
+ }
144971
+
144972
+
144133
144973
  /***/ }),
144134
144974
 
144135
144975
  /***/ 41039:
@@ -183435,7 +184275,7 @@ exports.frameworks = [
183435
184275
  description: 'A new Remix app — the result of running `npx create-remix`.',
183436
184276
  website: 'https://remix.run',
183437
184277
  sort: 6,
183438
- useRuntime: { src: 'package.json', use: '@vercel/remix' },
184278
+ useRuntime: { src: 'package.json', use: '@vercel/remix-builder' },
183439
184279
  ignoreRuntimes: ['@vercel/node'],
183440
184280
  detectors: {
183441
184281
  some: [
@@ -189465,11 +190305,11 @@ exports.default = main;
189465
190305
  * then it will be serialized into the `builds.json` manifest file.
189466
190306
  */
189467
190307
  async function doBuild(client, project, buildsJson, cwd, outputDir) {
189468
- const { output } = client;
190308
+ const { localConfigPath, output } = client;
189469
190309
  const workPath = (0, path_1.join)(cwd, project.settings.rootDirectory || '.');
189470
190310
  const [pkg, vercelConfig, nowConfig] = await Promise.all([
189471
190311
  (0, read_json_file_1.default)((0, path_1.join)(workPath, 'package.json')),
189472
- (0, read_json_file_1.default)((0, path_1.join)(workPath, 'vercel.json')),
190312
+ (0, read_json_file_1.default)(localConfigPath || (0, path_1.join)(workPath, 'vercel.json')),
189473
190313
  (0, read_json_file_1.default)((0, path_1.join)(workPath, 'now.json')),
189474
190314
  ]);
189475
190315
  if (pkg instanceof errors_ts_1.CantParseJSONFile)
@@ -189791,7 +190631,9 @@ function expandBuild(files, build) {
189791
190631
  action: 'View Documentation',
189792
190632
  });
189793
190633
  }
189794
- let src = (0, path_1.normalize)(build.src || '**');
190634
+ let src = (0, path_1.normalize)(build.src || '**')
190635
+ .split(path_1.sep)
190636
+ .join('/');
189795
190637
  if (src === '.' || src === './') {
189796
190638
  throw new build_utils_1.NowBuildError({
189797
190639
  code: `invalid_build_specification`,
@@ -196697,6 +197539,7 @@ const main = async () => {
196697
197539
  config,
196698
197540
  authConfig,
196699
197541
  localConfig,
197542
+ localConfigPath,
196700
197543
  argv: process.argv,
196701
197544
  });
196702
197545
  let subcommand;
@@ -196706,7 +197549,10 @@ const main = async () => {
196706
197549
  const targetPathExists = (0, fs_1.existsSync)(targetPath);
196707
197550
  const subcommandExists = GLOBAL_COMMANDS.has(targetOrSubcommand) ||
196708
197551
  commands_1.default.has(targetOrSubcommand);
196709
- if (targetPathExists && subcommandExists && !argv['--cwd']) {
197552
+ if (targetPathExists &&
197553
+ subcommandExists &&
197554
+ !argv['--cwd'] &&
197555
+ !process.env.NOW_BUILDER) {
196710
197556
  output.warn(`Did you mean to deploy the subdirectory "${targetOrSubcommand}"? ` +
196711
197557
  `Use \`vc --cwd ${targetOrSubcommand}\` instead.`);
196712
197558
  }
@@ -197845,7 +198691,7 @@ async function setMonorepoDefaultSettings(cwd, workPath, projectSettings, output
197845
198691
  return;
197846
198692
  }
197847
198693
  const { monorepoManager, ...commands } = result;
197848
- output.log(`Automatically detected ${(0, title_1.default)(monorepoManager)} monorepo manager. Attempting to assign default settings.`);
198694
+ output.log(`Detected ${(0, title_1.default)(monorepoManager)}. Adjusting default settings...`);
197849
198695
  if (commands.buildCommand) {
197850
198696
  setCommand('buildCommand', commands.buildCommand);
197851
198697
  }
@@ -198821,10 +199667,7 @@ function getWildcardCNSForAlias(alias) {
198821
199667
  throw new errors_ts_1.InvalidDomain(alias);
198822
199668
  }
198823
199669
  const secondLevel = subdomain && subdomain.includes('.')
198824
- ? subdomain
198825
- .split('.')
198826
- .slice(1)
198827
- .join('.')
199670
+ ? subdomain.split('.').slice(1).join('.')
198828
199671
  : null;
198829
199672
  const root = secondLevel ? `${secondLevel}.${domain}` : domain;
198830
199673
  return [root, `*.${root}`];
@@ -199147,6 +199990,7 @@ class Client extends events_1.EventEmitter {
199147
199990
  this.output = opts.output;
199148
199991
  this.config = opts.config;
199149
199992
  this.localConfig = opts.localConfig;
199993
+ this.localConfigPath = opts.localConfigPath;
199150
199994
  this.requestIdCounter = 1;
199151
199995
  this._createPromptModule();
199152
199996
  }
@@ -203251,7 +204095,7 @@ exports.default = addDNSRecord;
203251
204095
  Object.defineProperty(exports, "__esModule", ({ value: true }));
203252
204096
  async function deleteDNSRecordById(client, domain, recordId) {
203253
204097
  return client.fetch(`/v3/domains/${encodeURIComponent(domain)}/records/${recordId}`, {
203254
- method: 'DELETE'
204098
+ method: 'DELETE',
203255
204099
  });
203256
204100
  }
203257
204101
  exports.default = deleteDNSRecordById;
@@ -203510,7 +204354,7 @@ function parseAddArgs(args) {
203510
204354
  if (domain && rest.length === 0) {
203511
204355
  return {
203512
204356
  domain,
203513
- data: null
204357
+ data: null,
203514
204358
  };
203515
204359
  }
203516
204360
  const name = args[1] === '@' ? '' : args[1].toString();
@@ -203522,7 +204366,7 @@ function parseAddArgs(args) {
203522
204366
  if (type === 'MX' && args.length === 5) {
203523
204367
  return {
203524
204368
  domain,
203525
- data: { name, type, value, mxPriority: Number(args[4]) }
204369
+ data: { name, type, value, mxPriority: Number(args[4]) },
203526
204370
  };
203527
204371
  }
203528
204372
  if (type === 'SRV' && args.length === 7) {
@@ -203535,9 +204379,9 @@ function parseAddArgs(args) {
203535
204379
  priority: Number(value),
203536
204380
  weight: Number(args[4]),
203537
204381
  port: Number(args[5]),
203538
- target: args[6]
203539
- }
203540
- }
204382
+ target: args[6],
204383
+ },
204384
+ },
203541
204385
  };
203542
204386
  }
203543
204387
  if (args.length === 4) {
@@ -203546,8 +204390,8 @@ function parseAddArgs(args) {
203546
204390
  data: {
203547
204391
  name,
203548
204392
  type,
203549
- value
203550
- }
204393
+ value,
204394
+ },
203551
204395
  };
203552
204396
  }
203553
204397
  return null;
@@ -203631,7 +204475,7 @@ async function getAuthCode(code) {
203631
204475
  }
203632
204476
  return (0, text_1.default)({
203633
204477
  label: `- Transfer auth code: `,
203634
- validateValue: isValidAuthCode
204478
+ validateValue: isValidAuthCode,
203635
204479
  });
203636
204480
  }
203637
204481
  exports.default = getAuthCode;
@@ -205831,7 +206675,7 @@ function formatDNSTable(rows, { extraSpace = '' } = {}) {
205831
206675
  return (0, text_table_1.default)([HEADER, ...rows], {
205832
206676
  align: ['l', 'l', 'l'],
205833
206677
  hsep: ' '.repeat(8),
205834
- stringLength: strlen_1.default
206678
+ stringLength: strlen_1.default,
205835
206679
  }).replace(/^(.*)/gm, `${extraSpace}$1`);
205836
206680
  }
205837
206681
  exports.default = formatDNSTable;
@@ -205863,16 +206707,20 @@ function formatNSTable(intendedNameservers, currentNameservers, { extraSpace = '
205863
206707
  sortedCurrent[i] || chalk_1.default.gray('-'),
205864
206708
  sortedIntended[i] === sortedCurrent[i]
205865
206709
  ? chalk_1.default.green(chars_1.default.tick)
205866
- : chalk_1.default.red(chars_1.default.cross)
206710
+ : chalk_1.default.red(chars_1.default.cross),
205867
206711
  ]);
205868
206712
  }
205869
206713
  return (0, text_table_1.default)([
205870
- [chalk_1.default.gray('Intended Nameservers'), chalk_1.default.gray('Current Nameservers'), ''],
205871
- ...rows
206714
+ [
206715
+ chalk_1.default.gray('Intended Nameservers'),
206716
+ chalk_1.default.gray('Current Nameservers'),
206717
+ '',
206718
+ ],
206719
+ ...rows,
205872
206720
  ], {
205873
206721
  align: ['l', 'l', 'l', 'l'],
205874
206722
  hsep: ' '.repeat(4),
205875
- stringLength: strlen_1.default
206723
+ stringLength: strlen_1.default,
205876
206724
  }).replace(/^(.*)/gm, `${extraSpace}$1`);
205877
206725
  }
205878
206726
  exports.default = formatNSTable;
@@ -206550,7 +207398,7 @@ function getSubcommand(cliArgs, config) {
206550
207398
  }
206551
207399
  return {
206552
207400
  subcommand: config.default,
206553
- args: cliArgs
207401
+ args: cliArgs,
206554
207402
  };
206555
207403
  }
206556
207404
  exports.default = getSubcommand;
@@ -207077,13 +207925,14 @@ class Now extends events_1.default {
207077
207925
  });
207078
207926
  }
207079
207927
  if (error.errorCode === 'BUILD_FAILED' ||
207080
- error.errorCode === 'UNEXPECTED_ERROR') {
207928
+ error.errorCode === 'UNEXPECTED_ERROR' ||
207929
+ error.errorCode.includes('BUILD_UTILS_SPAWN_')) {
207081
207930
  return new errors_ts_1.BuildError({
207082
207931
  message: error.errorMessage,
207083
207932
  meta: {},
207084
207933
  });
207085
207934
  }
207086
- return new Error(error.message);
207935
+ return new Error(error.message || error.errorMessage);
207087
207936
  }
207088
207937
  async listSecrets(next, testWarningFlag) {
207089
207938
  const payload = await this.retry(async (bail) => {
@@ -209245,7 +210094,7 @@ exports.metrics = metrics;
209245
210094
  Object.defineProperty(exports, "__esModule", ({ value: true }));
209246
210095
  exports.NowError = void 0;
209247
210096
  class NowError extends Error {
209248
- constructor({ code, message, meta }) {
210097
+ constructor({ code, message, meta, }) {
209249
210098
  super(message);
209250
210099
  this.code = code;
209251
210100
  this.meta = meta;
@@ -212334,7 +213183,7 @@ module.exports = JSON.parse("[[[0,44],\"disallowed_STD3_valid\"],[[45,46],\"vali
212334
213183
  /***/ ((module) => {
212335
213184
 
212336
213185
  "use strict";
212337
- module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.16.15\",\"preferGlobal\":true,\"license\":\"Apache-2.0\",\"description\":\"The command-line interface for Vercel\",\"homepage\":\"https://vercel.com\",\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/cli\"},\"scripts\":{\"preinstall\":\"node ./scripts/preinstall.js\",\"test\":\"jest --env node --verbose --bail\",\"test-unit\":\"pnpm test test/unit/\",\"test-cli\":\"rimraf test/fixtures/integration && ava test/integration.js --serial --fail-fast --verbose\",\"test-dev\":\"pnpm test test/dev/\",\"coverage\":\"codecov\",\"build\":\"ts-node ./scripts/build.ts\",\"dev\":\"ts-node ./src/index.ts\"},\"bin\":{\"vc\":\"./dist/index.js\",\"vercel\":\"./dist/index.js\"},\"files\":[\"dist\",\"scripts/preinstall.js\"],\"ava\":{\"extensions\":[\"ts\"],\"require\":[\"ts-node/register/transpile-only\",\"esm\"]},\"engines\":{\"node\":\">= 14\"},\"dependencies\":{\"@vercel/build-utils\":\"6.3.4\",\"@vercel/go\":\"2.3.11\",\"@vercel/hydrogen\":\"0.0.57\",\"@vercel/next\":\"3.6.6\",\"@vercel/node\":\"2.9.12\",\"@vercel/python\":\"3.1.53\",\"@vercel/redwood\":\"1.1.9\",\"@vercel/remix\":\"1.6.2\",\"@vercel/ruby\":\"1.3.70\",\"@vercel/static-build\":\"1.3.16\"},\"devDependencies\":{\"@alex_neo/jest-expect-message\":\"1.0.5\",\"@next/env\":\"11.1.2\",\"@sentry/node\":\"5.5.0\",\"@sindresorhus/slugify\":\"0.11.0\",\"@swc/core\":\"1.2.218\",\"@tootallnate/once\":\"1.1.2\",\"@types/async-retry\":\"1.2.1\",\"@types/bytes\":\"3.0.0\",\"@types/chance\":\"1.1.3\",\"@types/debug\":\"0.0.31\",\"@types/dotenv\":\"6.1.1\",\"@types/escape-html\":\"0.0.20\",\"@types/express\":\"4.17.13\",\"@types/fs-extra\":\"9.0.13\",\"@types/glob\":\"7.1.1\",\"@types/http-proxy\":\"1.16.2\",\"@types/ini\":\"1.3.31\",\"@types/inquirer\":\"7.3.1\",\"@types/jest\":\"27.4.1\",\"@types/jest-expect-message\":\"1.0.3\",\"@types/load-json-file\":\"2.0.7\",\"@types/mime-types\":\"2.1.0\",\"@types/minimatch\":\"3.0.3\",\"@types/mri\":\"1.1.0\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"14.18.33\",\"@types/node-fetch\":\"2.5.10\",\"@types/npm-package-arg\":\"6.1.0\",\"@types/pluralize\":\"0.0.29\",\"@types/psl\":\"1.1.0\",\"@types/qs\":\"6.9.7\",\"@types/semver\":\"6.0.1\",\"@types/tar-fs\":\"1.16.1\",\"@types/text-table\":\"0.2.0\",\"@types/title\":\"3.4.1\",\"@types/universal-analytics\":\"0.4.2\",\"@types/update-notifier\":\"5.1.0\",\"@types/which\":\"1.3.2\",\"@types/write-json-file\":\"2.2.1\",\"@types/yauzl-promise\":\"2.1.0\",\"@vercel-internals/types\":\"*\",\"@vercel/client\":\"12.4.4\",\"@vercel/error-utils\":\"1.0.8\",\"@vercel/frameworks\":\"1.3.2\",\"@vercel/fs-detectors\":\"3.8.4\",\"@vercel/fun\":\"1.0.4\",\"@vercel/ncc\":\"0.24.0\",\"@vercel/routing-utils\":\"2.1.10\",\"@zeit/source-map-support\":\"0.6.2\",\"ajv\":\"6.12.2\",\"alpha-sort\":\"2.0.1\",\"ansi-escapes\":\"4.3.2\",\"ansi-regex\":\"5.0.1\",\"arg\":\"5.0.0\",\"async-listen\":\"1.2.0\",\"async-retry\":\"1.1.3\",\"async-sema\":\"2.1.4\",\"ava\":\"2.2.0\",\"bytes\":\"3.0.0\",\"chalk\":\"4.1.0\",\"chance\":\"1.1.7\",\"chokidar\":\"3.3.1\",\"codecov\":\"3.8.2\",\"cpy\":\"7.2.0\",\"date-fns\":\"1.29.0\",\"debug\":\"3.1.0\",\"dot\":\"1.1.3\",\"dotenv\":\"4.0.0\",\"email-validator\":\"1.1.1\",\"epipebomb\":\"1.0.0\",\"escape-html\":\"1.0.3\",\"esm\":\"3.1.4\",\"execa\":\"3.2.0\",\"express\":\"4.17.1\",\"fast-deep-equal\":\"3.1.3\",\"find-up\":\"4.1.0\",\"fs-extra\":\"10.0.0\",\"get-port\":\"5.1.1\",\"git-last-commit\":\"1.0.1\",\"glob\":\"7.1.2\",\"http-proxy\":\"1.18.1\",\"ini\":\"3.0.0\",\"inquirer\":\"7.0.4\",\"is-docker\":\"2.2.1\",\"is-port-reachable\":\"3.1.0\",\"is-url\":\"1.2.2\",\"jaro-winkler\":\"0.2.8\",\"jest-matcher-utils\":\"29.3.1\",\"jsonlines\":\"0.1.1\",\"line-async-iterator\":\"3.0.0\",\"load-json-file\":\"3.0.0\",\"mime-types\":\"2.1.24\",\"minimatch\":\"3.0.4\",\"mri\":\"1.1.5\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"npm-package-arg\":\"6.1.0\",\"open\":\"8.4.0\",\"ora\":\"3.4.0\",\"pcre-to-regexp\":\"1.0.0\",\"pluralize\":\"7.0.0\",\"promisepipe\":\"3.0.0\",\"psl\":\"1.1.31\",\"qr-image\":\"3.2.0\",\"raw-body\":\"2.4.1\",\"rimraf\":\"3.0.2\",\"semver\":\"5.5.0\",\"serve-handler\":\"6.1.1\",\"strip-ansi\":\"6.0.1\",\"stripe\":\"5.1.0\",\"supports-hyperlinks\":\"2.2.0\",\"tar-fs\":\"1.16.3\",\"test-listen\":\"1.1.0\",\"text-table\":\"0.2.0\",\"title\":\"3.4.1\",\"tmp-promise\":\"1.0.3\",\"tree-kill\":\"1.2.2\",\"ts-node\":\"10.9.1\",\"typescript\":\"4.9.4\",\"universal-analytics\":\"0.4.20\",\"utility-types\":\"2.1.0\",\"write-json-file\":\"2.2.0\",\"xdg-app-paths\":\"5.1.0\",\"yauzl-promise\":\"2.1.3\"},\"jest\":{\"preset\":\"ts-jest\",\"globals\":{\"ts-jest\":{\"diagnostics\":false,\"isolatedModules\":true}},\"setupFilesAfterEnv\":[\"@alex_neo/jest-expect-message\"],\"verbose\":false,\"testEnvironment\":\"node\",\"testMatch\":[\"<rootDir>/test/**/*.test.ts\"]}}");
213186
+ module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.18.0\",\"preferGlobal\":true,\"license\":\"Apache-2.0\",\"description\":\"The command-line interface for Vercel\",\"homepage\":\"https://vercel.com\",\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/cli\"},\"scripts\":{\"preinstall\":\"node ./scripts/preinstall.js\",\"test\":\"jest --env node --verbose --bail\",\"test-unit\":\"pnpm test test/unit/\",\"test-cli\":\"rimraf test/fixtures/integration && pnpm test test/integration.test.ts\",\"test-dev\":\"pnpm test test/dev/\",\"coverage\":\"codecov\",\"build\":\"ts-node ./scripts/build.ts\",\"dev\":\"ts-node ./src/index.ts\"},\"bin\":{\"vc\":\"./dist/index.js\",\"vercel\":\"./dist/index.js\"},\"files\":[\"dist\",\"scripts/preinstall.js\"],\"engines\":{\"node\":\">= 14\"},\"dependencies\":{\"@vercel/build-utils\":\"6.5.0\",\"@vercel/go\":\"2.4.1\",\"@vercel/hydrogen\":\"0.0.59\",\"@vercel/next\":\"3.7.0\",\"@vercel/node\":\"2.9.14\",\"@vercel/python\":\"3.1.55\",\"@vercel/redwood\":\"1.1.11\",\"@vercel/remix-builder\":\"1.8.0\",\"@vercel/ruby\":\"1.3.72\",\"@vercel/static-build\":\"1.3.18\"},\"devDependencies\":{\"@alex_neo/jest-expect-message\":\"1.0.5\",\"@next/env\":\"11.1.2\",\"@sentry/node\":\"5.5.0\",\"@sindresorhus/slugify\":\"0.11.0\",\"@swc/core\":\"1.2.218\",\"@tootallnate/once\":\"1.1.2\",\"@types/async-retry\":\"1.2.1\",\"@types/bytes\":\"3.0.0\",\"@types/chance\":\"1.1.3\",\"@types/debug\":\"0.0.31\",\"@types/dotenv\":\"6.1.1\",\"@types/escape-html\":\"0.0.20\",\"@types/express\":\"4.17.13\",\"@types/fs-extra\":\"9.0.13\",\"@types/glob\":\"7.1.1\",\"@types/http-proxy\":\"1.16.2\",\"@types/ini\":\"1.3.31\",\"@types/inquirer\":\"7.3.1\",\"@types/jest\":\"27.4.1\",\"@types/jest-expect-message\":\"1.0.3\",\"@types/load-json-file\":\"2.0.7\",\"@types/mime-types\":\"2.1.0\",\"@types/minimatch\":\"3.0.3\",\"@types/mri\":\"1.1.0\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"14.18.33\",\"@types/node-fetch\":\"2.5.10\",\"@types/npm-package-arg\":\"6.1.0\",\"@types/pluralize\":\"0.0.29\",\"@types/psl\":\"1.1.0\",\"@types/qs\":\"6.9.7\",\"@types/semver\":\"6.0.1\",\"@types/tar-fs\":\"1.16.1\",\"@types/text-table\":\"0.2.0\",\"@types/title\":\"3.4.1\",\"@types/universal-analytics\":\"0.4.2\",\"@types/update-notifier\":\"5.1.0\",\"@types/which\":\"1.3.2\",\"@types/write-json-file\":\"2.2.1\",\"@types/yauzl-promise\":\"2.1.0\",\"@vercel-internals/types\":\"*\",\"@vercel/client\":\"12.4.6\",\"@vercel/error-utils\":\"1.0.8\",\"@vercel/frameworks\":\"1.3.3\",\"@vercel/fs-detectors\":\"3.8.6\",\"@vercel/fun\":\"1.0.4\",\"@vercel/ncc\":\"0.24.0\",\"@vercel/routing-utils\":\"2.1.11\",\"@zeit/source-map-support\":\"0.6.2\",\"ajv\":\"6.12.2\",\"alpha-sort\":\"2.0.1\",\"ansi-escapes\":\"4.3.2\",\"ansi-regex\":\"5.0.1\",\"arg\":\"5.0.0\",\"async-listen\":\"1.2.0\",\"async-retry\":\"1.1.3\",\"async-sema\":\"2.1.4\",\"bytes\":\"3.0.0\",\"chalk\":\"4.1.0\",\"chance\":\"1.1.7\",\"chokidar\":\"3.3.1\",\"codecov\":\"3.8.2\",\"cpy\":\"7.2.0\",\"date-fns\":\"1.29.0\",\"debug\":\"3.1.0\",\"dot\":\"1.1.3\",\"dotenv\":\"4.0.0\",\"email-validator\":\"1.1.1\",\"epipebomb\":\"1.0.0\",\"escape-html\":\"1.0.3\",\"esm\":\"3.1.4\",\"execa\":\"3.2.0\",\"express\":\"4.17.1\",\"fast-deep-equal\":\"3.1.3\",\"find-up\":\"4.1.0\",\"fs-extra\":\"10.0.0\",\"get-port\":\"5.1.1\",\"git-last-commit\":\"1.0.1\",\"glob\":\"7.1.2\",\"http-proxy\":\"1.18.1\",\"ini\":\"3.0.0\",\"inquirer\":\"7.0.4\",\"is-docker\":\"2.2.1\",\"is-port-reachable\":\"3.1.0\",\"is-url\":\"1.2.2\",\"jaro-winkler\":\"0.2.8\",\"jest-matcher-utils\":\"29.3.1\",\"jsonlines\":\"0.1.1\",\"line-async-iterator\":\"3.0.0\",\"load-json-file\":\"3.0.0\",\"mime-types\":\"2.1.24\",\"minimatch\":\"3.0.4\",\"mri\":\"1.1.5\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"npm-package-arg\":\"6.1.0\",\"open\":\"8.4.0\",\"ora\":\"3.4.0\",\"pcre-to-regexp\":\"1.0.0\",\"pluralize\":\"7.0.0\",\"promisepipe\":\"3.0.0\",\"psl\":\"1.1.31\",\"qr-image\":\"3.2.0\",\"raw-body\":\"2.4.1\",\"rimraf\":\"3.0.2\",\"semver\":\"5.5.0\",\"serve-handler\":\"6.1.1\",\"strip-ansi\":\"6.0.1\",\"stripe\":\"5.1.0\",\"supports-hyperlinks\":\"2.2.0\",\"tar-fs\":\"1.16.3\",\"test-listen\":\"1.1.0\",\"text-table\":\"0.2.0\",\"title\":\"3.4.1\",\"tmp-promise\":\"1.0.3\",\"tree-kill\":\"1.2.2\",\"ts-node\":\"10.9.1\",\"typescript\":\"4.9.4\",\"universal-analytics\":\"0.4.20\",\"utility-types\":\"2.1.0\",\"write-json-file\":\"2.2.0\",\"xdg-app-paths\":\"5.1.0\",\"yauzl-promise\":\"2.1.3\"},\"jest\":{\"preset\":\"ts-jest\",\"globals\":{\"ts-jest\":{\"diagnostics\":false,\"isolatedModules\":true}},\"setupFilesAfterEnv\":[\"@alex_neo/jest-expect-message\"],\"verbose\":false,\"testEnvironment\":\"node\",\"testMatch\":[\"<rootDir>/test/**/*.test.ts\"]}}");
212338
213187
 
212339
213188
  /***/ }),
212340
213189
 
@@ -212342,7 +213191,7 @@ module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.16.15\",\"pre
212342
213191
  /***/ ((module) => {
212343
213192
 
212344
213193
  "use strict";
212345
- module.exports = JSON.parse("{\"name\":\"@vercel/client\",\"version\":\"12.4.4\",\"main\":\"dist/index.js\",\"typings\":\"dist/index.d.ts\",\"homepage\":\"https://vercel.com\",\"license\":\"MIT\",\"files\":[\"dist\"],\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/client\"},\"scripts\":{\"build\":\"tsc\",\"test-e2e\":\"pnpm test tests/create-deployment.test.ts tests/create-legacy-deployment.test.ts tests/paths.test.ts\",\"test\":\"jest --env node --verbose --runInBand --bail\",\"test-unit\":\"pnpm test tests/unit.*test.*\"},\"engines\":{\"node\":\">= 14\"},\"devDependencies\":{\"@types/async-retry\":\"1.4.5\",\"@types/fs-extra\":\"7.0.0\",\"@types/jest\":\"27.4.1\",\"@types/minimatch\":\"3.0.5\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"14.18.33\",\"@types/node-fetch\":\"2.5.4\",\"@types/recursive-readdir\":\"2.2.0\",\"@types/tar-fs\":\"1.16.1\",\"typescript\":\"4.3.4\"},\"jest\":{\"preset\":\"ts-jest\",\"testEnvironment\":\"node\",\"verbose\":false,\"setupFilesAfterEnv\":[\"<rootDir>/tests/setup/index.ts\"]},\"dependencies\":{\"@vercel/build-utils\":\"6.3.4\",\"@vercel/routing-utils\":\"2.1.10\",\"@zeit/fetch\":\"5.2.0\",\"async-retry\":\"1.2.3\",\"async-sema\":\"3.0.0\",\"fs-extra\":\"8.0.1\",\"ignore\":\"4.0.6\",\"minimatch\":\"5.0.1\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"querystring\":\"^0.2.0\",\"sleep-promise\":\"8.0.1\",\"tar-fs\":\"1.16.3\"}}");
213194
+ module.exports = JSON.parse("{\"name\":\"@vercel/client\",\"version\":\"12.4.6\",\"main\":\"dist/index.js\",\"typings\":\"dist/index.d.ts\",\"homepage\":\"https://vercel.com\",\"license\":\"MIT\",\"files\":[\"dist\"],\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/client\"},\"scripts\":{\"build\":\"tsc\",\"test-e2e\":\"pnpm test tests/create-deployment.test.ts tests/create-legacy-deployment.test.ts tests/paths.test.ts\",\"test\":\"jest --env node --verbose --runInBand --bail\",\"test-unit\":\"pnpm test tests/unit.*test.*\"},\"engines\":{\"node\":\">= 14\"},\"devDependencies\":{\"@types/async-retry\":\"1.4.5\",\"@types/fs-extra\":\"7.0.0\",\"@types/jest\":\"27.4.1\",\"@types/minimatch\":\"3.0.5\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"14.18.33\",\"@types/node-fetch\":\"2.5.4\",\"@types/recursive-readdir\":\"2.2.0\",\"@types/tar-fs\":\"1.16.1\",\"typescript\":\"4.3.4\"},\"jest\":{\"preset\":\"ts-jest\",\"testEnvironment\":\"node\",\"verbose\":false,\"setupFilesAfterEnv\":[\"<rootDir>/tests/setup/index.ts\"]},\"dependencies\":{\"@vercel/build-utils\":\"6.5.0\",\"@vercel/routing-utils\":\"2.1.11\",\"@zeit/fetch\":\"5.2.0\",\"async-retry\":\"1.2.3\",\"async-sema\":\"3.0.0\",\"fs-extra\":\"8.0.1\",\"ignore\":\"4.0.6\",\"minimatch\":\"5.0.1\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"querystring\":\"^0.2.0\",\"sleep-promise\":\"8.0.1\",\"tar-fs\":\"1.16.3\"}}");
212346
213195
 
212347
213196
  /***/ }),
212348
213197