vercel 28.2.4 → 28.3.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.
- package/dist/index.js +353 -641
- package/package.json +15 -15
package/dist/index.js
CHANGED
@@ -189360,15 +189360,51 @@ exports.fromPromise = function (fn) {
|
|
189360
189360
|
}
|
189361
189361
|
|
189362
189362
|
|
189363
|
+
/***/ }),
|
189364
|
+
|
189365
|
+
/***/ 6548:
|
189366
|
+
/***/ ((__unused_webpack_module, exports) => {
|
189367
|
+
|
189368
|
+
"use strict";
|
189369
|
+
|
189370
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189371
|
+
exports.cloneEnv = void 0;
|
189372
|
+
const { hasOwnProperty } = Object.prototype;
|
189373
|
+
/**
|
189374
|
+
* Clones zero or more objects into a single new object while ensuring that the
|
189375
|
+
* `PATH` environment variable is defined when the `PATH` or `Path` environment
|
189376
|
+
* variables are defined.
|
189377
|
+
*
|
189378
|
+
* @param {Object} [...envs] Objects and/or `process.env` to clone and merge
|
189379
|
+
* @returns {Object} The new object
|
189380
|
+
*/
|
189381
|
+
function cloneEnv(...envs) {
|
189382
|
+
return envs.reduce((obj, env) => {
|
189383
|
+
if (env === undefined || env === null) {
|
189384
|
+
return obj;
|
189385
|
+
}
|
189386
|
+
// the system path is called `Path` on Windows and Node.js will
|
189387
|
+
// automatically return the system path when accessing `PATH`,
|
189388
|
+
// however we lose this proxied value when we destructure and
|
189389
|
+
// thus we must explicitly copy it
|
189390
|
+
if (hasOwnProperty.call(env, 'PATH') || hasOwnProperty.call(env, 'Path')) {
|
189391
|
+
obj.PATH = env.PATH;
|
189392
|
+
}
|
189393
|
+
return Object.assign(obj, env);
|
189394
|
+
}, {});
|
189395
|
+
}
|
189396
|
+
exports.cloneEnv = cloneEnv;
|
189397
|
+
|
189398
|
+
|
189363
189399
|
/***/ }),
|
189364
189400
|
|
189365
189401
|
/***/ 1868:
|
189366
|
-
/***/ ((__unused_webpack_module, exports,
|
189402
|
+
/***/ ((__unused_webpack_module, exports, __nested_webpack_require_834453__) => {
|
189367
189403
|
|
189368
189404
|
"use strict";
|
189369
189405
|
|
189370
189406
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189371
|
-
const get_platform_env_1 =
|
189407
|
+
const get_platform_env_1 = __nested_webpack_require_834453__(4678);
|
189372
189408
|
function debug(message, ...additional) {
|
189373
189409
|
if (get_platform_env_1.getPlatformEnv('BUILDER_DEBUG')) {
|
189374
189410
|
console.log(message, ...additional);
|
@@ -189503,7 +189539,7 @@ function getSuggestion(topLevelProp, additionalProperty) {
|
|
189503
189539
|
/***/ }),
|
189504
189540
|
|
189505
189541
|
/***/ 2397:
|
189506
|
-
/***/ (function(__unused_webpack_module, exports,
|
189542
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_838803__) {
|
189507
189543
|
|
189508
189544
|
"use strict";
|
189509
189545
|
|
@@ -189511,8 +189547,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189511
189547
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
189512
189548
|
};
|
189513
189549
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189514
|
-
const assert_1 = __importDefault(
|
189515
|
-
const into_stream_1 = __importDefault(
|
189550
|
+
const assert_1 = __importDefault(__nested_webpack_require_838803__(2357));
|
189551
|
+
const into_stream_1 = __importDefault(__nested_webpack_require_838803__(6130));
|
189516
189552
|
class FileBlob {
|
189517
189553
|
constructor({ mode = 0o100644, contentType, data }) {
|
189518
189554
|
assert_1.default(typeof mode === 'number');
|
@@ -189547,7 +189583,7 @@ exports.default = FileBlob;
|
|
189547
189583
|
/***/ }),
|
189548
189584
|
|
189549
189585
|
/***/ 9331:
|
189550
|
-
/***/ (function(__unused_webpack_module, exports,
|
189586
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_840321__) {
|
189551
189587
|
|
189552
189588
|
"use strict";
|
189553
189589
|
|
@@ -189555,11 +189591,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189555
189591
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
189556
189592
|
};
|
189557
189593
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189558
|
-
const assert_1 = __importDefault(
|
189559
|
-
const fs_extra_1 = __importDefault(
|
189560
|
-
const multistream_1 = __importDefault(
|
189561
|
-
const path_1 = __importDefault(
|
189562
|
-
const async_sema_1 = __importDefault(
|
189594
|
+
const assert_1 = __importDefault(__nested_webpack_require_840321__(2357));
|
189595
|
+
const fs_extra_1 = __importDefault(__nested_webpack_require_840321__(5392));
|
189596
|
+
const multistream_1 = __importDefault(__nested_webpack_require_840321__(8179));
|
189597
|
+
const path_1 = __importDefault(__nested_webpack_require_840321__(5622));
|
189598
|
+
const async_sema_1 = __importDefault(__nested_webpack_require_840321__(5758));
|
189563
189599
|
const semaToPreventEMFILE = new async_sema_1.default(20);
|
189564
189600
|
class FileFsRef {
|
189565
189601
|
constructor({ mode = 0o100644, contentType, fsPath }) {
|
@@ -189625,7 +189661,7 @@ exports.default = FileFsRef;
|
|
189625
189661
|
/***/ }),
|
189626
189662
|
|
189627
189663
|
/***/ 5187:
|
189628
|
-
/***/ (function(__unused_webpack_module, exports,
|
189664
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_843125__) {
|
189629
189665
|
|
189630
189666
|
"use strict";
|
189631
189667
|
|
@@ -189633,11 +189669,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189633
189669
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
189634
189670
|
};
|
189635
189671
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189636
|
-
const assert_1 = __importDefault(
|
189637
|
-
const node_fetch_1 = __importDefault(
|
189638
|
-
const multistream_1 = __importDefault(
|
189639
|
-
const async_retry_1 = __importDefault(
|
189640
|
-
const async_sema_1 = __importDefault(
|
189672
|
+
const assert_1 = __importDefault(__nested_webpack_require_843125__(2357));
|
189673
|
+
const node_fetch_1 = __importDefault(__nested_webpack_require_843125__(2197));
|
189674
|
+
const multistream_1 = __importDefault(__nested_webpack_require_843125__(8179));
|
189675
|
+
const async_retry_1 = __importDefault(__nested_webpack_require_843125__(3691));
|
189676
|
+
const async_sema_1 = __importDefault(__nested_webpack_require_843125__(5758));
|
189641
189677
|
const semaToDownloadFromS3 = new async_sema_1.default(5);
|
189642
189678
|
class BailableError extends Error {
|
189643
189679
|
constructor(...args) {
|
@@ -189718,7 +189754,7 @@ exports.default = FileRef;
|
|
189718
189754
|
/***/ }),
|
189719
189755
|
|
189720
189756
|
/***/ 1611:
|
189721
|
-
/***/ (function(__unused_webpack_module, exports,
|
189757
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_846526__) {
|
189722
189758
|
|
189723
189759
|
"use strict";
|
189724
189760
|
|
@@ -189727,11 +189763,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189727
189763
|
};
|
189728
189764
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189729
189765
|
exports.downloadFile = exports.isSymbolicLink = void 0;
|
189730
|
-
const path_1 = __importDefault(
|
189731
|
-
const debug_1 = __importDefault(
|
189732
|
-
const file_fs_ref_1 = __importDefault(
|
189733
|
-
const fs_extra_1 =
|
189734
|
-
const stream_to_buffer_1 = __importDefault(
|
189766
|
+
const path_1 = __importDefault(__nested_webpack_require_846526__(5622));
|
189767
|
+
const debug_1 = __importDefault(__nested_webpack_require_846526__(1868));
|
189768
|
+
const file_fs_ref_1 = __importDefault(__nested_webpack_require_846526__(9331));
|
189769
|
+
const fs_extra_1 = __nested_webpack_require_846526__(5392);
|
189770
|
+
const stream_to_buffer_1 = __importDefault(__nested_webpack_require_846526__(2560));
|
189735
189771
|
const S_IFMT = 61440; /* 0170000 type of file */
|
189736
189772
|
const S_IFLNK = 40960; /* 0120000 symbolic link */
|
189737
189773
|
function isSymbolicLink(mode) {
|
@@ -189822,14 +189858,14 @@ exports.default = download;
|
|
189822
189858
|
/***/ }),
|
189823
189859
|
|
189824
189860
|
/***/ 3838:
|
189825
|
-
/***/ ((__unused_webpack_module, exports,
|
189861
|
+
/***/ ((__unused_webpack_module, exports, __nested_webpack_require_850961__) => {
|
189826
189862
|
|
189827
189863
|
"use strict";
|
189828
189864
|
|
189829
189865
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189830
|
-
const path_1 =
|
189831
|
-
const os_1 =
|
189832
|
-
const fs_extra_1 =
|
189866
|
+
const path_1 = __nested_webpack_require_850961__(5622);
|
189867
|
+
const os_1 = __nested_webpack_require_850961__(2087);
|
189868
|
+
const fs_extra_1 = __nested_webpack_require_850961__(5392);
|
189833
189869
|
async function getWritableDirectory() {
|
189834
189870
|
const name = Math.floor(Math.random() * 0x7fffffff).toString(16);
|
189835
189871
|
const directory = path_1.join(os_1.tmpdir(), name);
|
@@ -189842,7 +189878,7 @@ exports.default = getWritableDirectory;
|
|
189842
189878
|
/***/ }),
|
189843
189879
|
|
189844
189880
|
/***/ 4240:
|
189845
|
-
/***/ (function(__unused_webpack_module, exports,
|
189881
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_851541__) {
|
189846
189882
|
|
189847
189883
|
"use strict";
|
189848
189884
|
|
@@ -189850,13 +189886,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189850
189886
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
189851
189887
|
};
|
189852
189888
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189853
|
-
const path_1 = __importDefault(
|
189854
|
-
const assert_1 = __importDefault(
|
189855
|
-
const glob_1 = __importDefault(
|
189856
|
-
const util_1 =
|
189857
|
-
const fs_extra_1 =
|
189858
|
-
const normalize_path_1 =
|
189859
|
-
const file_fs_ref_1 = __importDefault(
|
189889
|
+
const path_1 = __importDefault(__nested_webpack_require_851541__(5622));
|
189890
|
+
const assert_1 = __importDefault(__nested_webpack_require_851541__(2357));
|
189891
|
+
const glob_1 = __importDefault(__nested_webpack_require_851541__(1104));
|
189892
|
+
const util_1 = __nested_webpack_require_851541__(1669);
|
189893
|
+
const fs_extra_1 = __nested_webpack_require_851541__(5392);
|
189894
|
+
const normalize_path_1 = __nested_webpack_require_851541__(6261);
|
189895
|
+
const file_fs_ref_1 = __importDefault(__nested_webpack_require_851541__(9331));
|
189860
189896
|
const vanillaGlob = util_1.promisify(glob_1.default);
|
189861
189897
|
async function glob(pattern, opts, mountpoint) {
|
189862
189898
|
let options;
|
@@ -189903,7 +189939,7 @@ exports.default = glob;
|
|
189903
189939
|
/***/ }),
|
189904
189940
|
|
189905
189941
|
/***/ 7903:
|
189906
|
-
/***/ (function(__unused_webpack_module, exports,
|
189942
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_853762__) {
|
189907
189943
|
|
189908
189944
|
"use strict";
|
189909
189945
|
|
@@ -189912,9 +189948,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189912
189948
|
};
|
189913
189949
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
189914
189950
|
exports.getSupportedNodeVersion = exports.getDiscontinuedNodeVersions = exports.getLatestNodeVersion = void 0;
|
189915
|
-
const semver_1 =
|
189916
|
-
const errors_1 =
|
189917
|
-
const debug_1 = __importDefault(
|
189951
|
+
const semver_1 = __nested_webpack_require_853762__(2879);
|
189952
|
+
const errors_1 = __nested_webpack_require_853762__(3983);
|
189953
|
+
const debug_1 = __importDefault(__nested_webpack_require_853762__(1868));
|
189918
189954
|
const allOptions = [
|
189919
189955
|
{ major: 16, range: '16.x', runtime: 'nodejs16.x' },
|
189920
189956
|
{ major: 14, range: '14.x', runtime: 'nodejs14.x' },
|
@@ -190013,7 +190049,7 @@ exports.normalizePath = normalizePath;
|
|
190013
190049
|
/***/ }),
|
190014
190050
|
|
190015
190051
|
/***/ 7792:
|
190016
|
-
/***/ (function(__unused_webpack_module, exports,
|
190052
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_857616__) {
|
190017
190053
|
|
190018
190054
|
"use strict";
|
190019
190055
|
|
@@ -190022,9 +190058,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
190022
190058
|
};
|
190023
190059
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190024
190060
|
exports.readConfigFile = void 0;
|
190025
|
-
const js_yaml_1 = __importDefault(
|
190026
|
-
const toml_1 = __importDefault(
|
190027
|
-
const fs_extra_1 =
|
190061
|
+
const js_yaml_1 = __importDefault(__nested_webpack_require_857616__(6540));
|
190062
|
+
const toml_1 = __importDefault(__nested_webpack_require_857616__(9434));
|
190063
|
+
const fs_extra_1 = __nested_webpack_require_857616__(5392);
|
190028
190064
|
async function readFileOrNull(file) {
|
190029
190065
|
try {
|
190030
190066
|
const data = await fs_extra_1.readFile(file);
|
@@ -190079,7 +190115,7 @@ exports.default = rename;
|
|
190079
190115
|
/***/ }),
|
190080
190116
|
|
190081
190117
|
/***/ 1442:
|
190082
|
-
/***/ (function(__unused_webpack_module, exports,
|
190118
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_859409__) {
|
190083
190119
|
|
190084
190120
|
"use strict";
|
190085
190121
|
|
@@ -190088,17 +190124,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
190088
190124
|
};
|
190089
190125
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190090
190126
|
exports.installDependencies = exports.getScriptName = exports.runPipInstall = exports.runBundleInstall = exports.runPackageJsonScript = exports.runCustomInstallCommand = exports.getEnvForPackageManager = exports.runNpmInstall = exports.walkParentDirs = exports.scanParentDirs = exports.getNodeVersion = exports.getSpawnOptions = exports.runShellScript = exports.getNodeBinPath = exports.execCommand = exports.spawnCommand = exports.execAsync = exports.spawnAsync = void 0;
|
190091
|
-
const assert_1 = __importDefault(
|
190092
|
-
const fs_extra_1 = __importDefault(
|
190093
|
-
const path_1 = __importDefault(
|
190094
|
-
const async_sema_1 = __importDefault(
|
190095
|
-
const cross_spawn_1 = __importDefault(
|
190096
|
-
const semver_1 =
|
190097
|
-
const util_1 =
|
190098
|
-
const debug_1 = __importDefault(
|
190099
|
-
const errors_1 =
|
190100
|
-
const node_version_1 =
|
190101
|
-
const read_config_file_1 =
|
190127
|
+
const assert_1 = __importDefault(__nested_webpack_require_859409__(2357));
|
190128
|
+
const fs_extra_1 = __importDefault(__nested_webpack_require_859409__(5392));
|
190129
|
+
const path_1 = __importDefault(__nested_webpack_require_859409__(5622));
|
190130
|
+
const async_sema_1 = __importDefault(__nested_webpack_require_859409__(5758));
|
190131
|
+
const cross_spawn_1 = __importDefault(__nested_webpack_require_859409__(7618));
|
190132
|
+
const semver_1 = __nested_webpack_require_859409__(2879);
|
190133
|
+
const util_1 = __nested_webpack_require_859409__(1669);
|
190134
|
+
const debug_1 = __importDefault(__nested_webpack_require_859409__(1868));
|
190135
|
+
const errors_1 = __nested_webpack_require_859409__(3983);
|
190136
|
+
const node_version_1 = __nested_webpack_require_859409__(7903);
|
190137
|
+
const read_config_file_1 = __nested_webpack_require_859409__(7792);
|
190138
|
+
const clone_env_1 = __nested_webpack_require_859409__(6548);
|
190102
190139
|
// Only allow one `runNpmInstall()` invocation to run concurrently
|
190103
190140
|
const runNpmInstallSema = new async_sema_1.default(1);
|
190104
190141
|
function spawnAsync(command, args, opts = {}) {
|
@@ -190207,7 +190244,7 @@ async function runShellScript(fsPath, args = [], spawnOpts) {
|
|
190207
190244
|
exports.runShellScript = runShellScript;
|
190208
190245
|
function getSpawnOptions(meta, nodeVersion) {
|
190209
190246
|
const opts = {
|
190210
|
-
env:
|
190247
|
+
env: clone_env_1.cloneEnv(process.env),
|
190211
190248
|
};
|
190212
190249
|
if (!meta.isDev) {
|
190213
190250
|
let found = false;
|
@@ -190378,7 +190415,7 @@ async function runNpmInstall(destPath, args = [], spawnOpts, meta, nodeVersion)
|
|
190378
190415
|
console.log('Installing dependencies...');
|
190379
190416
|
debug_1.default(`Installing to ${destPath}`);
|
190380
190417
|
const opts = { cwd: destPath, ...spawnOpts };
|
190381
|
-
const env =
|
190418
|
+
const env = clone_env_1.cloneEnv(opts.env || process.env);
|
190382
190419
|
delete env.NODE_ENV;
|
190383
190420
|
opts.env = getEnvForPackageManager({
|
190384
190421
|
cliType,
|
@@ -190392,6 +190429,17 @@ async function runNpmInstall(destPath, args = [], spawnOpts, meta, nodeVersion)
|
|
190392
190429
|
commandArgs = args
|
190393
190430
|
.filter(a => a !== '--prefer-offline')
|
190394
190431
|
.concat(['install', '--no-audit', '--unsafe-perm']);
|
190432
|
+
if (nodeVersion?.major === 16 &&
|
190433
|
+
spawnOpts?.env?.VERCEL_NPM_LEGACY_PEER_DEPS === '1' &&
|
190434
|
+
spawnOpts?.env?.ENABLE_EXPERIMENTAL_COREPACK !== '1') {
|
190435
|
+
// Starting in npm@8.6.0, if you ran `npm install --legacy-peer-deps`,
|
190436
|
+
// and then later ran `npm install`, it would fail. So the only way
|
190437
|
+
// to safely upgrade npm from npm@8.5.0 is to set this flag. The docs
|
190438
|
+
// say this flag is not recommended so its is behind a feature flag
|
190439
|
+
// so we can remove it in node@18, which can introduce breaking changes.
|
190440
|
+
// See https://docs.npmjs.com/cli/v8/using-npm/config#legacy-peer-deps
|
190441
|
+
commandArgs.push('--legacy-peer-deps');
|
190442
|
+
}
|
190395
190443
|
}
|
190396
190444
|
else if (cliType === 'pnpm') {
|
190397
190445
|
// PNPM's install command is similar to NPM's but without the audit nonsense
|
@@ -190485,10 +190533,7 @@ async function runPackageJsonScript(destPath, scriptNames, spawnOpts) {
|
|
190485
190533
|
cliType,
|
190486
190534
|
lockfileVersion,
|
190487
190535
|
nodeVersion: undefined,
|
190488
|
-
env:
|
190489
|
-
...process.env,
|
190490
|
-
...spawnOpts?.env,
|
190491
|
-
},
|
190536
|
+
env: clone_env_1.cloneEnv(process.env, spawnOpts?.env),
|
190492
190537
|
}),
|
190493
190538
|
};
|
190494
190539
|
if (cliType === 'npm') {
|
@@ -190547,7 +190592,7 @@ exports.installDependencies = util_1.deprecate(runNpmInstall, 'installDependenci
|
|
190547
190592
|
/***/ }),
|
190548
190593
|
|
190549
190594
|
/***/ 2560:
|
190550
|
-
/***/ (function(__unused_webpack_module, exports,
|
190595
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_878974__) {
|
190551
190596
|
|
190552
190597
|
"use strict";
|
190553
190598
|
|
@@ -190555,7 +190600,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
190555
190600
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
190556
190601
|
};
|
190557
190602
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190558
|
-
const end_of_stream_1 = __importDefault(
|
190603
|
+
const end_of_stream_1 = __importDefault(__nested_webpack_require_878974__(687));
|
190559
190604
|
function streamToBuffer(stream) {
|
190560
190605
|
return new Promise((resolve, reject) => {
|
190561
190606
|
const buffers = [];
|
@@ -190584,7 +190629,7 @@ exports.default = streamToBuffer;
|
|
190584
190629
|
/***/ }),
|
190585
190630
|
|
190586
190631
|
/***/ 1148:
|
190587
|
-
/***/ (function(__unused_webpack_module, exports,
|
190632
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_880042__) {
|
190588
190633
|
|
190589
190634
|
"use strict";
|
190590
190635
|
|
@@ -190592,9 +190637,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
190592
190637
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
190593
190638
|
};
|
190594
190639
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190595
|
-
const path_1 = __importDefault(
|
190596
|
-
const fs_extra_1 = __importDefault(
|
190597
|
-
const ignore_1 = __importDefault(
|
190640
|
+
const path_1 = __importDefault(__nested_webpack_require_880042__(5622));
|
190641
|
+
const fs_extra_1 = __importDefault(__nested_webpack_require_880042__(5392));
|
190642
|
+
const ignore_1 = __importDefault(__nested_webpack_require_880042__(3556));
|
190598
190643
|
function isCodedError(error) {
|
190599
190644
|
return (error !== null &&
|
190600
190645
|
error !== undefined &&
|
@@ -190651,13 +190696,13 @@ exports.default = default_1;
|
|
190651
190696
|
/***/ }),
|
190652
190697
|
|
190653
190698
|
/***/ 4678:
|
190654
|
-
/***/ ((__unused_webpack_module, exports,
|
190699
|
+
/***/ ((__unused_webpack_module, exports, __nested_webpack_require_882416__) => {
|
190655
190700
|
|
190656
190701
|
"use strict";
|
190657
190702
|
|
190658
190703
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190659
190704
|
exports.getPlatformEnv = void 0;
|
190660
|
-
const errors_1 =
|
190705
|
+
const errors_1 = __nested_webpack_require_882416__(3983);
|
190661
190706
|
/**
|
190662
190707
|
* Helper function to support both `VERCEL_` and legacy `NOW_` env vars.
|
190663
190708
|
* Throws an error if *both* env vars are defined.
|
@@ -190721,7 +190766,7 @@ exports.getPrefixedEnvVars = getPrefixedEnvVars;
|
|
190721
190766
|
/***/ }),
|
190722
190767
|
|
190723
190768
|
/***/ 2855:
|
190724
|
-
/***/ (function(__unused_webpack_module, exports,
|
190769
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_884675__) {
|
190725
190770
|
|
190726
190771
|
"use strict";
|
190727
190772
|
|
@@ -190751,32 +190796,32 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
190751
190796
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
190752
190797
|
};
|
190753
190798
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190754
|
-
exports.normalizePath = exports.readConfigFile = exports.EdgeFunction = exports.getIgnoreFilter = exports.scanParentDirs = exports.getLambdaOptionsFromFunction = exports.isSymbolicLink = exports.debug = exports.streamToBuffer = exports.getPrefixedEnvVars = exports.getPlatformEnv = exports.getSpawnOptions = exports.getDiscontinuedNodeVersions = exports.getLatestNodeVersion = exports.getNodeVersion = exports.getEnvForPackageManager = exports.runCustomInstallCommand = exports.runShellScript = exports.runPipInstall = exports.runBundleInstall = exports.runNpmInstall = exports.getNodeBinPath = exports.walkParentDirs = exports.spawnCommand = exports.execCommand = exports.runPackageJsonScript = exports.installDependencies = exports.getScriptName = exports.spawnAsync = exports.execAsync = exports.rename = exports.glob = exports.getWriteableDirectory = exports.downloadFile = exports.download = exports.Prerender = exports.createLambda = exports.NodejsLambda = exports.Lambda = exports.FileRef = exports.FileFsRef = exports.FileBlob = void 0;
|
190755
|
-
const file_blob_1 = __importDefault(
|
190799
|
+
exports.normalizePath = exports.readConfigFile = exports.EdgeFunction = exports.cloneEnv = exports.getIgnoreFilter = exports.scanParentDirs = exports.getLambdaOptionsFromFunction = exports.isSymbolicLink = exports.debug = exports.streamToBuffer = exports.getPrefixedEnvVars = exports.getPlatformEnv = exports.getSpawnOptions = exports.getDiscontinuedNodeVersions = exports.getLatestNodeVersion = exports.getNodeVersion = exports.getEnvForPackageManager = exports.runCustomInstallCommand = exports.runShellScript = exports.runPipInstall = exports.runBundleInstall = exports.runNpmInstall = exports.getNodeBinPath = exports.walkParentDirs = exports.spawnCommand = exports.execCommand = exports.runPackageJsonScript = exports.installDependencies = exports.getScriptName = exports.spawnAsync = exports.execAsync = exports.rename = exports.glob = exports.getWriteableDirectory = exports.downloadFile = exports.download = exports.Prerender = exports.createLambda = exports.NodejsLambda = exports.Lambda = exports.FileRef = exports.FileFsRef = exports.FileBlob = void 0;
|
190800
|
+
const file_blob_1 = __importDefault(__nested_webpack_require_884675__(2397));
|
190756
190801
|
exports.FileBlob = file_blob_1.default;
|
190757
|
-
const file_fs_ref_1 = __importDefault(
|
190802
|
+
const file_fs_ref_1 = __importDefault(__nested_webpack_require_884675__(9331));
|
190758
190803
|
exports.FileFsRef = file_fs_ref_1.default;
|
190759
|
-
const file_ref_1 = __importDefault(
|
190804
|
+
const file_ref_1 = __importDefault(__nested_webpack_require_884675__(5187));
|
190760
190805
|
exports.FileRef = file_ref_1.default;
|
190761
|
-
const lambda_1 =
|
190806
|
+
const lambda_1 = __nested_webpack_require_884675__(6721);
|
190762
190807
|
Object.defineProperty(exports, "Lambda", ({ enumerable: true, get: function () { return lambda_1.Lambda; } }));
|
190763
190808
|
Object.defineProperty(exports, "createLambda", ({ enumerable: true, get: function () { return lambda_1.createLambda; } }));
|
190764
190809
|
Object.defineProperty(exports, "getLambdaOptionsFromFunction", ({ enumerable: true, get: function () { return lambda_1.getLambdaOptionsFromFunction; } }));
|
190765
|
-
const nodejs_lambda_1 =
|
190810
|
+
const nodejs_lambda_1 = __nested_webpack_require_884675__(7049);
|
190766
190811
|
Object.defineProperty(exports, "NodejsLambda", ({ enumerable: true, get: function () { return nodejs_lambda_1.NodejsLambda; } }));
|
190767
|
-
const prerender_1 =
|
190812
|
+
const prerender_1 = __nested_webpack_require_884675__(2850);
|
190768
190813
|
Object.defineProperty(exports, "Prerender", ({ enumerable: true, get: function () { return prerender_1.Prerender; } }));
|
190769
|
-
const download_1 = __importStar(
|
190814
|
+
const download_1 = __importStar(__nested_webpack_require_884675__(1611));
|
190770
190815
|
exports.download = download_1.default;
|
190771
190816
|
Object.defineProperty(exports, "downloadFile", ({ enumerable: true, get: function () { return download_1.downloadFile; } }));
|
190772
190817
|
Object.defineProperty(exports, "isSymbolicLink", ({ enumerable: true, get: function () { return download_1.isSymbolicLink; } }));
|
190773
|
-
const get_writable_directory_1 = __importDefault(
|
190818
|
+
const get_writable_directory_1 = __importDefault(__nested_webpack_require_884675__(3838));
|
190774
190819
|
exports.getWriteableDirectory = get_writable_directory_1.default;
|
190775
|
-
const glob_1 = __importDefault(
|
190820
|
+
const glob_1 = __importDefault(__nested_webpack_require_884675__(4240));
|
190776
190821
|
exports.glob = glob_1.default;
|
190777
|
-
const rename_1 = __importDefault(
|
190822
|
+
const rename_1 = __importDefault(__nested_webpack_require_884675__(6718));
|
190778
190823
|
exports.rename = rename_1.default;
|
190779
|
-
const run_user_scripts_1 =
|
190824
|
+
const run_user_scripts_1 = __nested_webpack_require_884675__(1442);
|
190780
190825
|
Object.defineProperty(exports, "execAsync", ({ enumerable: true, get: function () { return run_user_scripts_1.execAsync; } }));
|
190781
190826
|
Object.defineProperty(exports, "spawnAsync", ({ enumerable: true, get: function () { return run_user_scripts_1.spawnAsync; } }));
|
190782
190827
|
Object.defineProperty(exports, "execCommand", ({ enumerable: true, get: function () { return run_user_scripts_1.execCommand; } }));
|
@@ -190795,35 +190840,37 @@ Object.defineProperty(exports, "getNodeVersion", ({ enumerable: true, get: funct
|
|
190795
190840
|
Object.defineProperty(exports, "getSpawnOptions", ({ enumerable: true, get: function () { return run_user_scripts_1.getSpawnOptions; } }));
|
190796
190841
|
Object.defineProperty(exports, "getNodeBinPath", ({ enumerable: true, get: function () { return run_user_scripts_1.getNodeBinPath; } }));
|
190797
190842
|
Object.defineProperty(exports, "scanParentDirs", ({ enumerable: true, get: function () { return run_user_scripts_1.scanParentDirs; } }));
|
190798
|
-
const node_version_1 =
|
190843
|
+
const node_version_1 = __nested_webpack_require_884675__(7903);
|
190799
190844
|
Object.defineProperty(exports, "getLatestNodeVersion", ({ enumerable: true, get: function () { return node_version_1.getLatestNodeVersion; } }));
|
190800
190845
|
Object.defineProperty(exports, "getDiscontinuedNodeVersions", ({ enumerable: true, get: function () { return node_version_1.getDiscontinuedNodeVersions; } }));
|
190801
|
-
const stream_to_buffer_1 = __importDefault(
|
190846
|
+
const stream_to_buffer_1 = __importDefault(__nested_webpack_require_884675__(2560));
|
190802
190847
|
exports.streamToBuffer = stream_to_buffer_1.default;
|
190803
|
-
const debug_1 = __importDefault(
|
190848
|
+
const debug_1 = __importDefault(__nested_webpack_require_884675__(1868));
|
190804
190849
|
exports.debug = debug_1.default;
|
190805
|
-
const get_ignore_filter_1 = __importDefault(
|
190850
|
+
const get_ignore_filter_1 = __importDefault(__nested_webpack_require_884675__(1148));
|
190806
190851
|
exports.getIgnoreFilter = get_ignore_filter_1.default;
|
190807
|
-
const get_platform_env_1 =
|
190852
|
+
const get_platform_env_1 = __nested_webpack_require_884675__(4678);
|
190808
190853
|
Object.defineProperty(exports, "getPlatformEnv", ({ enumerable: true, get: function () { return get_platform_env_1.getPlatformEnv; } }));
|
190809
|
-
const get_prefixed_env_vars_1 =
|
190854
|
+
const get_prefixed_env_vars_1 = __nested_webpack_require_884675__(6838);
|
190810
190855
|
Object.defineProperty(exports, "getPrefixedEnvVars", ({ enumerable: true, get: function () { return get_prefixed_env_vars_1.getPrefixedEnvVars; } }));
|
190811
|
-
|
190856
|
+
const clone_env_1 = __nested_webpack_require_884675__(6548);
|
190857
|
+
Object.defineProperty(exports, "cloneEnv", ({ enumerable: true, get: function () { return clone_env_1.cloneEnv; } }));
|
190858
|
+
var edge_function_1 = __nested_webpack_require_884675__(8038);
|
190812
190859
|
Object.defineProperty(exports, "EdgeFunction", ({ enumerable: true, get: function () { return edge_function_1.EdgeFunction; } }));
|
190813
|
-
var read_config_file_1 =
|
190860
|
+
var read_config_file_1 = __nested_webpack_require_884675__(7792);
|
190814
190861
|
Object.defineProperty(exports, "readConfigFile", ({ enumerable: true, get: function () { return read_config_file_1.readConfigFile; } }));
|
190815
|
-
var normalize_path_1 =
|
190862
|
+
var normalize_path_1 = __nested_webpack_require_884675__(6261);
|
190816
190863
|
Object.defineProperty(exports, "normalizePath", ({ enumerable: true, get: function () { return normalize_path_1.normalizePath; } }));
|
190817
|
-
__exportStar(
|
190818
|
-
__exportStar(
|
190819
|
-
__exportStar(
|
190820
|
-
__exportStar(
|
190864
|
+
__exportStar(__nested_webpack_require_884675__(2564), exports);
|
190865
|
+
__exportStar(__nested_webpack_require_884675__(2416), exports);
|
190866
|
+
__exportStar(__nested_webpack_require_884675__(5748), exports);
|
190867
|
+
__exportStar(__nested_webpack_require_884675__(3983), exports);
|
190821
190868
|
|
190822
190869
|
|
190823
190870
|
/***/ }),
|
190824
190871
|
|
190825
190872
|
/***/ 6721:
|
190826
|
-
/***/ (function(__unused_webpack_module, exports,
|
190873
|
+
/***/ (function(__unused_webpack_module, exports, __nested_webpack_require_893493__) {
|
190827
190874
|
|
190828
190875
|
"use strict";
|
190829
190876
|
|
@@ -190832,13 +190879,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
190832
190879
|
};
|
190833
190880
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190834
190881
|
exports.getLambdaOptionsFromFunction = exports.createZip = exports.createLambda = exports.Lambda = void 0;
|
190835
|
-
const assert_1 = __importDefault(
|
190836
|
-
const async_sema_1 = __importDefault(
|
190837
|
-
const yazl_1 =
|
190838
|
-
const minimatch_1 = __importDefault(
|
190839
|
-
const fs_extra_1 =
|
190840
|
-
const download_1 =
|
190841
|
-
const stream_to_buffer_1 = __importDefault(
|
190882
|
+
const assert_1 = __importDefault(__nested_webpack_require_893493__(2357));
|
190883
|
+
const async_sema_1 = __importDefault(__nested_webpack_require_893493__(5758));
|
190884
|
+
const yazl_1 = __nested_webpack_require_893493__(1223);
|
190885
|
+
const minimatch_1 = __importDefault(__nested_webpack_require_893493__(9566));
|
190886
|
+
const fs_extra_1 = __nested_webpack_require_893493__(5392);
|
190887
|
+
const download_1 = __nested_webpack_require_893493__(1611);
|
190888
|
+
const stream_to_buffer_1 = __importDefault(__nested_webpack_require_893493__(2560));
|
190842
190889
|
class Lambda {
|
190843
190890
|
constructor(opts) {
|
190844
190891
|
const { handler, runtime, maxDuration, memory, environment = {}, allowQuery, regions, supportsMultiPayloads, supportsWrapper, } = opts;
|
@@ -190964,13 +191011,13 @@ exports.getLambdaOptionsFromFunction = getLambdaOptionsFromFunction;
|
|
190964
191011
|
/***/ }),
|
190965
191012
|
|
190966
191013
|
/***/ 7049:
|
190967
|
-
/***/ ((__unused_webpack_module, exports,
|
191014
|
+
/***/ ((__unused_webpack_module, exports, __nested_webpack_require_899176__) => {
|
190968
191015
|
|
190969
191016
|
"use strict";
|
190970
191017
|
|
190971
191018
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
190972
191019
|
exports.NodejsLambda = void 0;
|
190973
|
-
const lambda_1 =
|
191020
|
+
const lambda_1 = __nested_webpack_require_899176__(6721);
|
190974
191021
|
class NodejsLambda extends lambda_1.Lambda {
|
190975
191022
|
constructor({ shouldAddHelpers, shouldAddSourcemapSupport, awsLambdaHandler, ...opts }) {
|
190976
191023
|
super(opts);
|
@@ -191107,13 +191154,13 @@ exports.buildsSchema = {
|
|
191107
191154
|
/***/ }),
|
191108
191155
|
|
191109
191156
|
/***/ 2564:
|
191110
|
-
/***/ ((__unused_webpack_module, exports,
|
191157
|
+
/***/ ((__unused_webpack_module, exports, __nested_webpack_require_903521__) => {
|
191111
191158
|
|
191112
191159
|
"use strict";
|
191113
191160
|
|
191114
191161
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
191115
191162
|
exports.shouldServe = void 0;
|
191116
|
-
const path_1 =
|
191163
|
+
const path_1 = __nested_webpack_require_903521__(5622);
|
191117
191164
|
const shouldServe = ({ entrypoint, files, requestPath, }) => {
|
191118
191165
|
requestPath = requestPath.replace(/\/$/, ''); // sanitize trailing '/'
|
191119
191166
|
entrypoint = entrypoint.replace(/\\/, '/'); // windows compatibility
|
@@ -191358,7 +191405,7 @@ module.exports = __webpack_require__(78761);
|
|
191358
191405
|
/******/ var __webpack_module_cache__ = {};
|
191359
191406
|
/******/
|
191360
191407
|
/******/ // The require function
|
191361
|
-
/******/ function
|
191408
|
+
/******/ function __nested_webpack_require_1280886__(moduleId) {
|
191362
191409
|
/******/ // Check if module is in cache
|
191363
191410
|
/******/ if(__webpack_module_cache__[moduleId]) {
|
191364
191411
|
/******/ return __webpack_module_cache__[moduleId].exports;
|
@@ -191373,7 +191420,7 @@ module.exports = __webpack_require__(78761);
|
|
191373
191420
|
/******/ // Execute the module function
|
191374
191421
|
/******/ var threw = true;
|
191375
191422
|
/******/ try {
|
191376
|
-
/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports,
|
191423
|
+
/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __nested_webpack_require_1280886__);
|
191377
191424
|
/******/ threw = false;
|
191378
191425
|
/******/ } finally {
|
191379
191426
|
/******/ if(threw) delete __webpack_module_cache__[moduleId];
|
@@ -191386,11 +191433,11 @@ module.exports = __webpack_require__(78761);
|
|
191386
191433
|
/************************************************************************/
|
191387
191434
|
/******/ /* webpack/runtime/compat */
|
191388
191435
|
/******/
|
191389
|
-
/******/
|
191436
|
+
/******/ __nested_webpack_require_1280886__.ab = __dirname + "/";/************************************************************************/
|
191390
191437
|
/******/ // module exports must be returned from runtime so entry inlining is disabled
|
191391
191438
|
/******/ // startup
|
191392
191439
|
/******/ // Load entry module and return exports
|
191393
|
-
/******/ return
|
191440
|
+
/******/ return __nested_webpack_require_1280886__(2855);
|
191394
191441
|
/******/ })()
|
191395
191442
|
;
|
191396
191443
|
|
@@ -209311,7 +209358,7 @@ exports.frameworks = [
|
|
209311
209358
|
name: 'Blitz.js',
|
209312
209359
|
slug: 'blitzjs',
|
209313
209360
|
demo: 'https://blitz-template.vercel.app',
|
209314
|
-
logo: 'https://
|
209361
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/blitz.svg',
|
209315
209362
|
tagline: 'Blitz.js: The Fullstack React Framework',
|
209316
209363
|
description: 'A brand new Blitz.js app - the result of running `npx blitz new`.',
|
209317
209364
|
website: 'https://blitzjs.com',
|
@@ -209346,8 +209393,8 @@ exports.frameworks = [
|
|
209346
209393
|
name: 'Next.js',
|
209347
209394
|
slug: 'nextjs',
|
209348
209395
|
demo: 'https://nextjs-template.vercel.app',
|
209349
|
-
logo: 'https://
|
209350
|
-
darkModeLogo: 'https://
|
209396
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/next.svg',
|
209397
|
+
darkModeLogo: 'https://api-frameworks.vercel.sh/framework-logos/next-dark.svg',
|
209351
209398
|
screenshot: 'https://assets.vercel.com/image/upload/v1647366075/front/import/nextjs.png',
|
209352
209399
|
tagline: 'Next.js makes you productive with React instantly — whether you want to build static or dynamic sites.',
|
209353
209400
|
description: 'A Next.js app and a Serverless Function API.',
|
@@ -209392,7 +209439,7 @@ exports.frameworks = [
|
|
209392
209439
|
name: 'Gatsby.js',
|
209393
209440
|
slug: 'gatsby',
|
209394
209441
|
demo: 'https://gatsby.vercel.app',
|
209395
|
-
logo: 'https://
|
209442
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/gatsby.svg',
|
209396
209443
|
tagline: 'Gatsby helps developers build blazing fast websites and apps with React.',
|
209397
209444
|
description: 'A Gatsby starter app with an API Route.',
|
209398
209445
|
website: 'https://gatsbyjs.org',
|
@@ -209474,7 +209521,7 @@ exports.frameworks = [
|
|
209474
209521
|
name: 'Remix',
|
209475
209522
|
slug: 'remix',
|
209476
209523
|
demo: 'https://remix-run-template.vercel.app',
|
209477
|
-
logo: 'https://
|
209524
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/remix-no-shadow.svg',
|
209478
209525
|
tagline: 'Build Better Websites',
|
209479
209526
|
description: 'A new Remix app — the result of running `npx create-remix`.',
|
209480
209527
|
website: 'https://remix.run',
|
@@ -209511,8 +209558,8 @@ exports.frameworks = [
|
|
209511
209558
|
name: 'Astro',
|
209512
209559
|
slug: 'astro',
|
209513
209560
|
demo: 'https://astro-template.vercel.app',
|
209514
|
-
logo: 'https://
|
209515
|
-
darkModeLogo: 'https://
|
209561
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/astro.svg',
|
209562
|
+
darkModeLogo: 'https://api-frameworks.vercel.sh/framework-logos/astro-dark.svg',
|
209516
209563
|
tagline: 'Astro is a new kind of static site builder for the modern web. Powerful developer experience meets lightweight output.',
|
209517
209564
|
description: 'An Astro site, using the basics starter kit.',
|
209518
209565
|
website: 'https://astro.build',
|
@@ -209562,7 +209609,7 @@ exports.frameworks = [
|
|
209562
209609
|
name: 'Hexo',
|
209563
209610
|
slug: 'hexo',
|
209564
209611
|
demo: 'https://hexo-template.vercel.app',
|
209565
|
-
logo: 'https://
|
209612
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/hexo.svg',
|
209566
209613
|
tagline: 'Hexo is a fast, simple & powerful blog framework powered by Node.js.',
|
209567
209614
|
description: 'A Hexo site, created with the Hexo CLI.',
|
209568
209615
|
website: 'https://hexo.io',
|
@@ -209597,7 +209644,7 @@ exports.frameworks = [
|
|
209597
209644
|
name: 'Eleventy',
|
209598
209645
|
slug: 'eleventy',
|
209599
209646
|
demo: 'https://eleventy-template.vercel.app',
|
209600
|
-
logo: 'https://
|
209647
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/eleventy.svg',
|
209601
209648
|
tagline: '11ty is a simpler static site generator written in JavaScript, created to be an alternative to Jekyll.',
|
209602
209649
|
description: 'An Eleventy site, created with npm init.',
|
209603
209650
|
website: 'https://www.11ty.dev',
|
@@ -209633,7 +209680,7 @@ exports.frameworks = [
|
|
209633
209680
|
name: 'Docusaurus 2',
|
209634
209681
|
slug: 'docusaurus-2',
|
209635
209682
|
demo: 'https://docusaurus-2-template.vercel.app',
|
209636
|
-
logo: 'https://
|
209683
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/docusaurus.svg',
|
209637
209684
|
tagline: 'Docusaurus makes it easy to maintain Open Source documentation websites.',
|
209638
209685
|
description: 'A static Docusaurus site that makes it easy to maintain OSS documentation.',
|
209639
209686
|
website: 'https://v2.docusaurus.io',
|
@@ -209717,7 +209764,7 @@ exports.frameworks = [
|
|
209717
209764
|
name: 'Docusaurus 1',
|
209718
209765
|
slug: 'docusaurus',
|
209719
209766
|
demo: 'https://docusaurus-template.vercel.app',
|
209720
|
-
logo: 'https://
|
209767
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/docusaurus.svg',
|
209721
209768
|
tagline: 'Docusaurus makes it easy to maintain Open Source documentation websites.',
|
209722
209769
|
description: 'A static Docusaurus site that makes it easy to maintain OSS documentation.',
|
209723
209770
|
website: 'https://docusaurus.io/',
|
@@ -209766,7 +209813,7 @@ exports.frameworks = [
|
|
209766
209813
|
name: 'Preact',
|
209767
209814
|
slug: 'preact',
|
209768
209815
|
demo: 'https://preact-template.vercel.app',
|
209769
|
-
logo: 'https://
|
209816
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/preact.svg',
|
209770
209817
|
tagline: 'Preact is a fast 3kB alternative to React with the same modern API.',
|
209771
209818
|
description: 'A Preact app, created with the Preact CLI.',
|
209772
209819
|
website: 'https://preactjs.com',
|
@@ -209810,7 +209857,7 @@ exports.frameworks = [
|
|
209810
209857
|
name: 'SolidStart',
|
209811
209858
|
slug: 'solidstart',
|
209812
209859
|
demo: 'https://solid-start-template.vercel.app',
|
209813
|
-
logo: 'https://
|
209860
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/solid.svg',
|
209814
209861
|
tagline: 'Simple and performant reactivity for building user interfaces.',
|
209815
209862
|
description: 'A Solid app, created with SolidStart.',
|
209816
209863
|
website: 'https://solidjs.com',
|
@@ -209848,7 +209895,7 @@ exports.frameworks = [
|
|
209848
209895
|
name: 'Dojo',
|
209849
209896
|
slug: 'dojo',
|
209850
209897
|
demo: 'https://dojo-template.vercel.app',
|
209851
|
-
logo: 'https://
|
209898
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/dojo.png',
|
209852
209899
|
tagline: 'Dojo is a modern progressive, TypeScript first framework.',
|
209853
209900
|
description: "A Dojo app, created with the Dojo CLI's cli-create-app command.",
|
209854
209901
|
website: 'https://dojo.io',
|
@@ -209908,7 +209955,7 @@ exports.frameworks = [
|
|
209908
209955
|
name: 'Ember.js',
|
209909
209956
|
slug: 'ember',
|
209910
209957
|
demo: 'https://ember-template.vercel.app',
|
209911
|
-
logo: 'https://
|
209958
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/ember.svg',
|
209912
209959
|
tagline: 'Ember.js helps webapp developers be more productive out of the box.',
|
209913
209960
|
description: 'An Ember app, created with the Ember CLI.',
|
209914
209961
|
website: 'https://emberjs.com/',
|
@@ -209952,7 +209999,7 @@ exports.frameworks = [
|
|
209952
209999
|
name: 'Vue.js',
|
209953
210000
|
slug: 'vue',
|
209954
210001
|
demo: 'https://vue-template.vercel.app',
|
209955
|
-
logo: 'https://
|
210002
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/vue.svg',
|
209956
210003
|
tagline: 'Vue.js is a versatile JavaScript framework that is as approachable as it is performant.',
|
209957
210004
|
description: 'A Vue.js app, created with the Vue CLI.',
|
209958
210005
|
website: 'https://vuejs.org',
|
@@ -210007,7 +210054,7 @@ exports.frameworks = [
|
|
210007
210054
|
name: 'Scully',
|
210008
210055
|
slug: 'scully',
|
210009
210056
|
demo: 'https://scully-template.vercel.app',
|
210010
|
-
logo: 'https://
|
210057
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/scullyio-logo.png',
|
210011
210058
|
tagline: 'Scully is a static site generator for Angular.',
|
210012
210059
|
description: 'The Static Site Generator for Angular apps.',
|
210013
210060
|
website: 'https://github.com/scullyio/scully',
|
@@ -210042,7 +210089,7 @@ exports.frameworks = [
|
|
210042
210089
|
name: 'Ionic Angular',
|
210043
210090
|
slug: 'ionic-angular',
|
210044
210091
|
demo: 'https://ionic-angular-template.vercel.app',
|
210045
|
-
logo: 'https://
|
210092
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/ionic.svg',
|
210046
210093
|
tagline: 'Ionic Angular allows you to build mobile PWAs with Angular and the Ionic Framework.',
|
210047
210094
|
description: 'An Ionic Angular site, created with the Ionic CLI.',
|
210048
210095
|
website: 'https://ionicframework.com',
|
@@ -210085,7 +210132,7 @@ exports.frameworks = [
|
|
210085
210132
|
name: 'Angular',
|
210086
210133
|
slug: 'angular',
|
210087
210134
|
demo: 'https://angular-template.vercel.app',
|
210088
|
-
logo: 'https://
|
210135
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/angular.svg',
|
210089
210136
|
tagline: 'Angular is a TypeScript-based cross-platform framework from Google.',
|
210090
210137
|
description: 'An Angular app, created with the Angular CLI.',
|
210091
210138
|
website: 'https://angular.io',
|
@@ -210143,7 +210190,7 @@ exports.frameworks = [
|
|
210143
210190
|
name: 'Polymer',
|
210144
210191
|
slug: 'polymer',
|
210145
210192
|
demo: 'https://polymer-template.vercel.app',
|
210146
|
-
logo: 'https://
|
210193
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/polymer.svg',
|
210147
210194
|
tagline: 'Polymer is an open-source webapps library from Google, for building using Web Components.',
|
210148
210195
|
description: 'A Polymer app, created with the Polymer CLI.',
|
210149
210196
|
website: 'https://www.polymer-project.org/',
|
@@ -210199,7 +210246,7 @@ exports.frameworks = [
|
|
210199
210246
|
name: 'Svelte',
|
210200
210247
|
slug: 'svelte',
|
210201
210248
|
demo: 'https://svelte.vercel.app',
|
210202
|
-
logo: 'https://
|
210249
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/svelte.svg',
|
210203
210250
|
tagline: 'Svelte lets you write high performance reactive apps with significantly less boilerplate.',
|
210204
210251
|
description: 'A basic Svelte app using the default template.',
|
210205
210252
|
website: 'https://svelte.dev',
|
@@ -210247,7 +210294,7 @@ exports.frameworks = [
|
|
210247
210294
|
name: 'SvelteKit',
|
210248
210295
|
slug: 'sveltekit',
|
210249
210296
|
demo: 'https://sveltekit-template.vercel.app',
|
210250
|
-
logo: 'https://
|
210297
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/svelte.svg',
|
210251
210298
|
screenshot: 'https://assets.vercel.com/image/upload/v1647366075/front/import/sveltekit.png',
|
210252
210299
|
tagline: 'SvelteKit is a framework for building web applications of all sizes.',
|
210253
210300
|
description: 'A SvelteKit app optimized Edge-first.',
|
@@ -210283,7 +210330,7 @@ exports.frameworks = [
|
|
210283
210330
|
name: 'Ionic React',
|
210284
210331
|
slug: 'ionic-react',
|
210285
210332
|
demo: 'https://ionic-react-template.vercel.app',
|
210286
|
-
logo: 'https://
|
210333
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/ionic.svg',
|
210287
210334
|
tagline: 'Ionic React allows you to build mobile PWAs with React and the Ionic Framework.',
|
210288
210335
|
description: 'An Ionic React site, created with the Ionic CLI.',
|
210289
210336
|
website: 'https://ionicframework.com',
|
@@ -210342,7 +210389,7 @@ exports.frameworks = [
|
|
210342
210389
|
name: 'Create React App',
|
210343
210390
|
slug: 'create-react-app',
|
210344
210391
|
demo: 'https://create-react-template.vercel.app',
|
210345
|
-
logo: 'https://
|
210392
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/react.svg',
|
210346
210393
|
tagline: 'Create React App allows you to get going with React in no time.',
|
210347
210394
|
description: 'A client-side React app created with create-react-app.',
|
210348
210395
|
website: 'https://create-react-app.dev',
|
@@ -210407,7 +210454,7 @@ exports.frameworks = [
|
|
210407
210454
|
name: 'Gridsome',
|
210408
210455
|
slug: 'gridsome',
|
210409
210456
|
demo: 'https://gridsome-template.vercel.app',
|
210410
|
-
logo: 'https://
|
210457
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/gridsome.svg',
|
210411
210458
|
tagline: 'Gridsome is a Vue.js-powered framework for building websites & apps that are fast by default.',
|
210412
210459
|
description: 'A Gridsome app, created with the Gridsome CLI.',
|
210413
210460
|
website: 'https://gridsome.org/',
|
@@ -210442,7 +210489,7 @@ exports.frameworks = [
|
|
210442
210489
|
name: 'UmiJS',
|
210443
210490
|
slug: 'umijs',
|
210444
210491
|
demo: 'https://umijs-template.vercel.app',
|
210445
|
-
logo: 'https://
|
210492
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/umi.svg',
|
210446
210493
|
tagline: 'UmiJS is an extensible enterprise-level React application framework.',
|
210447
210494
|
description: 'An UmiJS app, created using the Umi CLI.',
|
210448
210495
|
website: 'https://umijs.org',
|
@@ -210486,7 +210533,7 @@ exports.frameworks = [
|
|
210486
210533
|
name: 'Sapper',
|
210487
210534
|
slug: 'sapper',
|
210488
210535
|
demo: 'https://sapper-template.vercel.app',
|
210489
|
-
logo: 'https://
|
210536
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/svelte.svg',
|
210490
210537
|
tagline: 'Sapper is a framework for building high-performance universal web apps with Svelte.',
|
210491
210538
|
description: 'A Sapper app, using the Sapper template.',
|
210492
210539
|
website: 'https://sapper.svelte.dev',
|
@@ -210521,7 +210568,7 @@ exports.frameworks = [
|
|
210521
210568
|
name: 'Saber',
|
210522
210569
|
slug: 'saber',
|
210523
210570
|
demo: 'https://saber-template.vercel.app',
|
210524
|
-
logo: 'https://
|
210571
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/saber.svg',
|
210525
210572
|
tagline: 'Saber is a framework for building static sites in Vue.js that supports data from any source.',
|
210526
210573
|
description: 'A Saber site, created with npm init.',
|
210527
210574
|
website: 'https://saber.land/',
|
@@ -210570,7 +210617,7 @@ exports.frameworks = [
|
|
210570
210617
|
name: 'Stencil',
|
210571
210618
|
slug: 'stencil',
|
210572
210619
|
demo: 'https://stencil.vercel.app',
|
210573
|
-
logo: 'https://
|
210620
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/stencil.svg',
|
210574
210621
|
tagline: 'Stencil is a powerful toolchain for building Progressive Web Apps and Design Systems.',
|
210575
210622
|
description: 'A Stencil site, created with the Stencil CLI.',
|
210576
210623
|
website: 'https://stenciljs.com/',
|
@@ -210629,7 +210676,7 @@ exports.frameworks = [
|
|
210629
210676
|
name: 'Nuxt.js',
|
210630
210677
|
slug: 'nuxtjs',
|
210631
210678
|
demo: 'https://nuxtjs-template.vercel.app',
|
210632
|
-
logo: 'https://
|
210679
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/nuxt.svg',
|
210633
210680
|
screenshot: 'https://assets.vercel.com/image/upload/v1647366075/front/import/nuxtjs.png',
|
210634
210681
|
tagline: 'Nuxt.js is the web comprehensive framework that lets you dream big with Vue.js.',
|
210635
210682
|
description: 'A Nuxt.js app, bootstrapped with create-nuxt-app.',
|
@@ -210686,7 +210733,7 @@ exports.frameworks = [
|
|
210686
210733
|
name: 'RedwoodJS',
|
210687
210734
|
slug: 'redwoodjs',
|
210688
210735
|
demo: 'https://redwood-template.vercel.app',
|
210689
|
-
logo: 'https://
|
210736
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/redwoodjs.svg',
|
210690
210737
|
tagline: 'RedwoodJS is a full-stack framework for the Jamstack.',
|
210691
210738
|
description: 'A RedwoodJS app, bootstraped with create-redwood-app.',
|
210692
210739
|
website: 'https://redwoodjs.com',
|
@@ -210722,7 +210769,7 @@ exports.frameworks = [
|
|
210722
210769
|
name: 'Hugo',
|
210723
210770
|
slug: 'hugo',
|
210724
210771
|
demo: 'https://hugo-template.vercel.app',
|
210725
|
-
logo: 'https://
|
210772
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/hugo.svg',
|
210726
210773
|
tagline: 'Hugo is the world’s fastest framework for building websites, written in Go.',
|
210727
210774
|
description: 'A Hugo site, created with the Hugo CLI.',
|
210728
210775
|
website: 'https://gohugo.io',
|
@@ -210770,7 +210817,7 @@ exports.frameworks = [
|
|
210770
210817
|
name: 'Jekyll',
|
210771
210818
|
slug: 'jekyll',
|
210772
210819
|
demo: 'https://jekyll-template.vercel.app',
|
210773
|
-
logo: 'https://
|
210820
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/jekyll.svg',
|
210774
210821
|
tagline: 'Jekyll makes it super easy to transform your plain text into static websites and blogs.',
|
210775
210822
|
description: 'A Jekyll site, created with the Jekyll CLI.',
|
210776
210823
|
website: 'https://jekyllrb.com/',
|
@@ -210807,7 +210854,7 @@ exports.frameworks = [
|
|
210807
210854
|
name: 'Brunch',
|
210808
210855
|
slug: 'brunch',
|
210809
210856
|
demo: 'https://brunch-template.vercel.app',
|
210810
|
-
logo: 'https://
|
210857
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/brunch.svg',
|
210811
210858
|
tagline: 'Brunch is a fast and simple webapp build tool with seamless incremental compilation for rapid development.',
|
210812
210859
|
description: 'A Brunch app, created with the Brunch CLI.',
|
210813
210860
|
website: 'https://brunch.io/',
|
@@ -210840,7 +210887,7 @@ exports.frameworks = [
|
|
210840
210887
|
name: 'Middleman',
|
210841
210888
|
slug: 'middleman',
|
210842
210889
|
demo: 'https://middleman-template.vercel.app',
|
210843
|
-
logo: 'https://
|
210890
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/middleman.svg',
|
210844
210891
|
tagline: 'Middleman is a static site generator that uses all the shortcuts and tools in modern web development.',
|
210845
210892
|
description: 'A Middleman app, created with the Middleman CLI.',
|
210846
210893
|
website: 'https://middlemanapp.com/',
|
@@ -210874,7 +210921,7 @@ exports.frameworks = [
|
|
210874
210921
|
name: 'Zola',
|
210875
210922
|
slug: 'zola',
|
210876
210923
|
demo: 'https://zola-template.vercel.app',
|
210877
|
-
logo: 'https://
|
210924
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/zola.png',
|
210878
210925
|
tagline: 'Everything you need to make a static site engine in one binary.',
|
210879
210926
|
description: 'A Zola app, created with the "Getting Started" tutorial.',
|
210880
210927
|
website: 'https://www.getzola.org',
|
@@ -210908,7 +210955,7 @@ exports.frameworks = [
|
|
210908
210955
|
name: 'Vite',
|
210909
210956
|
slug: 'vite',
|
210910
210957
|
demo: 'https://vite-vue-template.vercel.app',
|
210911
|
-
logo: 'https://
|
210958
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/vite.svg',
|
210912
210959
|
tagline: 'Vite is a new breed of frontend build tool that significantly improves the frontend development experience.',
|
210913
210960
|
description: 'A Vue.js app, created with Vite.',
|
210914
210961
|
website: 'https://vitejs.dev',
|
@@ -210944,7 +210991,7 @@ exports.frameworks = [
|
|
210944
210991
|
name: 'Parcel',
|
210945
210992
|
slug: 'parcel',
|
210946
210993
|
demo: 'https://parcel-template.vercel.app',
|
210947
|
-
logo: 'https://
|
210994
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/parcel.png',
|
210948
210995
|
tagline: 'Parcel is a zero configuration build tool for the web that scales to projects of any size and complexity.',
|
210949
210996
|
description: 'A vanilla web app built with Parcel.',
|
210950
210997
|
website: 'https://parceljs.org',
|
@@ -210989,7 +211036,7 @@ exports.frameworks = [
|
|
210989
211036
|
name: 'Sanity',
|
210990
211037
|
slug: 'sanity',
|
210991
211038
|
demo: 'https://sanity-studio-template.vercel.app',
|
210992
|
-
logo: 'https://
|
211039
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/sanity.svg',
|
210993
211040
|
tagline: 'The structured content platform.',
|
210994
211041
|
description: 'A Sanity Studio',
|
210995
211042
|
website: 'https://www.sanity.io',
|
@@ -211038,7 +211085,7 @@ exports.frameworks = [
|
|
211038
211085
|
name: 'Hydrogen',
|
211039
211086
|
slug: 'hydrogen',
|
211040
211087
|
demo: 'https://hydrogen-template.vercel.app',
|
211041
|
-
logo: 'https://
|
211088
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/hydrogen.svg',
|
211042
211089
|
tagline: 'React framework for headless commerce',
|
211043
211090
|
description: 'React framework for headless commerce',
|
211044
211091
|
website: 'https://hydrogen.shopify.dev',
|
@@ -211072,7 +211119,7 @@ exports.frameworks = [
|
|
211072
211119
|
{
|
211073
211120
|
name: 'Other',
|
211074
211121
|
slug: null,
|
211075
|
-
logo: 'https://
|
211122
|
+
logo: 'https://api-frameworks.vercel.sh/framework-logos/other.svg',
|
211076
211123
|
description: 'No framework or an unoptimized framework.',
|
211077
211124
|
settings: {
|
211078
211125
|
installCommand: {
|
@@ -216660,6 +216707,28 @@ exports.monorepoManagers = [
|
|
216660
216707
|
],
|
216661
216708
|
},
|
216662
216709
|
},
|
216710
|
+
{
|
216711
|
+
name: 'Nx',
|
216712
|
+
slug: 'nx',
|
216713
|
+
detectors: {
|
216714
|
+
every: [
|
216715
|
+
{
|
216716
|
+
path: 'nx.json',
|
216717
|
+
},
|
216718
|
+
],
|
216719
|
+
},
|
216720
|
+
},
|
216721
|
+
{
|
216722
|
+
name: 'Rush',
|
216723
|
+
slug: 'rush',
|
216724
|
+
detectors: {
|
216725
|
+
every: [
|
216726
|
+
{
|
216727
|
+
path: 'rush.json',
|
216728
|
+
},
|
216729
|
+
],
|
216730
|
+
},
|
216731
|
+
},
|
216663
216732
|
];
|
216664
216733
|
exports.default = exports.monorepoManagers;
|
216665
216734
|
//# sourceMappingURL=monorepo-managers.js.map
|
@@ -216772,6 +216841,9 @@ async function getWorkspacePackagePaths({ fs, workspace, }) {
|
|
216772
216841
|
case 'pnpm':
|
216773
216842
|
results = await getPnpmWorkspacePackagePaths({ fs: workspaceFs });
|
216774
216843
|
break;
|
216844
|
+
case 'nx':
|
216845
|
+
results = await getNxWorkspacePackagePaths({ fs: workspaceFs });
|
216846
|
+
break;
|
216775
216847
|
default:
|
216776
216848
|
throw new Error(`Unknown workspace implementation: ${type}`);
|
216777
216849
|
}
|
@@ -216807,6 +216879,12 @@ async function getPackageJsonWorkspacePackagePaths({ fs, }) {
|
|
216807
216879
|
}
|
216808
216880
|
return getPackagePaths(packages, fs);
|
216809
216881
|
}
|
216882
|
+
async function getNxWorkspacePackagePaths({ fs, }) {
|
216883
|
+
const nxWorkspaceJsonAsBuffer = await fs.readFile('workspace.json');
|
216884
|
+
const { projects } = JSON.parse(nxWorkspaceJsonAsBuffer.toString());
|
216885
|
+
const packages = Object.values(projects);
|
216886
|
+
return getPackagePaths(packages, fs);
|
216887
|
+
}
|
216810
216888
|
async function getPnpmWorkspacePackagePaths({ fs, }) {
|
216811
216889
|
const pnpmWorkspaceAsBuffer = await fs.readFile('pnpm-workspace.yaml');
|
216812
216890
|
const { packages = [] } = js_yaml_1.default.load(pnpmWorkspaceAsBuffer.toString());
|
@@ -216921,6 +216999,18 @@ exports.workspaceManagers = [
|
|
216921
216999
|
],
|
216922
217000
|
},
|
216923
217001
|
},
|
217002
|
+
{
|
217003
|
+
name: 'nx',
|
217004
|
+
slug: 'nx',
|
217005
|
+
detectors: {
|
217006
|
+
every: [
|
217007
|
+
{
|
217008
|
+
path: 'workspace.json',
|
217009
|
+
matchContent: '"projects":\\s*{[^}]',
|
217010
|
+
},
|
217011
|
+
],
|
217012
|
+
},
|
217013
|
+
},
|
216924
217014
|
{
|
216925
217015
|
name: 'default',
|
216926
217016
|
slug: 'yarn',
|
@@ -228716,7 +228806,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
228716
228806
|
const path_1 = __webpack_require__(85622);
|
228717
228807
|
const fs_extra_1 = __importDefault(__webpack_require__(45392));
|
228718
228808
|
const server_1 = __importDefault(__webpack_require__(18433));
|
228719
|
-
const parse_listen_1 =
|
228809
|
+
const parse_listen_1 = __webpack_require__(1919);
|
228720
228810
|
const link_1 = __webpack_require__(67630);
|
228721
228811
|
const get_decrypted_env_records_1 = __importDefault(__webpack_require__(30861));
|
228722
228812
|
const setup_and_link_1 = __importDefault(__webpack_require__(69532));
|
@@ -228728,7 +228818,7 @@ async function dev(client, opts, args) {
|
|
228728
228818
|
const { output } = client;
|
228729
228819
|
const [dir = '.'] = args;
|
228730
228820
|
let cwd = (0, path_1.resolve)(dir);
|
228731
|
-
const listen = (0, parse_listen_1.
|
228821
|
+
const listen = (0, parse_listen_1.parseListen)(opts['--listen'] || '3000');
|
228732
228822
|
// retrieve dev command
|
228733
228823
|
let link = await (0, link_1.getLinkedProject)(client, cwd);
|
228734
228824
|
if (link.status === 'not_linked' && !process.env.__VERCEL_SKIP_DEV_CMD) {
|
@@ -235072,15 +235162,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
235072
235162
|
};
|
235073
235163
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
235074
235164
|
exports.resolveBuilders = exports.importBuilders = void 0;
|
235165
|
+
const url_1 = __webpack_require__(78835);
|
235166
|
+
const pluralize_1 = __importDefault(__webpack_require__(31974));
|
235075
235167
|
const npm_package_arg_1 = __importDefault(__webpack_require__(79726));
|
235076
235168
|
const semver_1 = __webpack_require__(92879);
|
235077
235169
|
const path_1 = __webpack_require__(85622);
|
235078
235170
|
const fs_extra_1 = __webpack_require__(45392);
|
235171
|
+
const fs_detectors_1 = __webpack_require__(20302);
|
235079
235172
|
const build_utils_1 = __webpack_require__(3131);
|
235080
235173
|
const staticBuilder = __importStar(__webpack_require__(33274));
|
235081
235174
|
const link_1 = __webpack_require__(67630);
|
235082
235175
|
const read_json_file_1 = __importDefault(__webpack_require__(16898));
|
235083
235176
|
const errors_ts_1 = __webpack_require__(60156);
|
235177
|
+
const is_error_1 = __webpack_require__(11026);
|
235178
|
+
const cmd_1 = __importDefault(__webpack_require__(87350));
|
235179
|
+
const code_1 = __importDefault(__webpack_require__(62230));
|
235084
235180
|
/**
|
235085
235181
|
* Imports the specified Vercel Builders, installing any missing ones
|
235086
235182
|
* into `.vercel/builders` if necessary.
|
@@ -235111,7 +235207,7 @@ async function resolveBuilders(buildersDir, builderSpecs, output, resolvedSpecs)
|
|
235111
235207
|
buildersToAdd.add(spec);
|
235112
235208
|
continue;
|
235113
235209
|
}
|
235114
|
-
if (
|
235210
|
+
if ((0, fs_detectors_1.isStaticRuntime)(name)) {
|
235115
235211
|
// `@vercel/static` is a special-case built-in builder
|
235116
235212
|
builders.set(name, {
|
235117
235213
|
builder: staticBuilder,
|
@@ -235212,14 +235308,45 @@ async function installBuilders(buildersDir, buildersToAdd, output) {
|
|
235212
235308
|
if (err.code !== 'EEXIST')
|
235213
235309
|
throw err;
|
235214
235310
|
}
|
235215
|
-
output.
|
235216
|
-
|
235217
|
-
|
235218
|
-
|
235311
|
+
output.log(`Installing ${(0, pluralize_1.default)('Builder', buildersToAdd.size)}: ${Array.from(buildersToAdd).join(', ')}`);
|
235312
|
+
try {
|
235313
|
+
await (0, build_utils_1.spawnAsync)('npm', ['install', '@vercel/build-utils', ...buildersToAdd], {
|
235314
|
+
cwd: buildersDir,
|
235315
|
+
stdio: 'pipe',
|
235316
|
+
});
|
235317
|
+
}
|
235318
|
+
catch (err) {
|
235319
|
+
if ((0, is_error_1.isError)(err)) {
|
235320
|
+
err.link =
|
235321
|
+
'https://vercel.link/builder-dependencies-install-failed';
|
235322
|
+
if ((0, is_error_1.isErrnoException)(err) && err.code === 'ENOENT') {
|
235323
|
+
// `npm` is not installed
|
235324
|
+
err.message = `Please install ${(0, cmd_1.default)('npm')} before continuing`;
|
235325
|
+
}
|
235326
|
+
else {
|
235327
|
+
const message = (0, is_error_1.errorToString)(err);
|
235328
|
+
const notFound = /GET (.*) - Not found/.exec(message);
|
235329
|
+
if (notFound) {
|
235330
|
+
const url = new url_1.URL(notFound[1]);
|
235331
|
+
const packageName = decodeURIComponent(url.pathname.slice(1));
|
235332
|
+
err.message = `The package ${(0, code_1.default)(packageName)} is not published on the npm registry`;
|
235333
|
+
}
|
235334
|
+
}
|
235335
|
+
}
|
235336
|
+
throw err;
|
235337
|
+
}
|
235219
235338
|
// Symlink `@now/build-utils` -> `@vercel/build-utils` to support legacy Builders
|
235220
235339
|
const nowScopePath = (0, path_1.join)(buildersDir, 'node_modules/@now');
|
235221
235340
|
await (0, fs_extra_1.mkdirp)(nowScopePath);
|
235222
|
-
|
235341
|
+
try {
|
235342
|
+
await (0, fs_extra_1.symlink)('../@vercel/build-utils', (0, path_1.join)(nowScopePath, 'build-utils'));
|
235343
|
+
}
|
235344
|
+
catch (err) {
|
235345
|
+
if (!(0, is_error_1.isErrnoException)(err) || err.code !== 'EEXIST') {
|
235346
|
+
// Throw unless the error is due to the symlink already existing
|
235347
|
+
throw err;
|
235348
|
+
}
|
235349
|
+
}
|
235223
235350
|
// Cross-reference any builderSpecs from the saved `package.json` file,
|
235224
235351
|
// in case they were installed from a URL
|
235225
235352
|
const buildersPkg = await (0, read_json_file_1.default)(buildersPkgPath);
|
@@ -235274,8 +235401,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
235274
235401
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
235275
235402
|
};
|
235276
235403
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
235277
|
-
exports.build = exports.version = void 0;
|
235404
|
+
exports.shouldServe = exports.build = exports.version = void 0;
|
235278
235405
|
const minimatch_1 = __importDefault(__webpack_require__(99566));
|
235406
|
+
const build_utils_1 = __webpack_require__(3131);
|
235279
235407
|
exports.version = 2;
|
235280
235408
|
const build = async ({ entrypoint, files, config }) => {
|
235281
235409
|
const output = {};
|
@@ -235303,6 +235431,17 @@ const build = async ({ entrypoint, files, config }) => {
|
|
235303
235431
|
return { output };
|
235304
235432
|
};
|
235305
235433
|
exports.build = build;
|
235434
|
+
const shouldServe = _opts => {
|
235435
|
+
const opts = { ..._opts };
|
235436
|
+
const { config: { zeroConfig, outputDirectory }, } = opts;
|
235437
|
+
// Add the output directory prefix
|
235438
|
+
if (zeroConfig && outputDirectory) {
|
235439
|
+
opts.entrypoint = `${outputDirectory}/${opts.entrypoint}`;
|
235440
|
+
opts.requestPath = `${outputDirectory}/${opts.requestPath}`;
|
235441
|
+
}
|
235442
|
+
return (0, build_utils_1.shouldServe)(opts);
|
235443
|
+
};
|
235444
|
+
exports.shouldServe = shouldServe;
|
235306
235445
|
|
235307
235446
|
|
235308
235447
|
/***/ }),
|
@@ -237565,364 +237704,6 @@ function isValidArchive(archive) {
|
|
237565
237704
|
exports.isValidArchive = isValidArchive;
|
237566
237705
|
|
237567
237706
|
|
237568
|
-
/***/ }),
|
237569
|
-
|
237570
|
-
/***/ 30770:
|
237571
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
237572
|
-
|
237573
|
-
"use strict";
|
237574
|
-
|
237575
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
237576
|
-
if (k2 === undefined) k2 = k;
|
237577
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
237578
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
237579
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
237580
|
-
}
|
237581
|
-
Object.defineProperty(o, k2, desc);
|
237582
|
-
}) : (function(o, m, k, k2) {
|
237583
|
-
if (k2 === undefined) k2 = k;
|
237584
|
-
o[k2] = m[k];
|
237585
|
-
}));
|
237586
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
237587
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
237588
|
-
}) : function(o, v) {
|
237589
|
-
o["default"] = v;
|
237590
|
-
});
|
237591
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
237592
|
-
if (mod && mod.__esModule) return mod;
|
237593
|
-
var result = {};
|
237594
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
237595
|
-
__setModuleDefault(result, mod);
|
237596
|
-
return result;
|
237597
|
-
};
|
237598
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
237599
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
237600
|
-
};
|
237601
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
237602
|
-
exports.isBundledBuilder = exports.getBuilder = exports.updateBuilders = exports.installBuilders = exports.filterPackage = exports.getBuildUtils = exports.prepareBuilderDir = exports.prepareCacheDir = exports.builderDirPromise = exports.cacheDirPromise = void 0;
|
237603
|
-
const chalk_1 = __importDefault(__webpack_require__(961));
|
237604
|
-
const execa_1 = __importDefault(__webpack_require__(94237));
|
237605
|
-
const semver_1 = __importDefault(__webpack_require__(92879));
|
237606
|
-
const npm_package_arg_1 = __importDefault(__webpack_require__(79726));
|
237607
|
-
const pluralize_1 = __importDefault(__webpack_require__(31974));
|
237608
|
-
const path_1 = __webpack_require__(85622);
|
237609
|
-
const xdg_app_paths_1 = __importDefault(__webpack_require__(30461));
|
237610
|
-
const fs_extra_1 = __webpack_require__(45392);
|
237611
|
-
const build_utils_1 = __webpack_require__(3131);
|
237612
|
-
const pkg_1 = __importDefault(__webpack_require__(80984));
|
237613
|
-
const cmd_1 = __importDefault(__webpack_require__(87350));
|
237614
|
-
const errors_ts_1 = __webpack_require__(60156);
|
237615
|
-
const staticBuilder = __importStar(__webpack_require__(46241));
|
237616
|
-
const is_error_1 = __webpack_require__(11026);
|
237617
|
-
const require_ = eval('require');
|
237618
|
-
const registryTypes = new Set(['version', 'tag', 'range']);
|
237619
|
-
const createStaticBuilder = (scope) => {
|
237620
|
-
return {
|
237621
|
-
runInProcess: true,
|
237622
|
-
requirePath: `${scope}/static`,
|
237623
|
-
builder: Object.freeze(staticBuilder),
|
237624
|
-
package: Object.freeze({ name: `@${scope}/static`, version: '' }),
|
237625
|
-
};
|
237626
|
-
};
|
237627
|
-
const localBuilders = {
|
237628
|
-
'@now/static': createStaticBuilder('now'),
|
237629
|
-
'@vercel/static': createStaticBuilder('vercel'),
|
237630
|
-
};
|
237631
|
-
exports.cacheDirPromise = prepareCacheDir();
|
237632
|
-
exports.builderDirPromise = prepareBuilderDir();
|
237633
|
-
/**
|
237634
|
-
* Prepare cache directory for installing Vercel runtimes.
|
237635
|
-
*/
|
237636
|
-
async function prepareCacheDir() {
|
237637
|
-
const designated = (0, xdg_app_paths_1.default)('com.vercel.cli').cache();
|
237638
|
-
if (!designated) {
|
237639
|
-
throw new errors_ts_1.NoBuilderCacheError();
|
237640
|
-
}
|
237641
|
-
const cacheDir = (0, path_1.join)(designated, 'dev');
|
237642
|
-
await (0, fs_extra_1.mkdirp)(cacheDir);
|
237643
|
-
return cacheDir;
|
237644
|
-
}
|
237645
|
-
exports.prepareCacheDir = prepareCacheDir;
|
237646
|
-
async function prepareBuilderDir() {
|
237647
|
-
const builderDir = (0, path_1.join)(await exports.cacheDirPromise, 'builders');
|
237648
|
-
await (0, fs_extra_1.mkdirp)(builderDir);
|
237649
|
-
// Create an empty `package.json` file, only if one does not already exist
|
237650
|
-
try {
|
237651
|
-
const buildersPkg = (0, path_1.join)(builderDir, 'package.json');
|
237652
|
-
await (0, fs_extra_1.writeJSON)(buildersPkg, { private: true }, { flag: 'wx' });
|
237653
|
-
}
|
237654
|
-
catch (err) {
|
237655
|
-
if (!(0, is_error_1.isErrnoException)(err) || err.code !== 'EEXIST') {
|
237656
|
-
throw err;
|
237657
|
-
}
|
237658
|
-
}
|
237659
|
-
return builderDir;
|
237660
|
-
}
|
237661
|
-
exports.prepareBuilderDir = prepareBuilderDir;
|
237662
|
-
function getNpmVersion(use = '') {
|
237663
|
-
const parsed = (0, npm_package_arg_1.default)(use);
|
237664
|
-
if (registryTypes.has(parsed.type)) {
|
237665
|
-
return parsed.fetchSpec || '';
|
237666
|
-
}
|
237667
|
-
return '';
|
237668
|
-
}
|
237669
|
-
function getBuildUtils(packages) {
|
237670
|
-
const version = packages
|
237671
|
-
.map(getNpmVersion)
|
237672
|
-
.some(ver => ver.includes('canary'))
|
237673
|
-
? 'canary'
|
237674
|
-
: 'latest';
|
237675
|
-
return `@vercel/build-utils@${version}`;
|
237676
|
-
}
|
237677
|
-
exports.getBuildUtils = getBuildUtils;
|
237678
|
-
function parseVersionSafe(rawSpec) {
|
237679
|
-
try {
|
237680
|
-
return semver_1.default.parse(rawSpec);
|
237681
|
-
}
|
237682
|
-
catch (e) {
|
237683
|
-
return null;
|
237684
|
-
}
|
237685
|
-
}
|
237686
|
-
function filterPackage(builderSpec, buildersPkg, cliPkg) {
|
237687
|
-
if (builderSpec in localBuilders)
|
237688
|
-
return false;
|
237689
|
-
const parsed = (0, npm_package_arg_1.default)(builderSpec);
|
237690
|
-
const parsedVersion = parseVersionSafe(parsed.rawSpec);
|
237691
|
-
// Skip install of Runtimes that are part of Vercel CLI's `dependencies`
|
237692
|
-
if (isBundledBuilder(parsed, cliPkg)) {
|
237693
|
-
return false;
|
237694
|
-
}
|
237695
|
-
// Skip install of already installed Runtime with exact version match
|
237696
|
-
if (parsed.name &&
|
237697
|
-
parsed.type === 'version' &&
|
237698
|
-
parsedVersion &&
|
237699
|
-
buildersPkg.dependencies &&
|
237700
|
-
parsedVersion.version == buildersPkg.dependencies[parsed.name]) {
|
237701
|
-
return false;
|
237702
|
-
}
|
237703
|
-
return true;
|
237704
|
-
}
|
237705
|
-
exports.filterPackage = filterPackage;
|
237706
|
-
/**
|
237707
|
-
* Install a list of builders to the cache directory.
|
237708
|
-
*/
|
237709
|
-
async function installBuilders(packagesSet, output, builderDir) {
|
237710
|
-
const packages = Array.from(packagesSet);
|
237711
|
-
if (packages.length === 0 ||
|
237712
|
-
(packages.length === 1 &&
|
237713
|
-
Object.hasOwnProperty.call(localBuilders, packages[0]))) {
|
237714
|
-
// Static deployment, no builders to install
|
237715
|
-
return;
|
237716
|
-
}
|
237717
|
-
if (!builderDir) {
|
237718
|
-
builderDir = await exports.builderDirPromise;
|
237719
|
-
}
|
237720
|
-
const buildersPkgPath = (0, path_1.join)(builderDir, 'package.json');
|
237721
|
-
const buildersPkgBefore = await (0, fs_extra_1.readJSON)(buildersPkgPath);
|
237722
|
-
const depsBefore = {
|
237723
|
-
...buildersPkgBefore.devDependencies,
|
237724
|
-
...buildersPkgBefore.dependencies,
|
237725
|
-
};
|
237726
|
-
// Filter out any packages that come packaged with Vercel CLI
|
237727
|
-
const packagesToInstall = packages.filter(p => filterPackage(p, buildersPkgBefore, pkg_1.default));
|
237728
|
-
if (packagesToInstall.length === 0) {
|
237729
|
-
output.debug('No Runtimes need to be installed');
|
237730
|
-
return;
|
237731
|
-
}
|
237732
|
-
packagesToInstall.push(getBuildUtils(packages));
|
237733
|
-
await npmInstall(builderDir, output, packagesToInstall, false);
|
237734
|
-
const updatedPackages = [];
|
237735
|
-
const buildersPkgAfter = await (0, fs_extra_1.readJSON)(buildersPkgPath);
|
237736
|
-
const depsAfter = {
|
237737
|
-
...buildersPkgAfter.devDependencies,
|
237738
|
-
...buildersPkgAfter.dependencies,
|
237739
|
-
};
|
237740
|
-
for (const [name, version] of Object.entries(depsAfter)) {
|
237741
|
-
if (version !== depsBefore[name]) {
|
237742
|
-
output.debug(`Runtime "${name}" updated to version \`${version}\``);
|
237743
|
-
updatedPackages.push(name);
|
237744
|
-
}
|
237745
|
-
}
|
237746
|
-
purgeRequireCache(updatedPackages, builderDir, output);
|
237747
|
-
}
|
237748
|
-
exports.installBuilders = installBuilders;
|
237749
|
-
async function npmInstall(cwd, output, packagesToInstall, silent) {
|
237750
|
-
const sortedPackages = packagesToInstall.sort();
|
237751
|
-
if (!silent) {
|
237752
|
-
output.spinner(`Installing ${(0, pluralize_1.default)('Runtime', sortedPackages.length)}: ${sortedPackages.join(', ')}`);
|
237753
|
-
}
|
237754
|
-
output.debug(`Running npm install in ${cwd}`);
|
237755
|
-
try {
|
237756
|
-
const args = [
|
237757
|
-
'install',
|
237758
|
-
'--save-exact',
|
237759
|
-
'--no-package-lock',
|
237760
|
-
'--no-audit',
|
237761
|
-
'--no-progress',
|
237762
|
-
];
|
237763
|
-
if (process.stderr.isTTY) {
|
237764
|
-
// Force colors in the npm child process
|
237765
|
-
// https://docs.npmjs.com/misc/config#color
|
237766
|
-
args.push('--color=always');
|
237767
|
-
}
|
237768
|
-
args.push(...sortedPackages);
|
237769
|
-
const result = await (0, execa_1.default)('npm', args, {
|
237770
|
-
cwd,
|
237771
|
-
reject: false,
|
237772
|
-
stdio: output.isDebugEnabled() ? 'inherit' : 'pipe',
|
237773
|
-
});
|
237774
|
-
if (result.failed) {
|
237775
|
-
output.stopSpinner();
|
237776
|
-
if (result.stdout) {
|
237777
|
-
console.log(result.stdout);
|
237778
|
-
}
|
237779
|
-
if (result.stderr) {
|
237780
|
-
console.error(result.stderr);
|
237781
|
-
}
|
237782
|
-
throw new build_utils_1.NowBuildError({
|
237783
|
-
message: result.code === 'ENOENT'
|
237784
|
-
? `Command not found: ${chalk_1.default.cyan('npm')}\nPlease ensure that ${(0, cmd_1.default)('npm')} is properly installed`
|
237785
|
-
: 'Failed to install `vercel dev` dependencies',
|
237786
|
-
code: 'NPM_INSTALL_ERROR',
|
237787
|
-
link: 'https://vercel.link/npm-install-failed-dev',
|
237788
|
-
});
|
237789
|
-
}
|
237790
|
-
}
|
237791
|
-
finally {
|
237792
|
-
output.stopSpinner();
|
237793
|
-
}
|
237794
|
-
}
|
237795
|
-
async function updateBuilders(packagesSet, output, builderDir) {
|
237796
|
-
if (!builderDir) {
|
237797
|
-
builderDir = await exports.builderDirPromise;
|
237798
|
-
}
|
237799
|
-
const updatedPackages = [];
|
237800
|
-
const packages = Array.from(packagesSet);
|
237801
|
-
const buildersPkgPath = (0, path_1.join)(builderDir, 'package.json');
|
237802
|
-
const buildersPkgBefore = await (0, fs_extra_1.readJSON)(buildersPkgPath);
|
237803
|
-
const depsBefore = {
|
237804
|
-
...buildersPkgBefore.devDependencies,
|
237805
|
-
...buildersPkgBefore.dependencies,
|
237806
|
-
};
|
237807
|
-
const packagesToUpdate = packages.filter(p => {
|
237808
|
-
if (p in localBuilders)
|
237809
|
-
return false;
|
237810
|
-
// If it's a builder that is part of Vercel CLI's
|
237811
|
-
// `dependencies` then don't update it
|
237812
|
-
if (isBundledBuilder((0, npm_package_arg_1.default)(p), pkg_1.default)) {
|
237813
|
-
return false;
|
237814
|
-
}
|
237815
|
-
return true;
|
237816
|
-
});
|
237817
|
-
if (packagesToUpdate.length > 0) {
|
237818
|
-
packagesToUpdate.push(getBuildUtils(packages));
|
237819
|
-
await npmInstall(builderDir, output, packagesToUpdate, true);
|
237820
|
-
const buildersPkgAfter = await (0, fs_extra_1.readJSON)(buildersPkgPath);
|
237821
|
-
const depsAfter = {
|
237822
|
-
...buildersPkgAfter.devDependencies,
|
237823
|
-
...buildersPkgAfter.dependencies,
|
237824
|
-
};
|
237825
|
-
for (const [name, version] of Object.entries(depsAfter)) {
|
237826
|
-
if (version !== depsBefore[name]) {
|
237827
|
-
output.debug(`Runtime "${name}" updated to version \`${version}\``);
|
237828
|
-
updatedPackages.push(name);
|
237829
|
-
}
|
237830
|
-
}
|
237831
|
-
purgeRequireCache(updatedPackages, builderDir, output);
|
237832
|
-
}
|
237833
|
-
return updatedPackages;
|
237834
|
-
}
|
237835
|
-
exports.updateBuilders = updateBuilders;
|
237836
|
-
/**
|
237837
|
-
* Get a builder from the cache directory.
|
237838
|
-
*/
|
237839
|
-
async function getBuilder(builderPkg, output, builderDir, isRetry = false) {
|
237840
|
-
let builderWithPkg = localBuilders[builderPkg];
|
237841
|
-
if (!builderWithPkg) {
|
237842
|
-
if (!builderDir) {
|
237843
|
-
builderDir = await exports.builderDirPromise;
|
237844
|
-
}
|
237845
|
-
let requirePath;
|
237846
|
-
const parsed = (0, npm_package_arg_1.default)(builderPkg);
|
237847
|
-
// First check if it's a bundled Runtime in Vercel CLI's `node_modules`
|
237848
|
-
const bundledBuilder = isBundledBuilder(parsed, pkg_1.default);
|
237849
|
-
if (bundledBuilder && parsed.name) {
|
237850
|
-
requirePath = parsed.name;
|
237851
|
-
}
|
237852
|
-
else {
|
237853
|
-
const buildersPkg = await (0, fs_extra_1.readJSON)((0, path_1.join)(builderDir, 'package.json'));
|
237854
|
-
const pkgName = getPackageName(parsed, buildersPkg) || builderPkg;
|
237855
|
-
requirePath = (0, path_1.join)(builderDir, 'node_modules', pkgName);
|
237856
|
-
}
|
237857
|
-
try {
|
237858
|
-
output.debug(`Requiring runtime: "${requirePath}"`);
|
237859
|
-
const mod = require_(requirePath);
|
237860
|
-
const pkg = require_((0, path_1.join)(requirePath, 'package.json'));
|
237861
|
-
builderWithPkg = {
|
237862
|
-
requirePath,
|
237863
|
-
builder: Object.freeze(mod),
|
237864
|
-
package: Object.freeze(pkg),
|
237865
|
-
};
|
237866
|
-
}
|
237867
|
-
catch (err) {
|
237868
|
-
if ((0, is_error_1.isErrnoException)(err) &&
|
237869
|
-
err.code === 'MODULE_NOT_FOUND' &&
|
237870
|
-
!isRetry) {
|
237871
|
-
output.debug(`Attempted to require ${requirePath}, but it is not installed`);
|
237872
|
-
const pkgSet = new Set([builderPkg]);
|
237873
|
-
await installBuilders(pkgSet, output, builderDir);
|
237874
|
-
// Run `getBuilder()` again now that the builder has been installed
|
237875
|
-
return getBuilder(builderPkg, output, builderDir, true);
|
237876
|
-
}
|
237877
|
-
throw err;
|
237878
|
-
}
|
237879
|
-
// If it's a bundled builder, then cache the require call
|
237880
|
-
if (bundledBuilder) {
|
237881
|
-
localBuilders[builderPkg] = builderWithPkg;
|
237882
|
-
}
|
237883
|
-
}
|
237884
|
-
return builderWithPkg;
|
237885
|
-
}
|
237886
|
-
exports.getBuilder = getBuilder;
|
237887
|
-
function isBundledBuilder(parsed, { dependencies = {} }) {
|
237888
|
-
if (!parsed.name) {
|
237889
|
-
return false;
|
237890
|
-
}
|
237891
|
-
const inCliDependencyList = !!dependencies[parsed.name];
|
237892
|
-
const inScope = parsed.scope === '@vercel';
|
237893
|
-
const isVersionedReference = ['tag', 'version', 'range'].includes(parsed.type);
|
237894
|
-
return inCliDependencyList && inScope && isVersionedReference;
|
237895
|
-
}
|
237896
|
-
exports.isBundledBuilder = isBundledBuilder;
|
237897
|
-
function getPackageName(parsed, buildersPkg) {
|
237898
|
-
if (registryTypes.has(parsed.type)) {
|
237899
|
-
return parsed.name;
|
237900
|
-
}
|
237901
|
-
const deps = {
|
237902
|
-
...buildersPkg.devDependencies,
|
237903
|
-
...buildersPkg.dependencies,
|
237904
|
-
};
|
237905
|
-
for (const [name, dep] of Object.entries(deps)) {
|
237906
|
-
if (dep === parsed.raw || (0, path_1.basename)(dep) === (0, path_1.basename)(parsed.raw)) {
|
237907
|
-
return name;
|
237908
|
-
}
|
237909
|
-
}
|
237910
|
-
return null;
|
237911
|
-
}
|
237912
|
-
function purgeRequireCache(packages, builderDir, output) {
|
237913
|
-
// The `require()` cache for the builder's assets must be purged
|
237914
|
-
const packagesPaths = packages.map(b => (0, path_1.join)(builderDir, 'node_modules', b));
|
237915
|
-
for (const id of Object.keys(require_.cache)) {
|
237916
|
-
for (const path of packagesPaths) {
|
237917
|
-
if (id.startsWith(path)) {
|
237918
|
-
output.debug(`Purging require cache for "${id}"`);
|
237919
|
-
delete require_.cache[id];
|
237920
|
-
}
|
237921
|
-
}
|
237922
|
-
}
|
237923
|
-
}
|
237924
|
-
|
237925
|
-
|
237926
237707
|
/***/ }),
|
237927
237708
|
|
237928
237709
|
/***/ 37655:
|
@@ -237950,10 +237731,10 @@ const highlight_1 = __importDefault(__webpack_require__(8199));
|
|
237950
237731
|
const tree_kill_1 = __webpack_require__(21780);
|
237951
237732
|
const path_helpers_1 = __webpack_require__(73250);
|
237952
237733
|
const errors_ts_1 = __webpack_require__(60156);
|
237953
|
-
const builder_cache_1 = __webpack_require__(30770);
|
237954
237734
|
const routing_utils_1 = __webpack_require__(72948);
|
237955
237735
|
const get_update_command_1 = __importDefault(__webpack_require__(64222));
|
237956
237736
|
const pkg_name_1 = __webpack_require__(98106);
|
237737
|
+
const import_builders_1 = __webpack_require__(57049);
|
237957
237738
|
async function createBuildProcess(match, envConfigs, workPath, output) {
|
237958
237739
|
output.debug(`Creating build process for "${match.entrypoint}"`);
|
237959
237740
|
const builderWorkerPath = (0, path_1.join)(__dirname, 'builder-worker.js');
|
@@ -237987,20 +237768,21 @@ async function createBuildProcess(match, envConfigs, workPath, output) {
|
|
237987
237768
|
});
|
237988
237769
|
}
|
237989
237770
|
async function executeBuild(vercelConfig, devServer, files, match, requestPath, isInitialBuild, filesChanged, filesRemoved) {
|
237990
|
-
const { builderWithPkg: {
|
237991
|
-
const { entrypoint } = match;
|
237771
|
+
const { builderWithPkg: { path: requirePath, builder, pkg }, } = match;
|
237772
|
+
const { entrypoint, use } = match;
|
237773
|
+
const isStatic = (0, fs_detectors_1.isStaticRuntime)(use);
|
237992
237774
|
const { envConfigs, cwd: workPath, devCacheDir } = devServer;
|
237993
237775
|
const debug = devServer.output.isDebugEnabled();
|
237994
237776
|
const startTime = Date.now();
|
237995
|
-
const showBuildTimestamp = !
|
237777
|
+
const showBuildTimestamp = !isStatic && (!isInitialBuild || debug);
|
237996
237778
|
if (showBuildTimestamp) {
|
237997
|
-
devServer.output.log(`Building ${
|
237779
|
+
devServer.output.log(`Building ${use}:${entrypoint}`);
|
237998
237780
|
devServer.output.debug(`Using \`${pkg.name}${pkg.version ? `@${pkg.version}` : ''}\``);
|
237999
237781
|
}
|
238000
237782
|
const config = match.config || {};
|
238001
237783
|
let result;
|
238002
237784
|
let { buildProcess } = match;
|
238003
|
-
if (!
|
237785
|
+
if (!isStatic && !buildProcess) {
|
238004
237786
|
buildProcess = await createBuildProcess(match, envConfigs, workPath, devServer.output);
|
238005
237787
|
}
|
238006
237788
|
const buildOptions = {
|
@@ -238066,9 +237848,6 @@ async function executeBuild(vercelConfig, devServer, files, match, requestPath,
|
|
238066
237848
|
output: buildResultOrOutputs,
|
238067
237849
|
routes: [],
|
238068
237850
|
watch: [],
|
238069
|
-
distPath: typeof buildResultOrOutputs.distPath === 'string'
|
238070
|
-
? buildResultOrOutputs.distPath
|
238071
|
-
: undefined,
|
238072
237851
|
};
|
238073
237852
|
}
|
238074
237853
|
else if (builder.version === 2) {
|
@@ -238213,7 +237992,7 @@ async function executeBuild(vercelConfig, devServer, files, match, requestPath,
|
|
238213
237992
|
Object.assign(match.buildOutput, result.output);
|
238214
237993
|
if (showBuildTimestamp) {
|
238215
237994
|
const endTime = Date.now();
|
238216
|
-
devServer.output.log(`Built ${
|
237995
|
+
devServer.output.log(`Built ${use}:${entrypoint} [${(0, ms_1.default)(endTime - startTime)}]`);
|
238217
237996
|
}
|
238218
237997
|
}
|
238219
237998
|
exports.executeBuild = executeBuild;
|
@@ -238226,6 +238005,8 @@ async function getBuildMatches(vercelConfig, cwd, output, devServer, fileList) {
|
|
238226
238005
|
}
|
238227
238006
|
const noMatches = [];
|
238228
238007
|
const builds = vercelConfig.builds || [{ src: '**', use: '@vercel/static' }];
|
238008
|
+
const builderSpecs = new Set(builds.map(b => b.use).filter(Boolean));
|
238009
|
+
const buildersWithPkgs = await (0, import_builders_1.importBuilders)(builderSpecs, cwd, output);
|
238229
238010
|
for (const buildConfig of builds) {
|
238230
238011
|
let { src = '**', use, config = {} } = buildConfig;
|
238231
238012
|
if (!use) {
|
@@ -238252,6 +238033,7 @@ async function getBuildMatches(vercelConfig, cwd, output, devServer, fileList) {
|
|
238252
238033
|
}
|
238253
238034
|
for (const file of files) {
|
238254
238035
|
src = (0, path_helpers_1.relative)(cwd, file);
|
238036
|
+
const entrypoint = mapToEntrypoint.get(src) || src;
|
238255
238037
|
// Remove the output directory prefix
|
238256
238038
|
if (config.zeroConfig && config.outputDirectory) {
|
238257
238039
|
const outputMatch = config.outputDirectory + '/';
|
@@ -238259,11 +238041,14 @@ async function getBuildMatches(vercelConfig, cwd, output, devServer, fileList) {
|
|
238259
238041
|
src = src.slice(outputMatch.length);
|
238260
238042
|
}
|
238261
238043
|
}
|
238262
|
-
const builderWithPkg =
|
238044
|
+
const builderWithPkg = buildersWithPkgs.get(use);
|
238045
|
+
if (!builderWithPkg) {
|
238046
|
+
throw new Error(`Failed to load Builder "${use}"`);
|
238047
|
+
}
|
238263
238048
|
matches.push({
|
238264
238049
|
...buildConfig,
|
238265
238050
|
src,
|
238266
|
-
entrypoint
|
238051
|
+
entrypoint,
|
238267
238052
|
builderWithPkg,
|
238268
238053
|
buildOutput: {},
|
238269
238054
|
buildResults: new Map(),
|
@@ -238488,6 +238273,7 @@ exports.default = getMimeType;
|
|
238488
238273
|
"use strict";
|
238489
238274
|
|
238490
238275
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
238276
|
+
exports.replaceLocalhost = exports.parseListen = void 0;
|
238491
238277
|
const url_1 = __webpack_require__(78835);
|
238492
238278
|
function parseListen(str, defaultPort = 3000) {
|
238493
238279
|
let port = Number(str);
|
@@ -238527,7 +238313,11 @@ function parseListen(str, defaultPort = 3000) {
|
|
238527
238313
|
throw new Error(`Unknown \`--listen\` scheme (protocol): ${url.protocol}`);
|
238528
238314
|
}
|
238529
238315
|
}
|
238530
|
-
exports.
|
238316
|
+
exports.parseListen = parseListen;
|
238317
|
+
function replaceLocalhost(address) {
|
238318
|
+
return address.replace('[::]', 'localhost').replace('0.0.0.0', 'localhost');
|
238319
|
+
}
|
238320
|
+
exports.replaceLocalhost = replaceLocalhost;
|
238531
238321
|
|
238532
238322
|
|
238533
238323
|
/***/ }),
|
@@ -238826,7 +238616,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
238826
238616
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
238827
238617
|
};
|
238828
238618
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
238829
|
-
const ms_1 = __importDefault(__webpack_require__(80040));
|
238830
238619
|
const url_1 = __importStar(__webpack_require__(78835));
|
238831
238620
|
const http_1 = __importDefault(__webpack_require__(98605));
|
238832
238621
|
const fs_extra_1 = __importDefault(__webpack_require__(45392));
|
@@ -238869,7 +238658,6 @@ const router_1 = __webpack_require__(84369);
|
|
238869
238658
|
const mime_type_1 = __importDefault(__webpack_require__(12165));
|
238870
238659
|
const builder_1 = __webpack_require__(37655);
|
238871
238660
|
const errors_1 = __webpack_require__(92586);
|
238872
|
-
const builder_cache_1 = __webpack_require__(30770);
|
238873
238661
|
// HTML templates
|
238874
238662
|
const error_1 = __importDefault(__webpack_require__(97736));
|
238875
238663
|
const error_base_1 = __importDefault(__webpack_require__(85143));
|
@@ -238883,6 +238671,7 @@ const parse_query_string_1 = __webpack_require__(40165);
|
|
238883
238671
|
const is_error_1 = __webpack_require__(11026);
|
238884
238672
|
const is_url_1 = __importDefault(__webpack_require__(4567));
|
238885
238673
|
const project_settings_1 = __webpack_require__(42697);
|
238674
|
+
const parse_listen_1 = __webpack_require__(1919);
|
238886
238675
|
const frontendRuntimeSet = new Set(frameworks_1.default.map(f => f.useRuntime?.use || '@vercel/static-build'));
|
238887
238676
|
function sortBuilders(buildA, buildB) {
|
238888
238677
|
if (buildA && buildA.use && (0, fs_detectors_1.isOfficialRuntime)('static-build', buildA.use)) {
|
@@ -239018,8 +238807,9 @@ class DevServer {
|
|
239018
238807
|
// the middleware server for every HTTP request?
|
239019
238808
|
const { envConfigs, files, devCacheDir, cwd: workPath } = this;
|
239020
238809
|
try {
|
239021
|
-
|
239022
|
-
|
238810
|
+
const { builder } = middleware.builderWithPkg;
|
238811
|
+
if (builder.version === 3) {
|
238812
|
+
startMiddlewareResult = await builder.startDevServer?.({
|
239023
238813
|
files,
|
239024
238814
|
entrypoint: middleware.entrypoint,
|
239025
238815
|
workPath,
|
@@ -239033,6 +238823,7 @@ class DevServer {
|
|
239033
238823
|
buildEnv: { ...envConfigs.buildEnv },
|
239034
238824
|
},
|
239035
238825
|
});
|
238826
|
+
}
|
239036
238827
|
if (startMiddlewareResult) {
|
239037
238828
|
const { port, pid } = startMiddlewareResult;
|
239038
238829
|
middlewarePid = pid;
|
@@ -239105,8 +238896,7 @@ class DevServer {
|
|
239105
238896
|
if ((0, is_url_1.default)(rewritePath)) {
|
239106
238897
|
const rewriteUrlParsed = new url_1.URL(rewritePath);
|
239107
238898
|
// `this.address` already has localhost normalized from ip4 and ip6 values
|
239108
|
-
|
239109
|
-
if (devServerParsed.origin === rewriteUrlParsed.origin) {
|
238899
|
+
if (this.address.origin === rewriteUrlParsed.origin) {
|
239110
238900
|
// remove origin, leaving the path
|
239111
238901
|
req.url =
|
239112
238902
|
rewritePath.slice(rewriteUrlParsed.origin.length) || '/';
|
@@ -239291,8 +239081,8 @@ class DevServer {
|
|
239291
239081
|
// up a single-serve dev HTTP server that vercel dev will proxy this HTTP request
|
239292
239082
|
// to. Once the proxied request is finished, vercel dev shuts down the dev
|
239293
239083
|
// server child process.
|
239294
|
-
const { builder,
|
239295
|
-
if (typeof builder.startDevServer === 'function') {
|
239084
|
+
const { builder, pkg: builderPkg } = match.builderWithPkg;
|
239085
|
+
if (builder.version === 3 && typeof builder.startDevServer === 'function') {
|
239296
239086
|
let devServerResult = null;
|
239297
239087
|
try {
|
239298
239088
|
const { envConfigs, files, devCacheDir, cwd: workPath } = this;
|
@@ -239479,7 +239269,6 @@ class DevServer {
|
|
239479
239269
|
this.systemEnvValues = options.systemEnvValues || [];
|
239480
239270
|
this.projectEnvs = options.projectEnvs || [];
|
239481
239271
|
this.files = {};
|
239482
|
-
this.address = '';
|
239483
239272
|
this.originalProjectSettings = options.projectSettings;
|
239484
239273
|
this.projectSettings = options.projectSettings;
|
239485
239274
|
this.caseSensitive = false;
|
@@ -239503,7 +239292,6 @@ class DevServer {
|
|
239503
239292
|
this.vercelConfigWarning = false;
|
239504
239293
|
this.getVercelConfigPromise = null;
|
239505
239294
|
this.blockingBuildsPromise = null;
|
239506
|
-
this.updateBuildersPromise = null;
|
239507
239295
|
this.startPromise = null;
|
239508
239296
|
this.watchAggregationId = null;
|
239509
239297
|
this.watchAggregationEvents = [];
|
@@ -239512,6 +239300,12 @@ class DevServer {
|
|
239512
239300
|
this.podId = Math.random().toString(32).slice(-5);
|
239513
239301
|
this.devServerPids = new Set();
|
239514
239302
|
}
|
239303
|
+
get address() {
|
239304
|
+
if (!this._address) {
|
239305
|
+
throw new Error('Invalid access to `address` because `start` has not yet populated `this.address`.');
|
239306
|
+
}
|
239307
|
+
return this._address;
|
239308
|
+
}
|
239515
239309
|
async exit(code = 1) {
|
239516
239310
|
await this.stop(code);
|
239517
239311
|
process.exit(code);
|
@@ -239701,25 +239495,6 @@ class DevServer {
|
|
239701
239495
|
return sortBuilders(matchA[1], matchB[1]);
|
239702
239496
|
}));
|
239703
239497
|
}
|
239704
|
-
async invalidateBuildMatches(vercelConfig, updatedBuilders) {
|
239705
|
-
if (updatedBuilders.length === 0) {
|
239706
|
-
this.output.debug('No builders were updated');
|
239707
|
-
return;
|
239708
|
-
}
|
239709
|
-
// Delete any build matches that have the old builder required already
|
239710
|
-
for (const buildMatch of this.buildMatches.values()) {
|
239711
|
-
const { src, builderWithPkg: { package: pkg }, } = buildMatch;
|
239712
|
-
if ((0, fs_detectors_1.isOfficialRuntime)('static', pkg.name))
|
239713
|
-
continue;
|
239714
|
-
if (pkg.name && updatedBuilders.includes(pkg.name)) {
|
239715
|
-
(0, builder_1.shutdownBuilder)(buildMatch, this.output);
|
239716
|
-
this.buildMatches.delete(src);
|
239717
|
-
this.output.debug(`Invalidated build match for "${src}"`);
|
239718
|
-
}
|
239719
|
-
}
|
239720
|
-
// Re-add the build matches that were just removed, but with the new builder
|
239721
|
-
await this.updateBuildMatches(vercelConfig);
|
239722
|
-
}
|
239723
239498
|
async getLocalEnv(fileName, base) {
|
239724
239499
|
// TODO: use the file watcher to only invalidate the env `dotfile`
|
239725
239500
|
// once a change to the `fileName` occurs
|
@@ -239873,7 +239648,7 @@ class DevServer {
|
|
239873
239648
|
let allEnv = { ...buildEnv, ...runEnv };
|
239874
239649
|
// If no .env/.build.env is present, use cloud environment variables
|
239875
239650
|
if (Object.keys(allEnv).length === 0) {
|
239876
|
-
const cloudEnv = (0, expose_system_envs_1.default)(this.projectEnvs || [], this.systemEnvValues || [], this.projectSettings?.autoExposeSystemEnvs,
|
239651
|
+
const cloudEnv = (0, expose_system_envs_1.default)(this.projectEnvs || [], this.systemEnvValues || [], this.projectSettings?.autoExposeSystemEnvs, this.address.host);
|
239877
239652
|
allEnv = { ...cloudEnv };
|
239878
239653
|
runEnv = { ...cloudEnv };
|
239879
239654
|
buildEnv = { ...cloudEnv };
|
@@ -239978,7 +239753,7 @@ class DevServer {
|
|
239978
239753
|
injectSystemValuesInDotenv(env) {
|
239979
239754
|
for (const name of Object.keys(env)) {
|
239980
239755
|
if (name === 'VERCEL_URL') {
|
239981
|
-
env['VERCEL_URL'] =
|
239756
|
+
env['VERCEL_URL'] = this.address.host;
|
239982
239757
|
}
|
239983
239758
|
else if (name === 'VERCEL_REGION') {
|
239984
239759
|
env['VERCEL_REGION'] = 'dev1';
|
@@ -240039,9 +239814,7 @@ class DevServer {
|
|
240039
239814
|
}
|
240040
239815
|
}
|
240041
239816
|
}
|
240042
|
-
this.
|
240043
|
-
.replace('[::]', 'localhost')
|
240044
|
-
.replace('127.0.0.1', 'localhost');
|
239817
|
+
this._address = new url_1.URL((0, parse_listen_1.replaceLocalhost)(address));
|
240045
239818
|
const vercelConfig = await this.getVercelConfig();
|
240046
239819
|
const devCommandPromise = this.runDevCommand();
|
240047
239820
|
const files = await (0, get_files_1.staticFiles)(this.cwd, { output: this.output });
|
@@ -240055,25 +239828,7 @@ class DevServer {
|
|
240055
239828
|
this.files[extensionless] = new build_utils_1.FileFsRef({ mode, fsPath });
|
240056
239829
|
}
|
240057
239830
|
}
|
240058
|
-
const builders = new Set((vercelConfig.builds || [])
|
240059
|
-
.filter((b) => b.use)
|
240060
|
-
.map((b) => b.use));
|
240061
|
-
await (0, builder_cache_1.installBuilders)(builders, this.output);
|
240062
239831
|
await this.updateBuildMatches(vercelConfig, true);
|
240063
|
-
// Updating builders happens lazily, and any builders that were updated
|
240064
|
-
// get their "build matches" invalidated so that the new version is used.
|
240065
|
-
this.updateBuildersTimeout = setTimeout(() => {
|
240066
|
-
this.updateBuildersPromise = (0, builder_cache_1.updateBuilders)(builders, this.output)
|
240067
|
-
.then(updatedBuilders => {
|
240068
|
-
this.updateBuildersPromise = null;
|
240069
|
-
this.invalidateBuildMatches(vercelConfig, updatedBuilders);
|
240070
|
-
})
|
240071
|
-
.catch(err => {
|
240072
|
-
this.updateBuildersPromise = null;
|
240073
|
-
this.output.prettyError(err);
|
240074
|
-
this.output.debug(err.stack);
|
240075
|
-
});
|
240076
|
-
}, (0, ms_1.default)('30s'));
|
240077
239832
|
// Builders that do not define a `shouldServe()` function need to be
|
240078
239833
|
// executed at boot-up time in order to get the initial assets and/or routes
|
240079
239834
|
// that can be served by the builder.
|
@@ -240123,20 +239878,22 @@ class DevServer {
|
|
240123
239878
|
this.proxy.ws(req, socket, head, { target });
|
240124
239879
|
});
|
240125
239880
|
await devCommandPromise;
|
240126
|
-
|
239881
|
+
let addressFormatted = this.address.toString();
|
239882
|
+
if (this.address.pathname === '/' && this.address.protocol === 'http:') {
|
239883
|
+
// log address without trailing slash to maintain backwards compatibility
|
239884
|
+
addressFormatted = addressFormatted.replace(/\/$/, '');
|
239885
|
+
}
|
239886
|
+
this.output.ready(`Available at ${(0, link_1.default)(addressFormatted)}`);
|
240127
239887
|
}
|
240128
239888
|
/**
|
240129
239889
|
* Shuts down the `vercel dev` server, and cleans up any temporary resources.
|
240130
239890
|
*/
|
240131
239891
|
async stop(exitCode) {
|
240132
|
-
const { devProcess } = this;
|
240133
|
-
const { debug } = this.output;
|
240134
239892
|
if (this.stopping)
|
240135
239893
|
return;
|
240136
239894
|
this.stopping = true;
|
240137
|
-
|
240138
|
-
|
240139
|
-
}
|
239895
|
+
const { devProcess } = this;
|
239896
|
+
const { debug } = this.output;
|
240140
239897
|
const ops = [];
|
240141
239898
|
for (const match of this.buildMatches.values()) {
|
240142
239899
|
ops.push((0, builder_1.shutdownBuilder)(match, this.output));
|
@@ -240149,15 +239906,9 @@ class DevServer {
|
|
240149
239906
|
debug(`Closing file watcher`);
|
240150
239907
|
ops.push(this.watcher.close());
|
240151
239908
|
}
|
240152
|
-
if (this.updateBuildersPromise) {
|
240153
|
-
debug(`Waiting for builders update to complete`);
|
240154
|
-
ops.push(this.updateBuildersPromise);
|
240155
|
-
}
|
240156
239909
|
for (const pid of this.devServerPids) {
|
240157
239910
|
ops.push(this.killBuilderDevServer(pid));
|
240158
239911
|
}
|
240159
|
-
// Ensure that the builders module cache is created
|
240160
|
-
ops.push(builder_cache_1.builderDirPromise);
|
240161
239912
|
try {
|
240162
239913
|
await Promise.all(ops);
|
240163
239914
|
}
|
@@ -240450,7 +240201,7 @@ class DevServer {
|
|
240450
240201
|
}
|
240451
240202
|
this.output.log(`Running Dev Command ${chalk_1.default.cyan.bold(`“${devCommand}”`)}`);
|
240452
240203
|
const port = await (0, get_port_1.default)();
|
240453
|
-
const env = {
|
240204
|
+
const env = (0, build_utils_1.cloneEnv)({
|
240454
240205
|
// Because of child process 'pipe' below, isTTY will be false.
|
240455
240206
|
// Most frameworks use `chalk`/`supports-color` so we enable it anyway.
|
240456
240207
|
FORCE_COLOR: process.stdout.isTTY ? '1' : '0',
|
@@ -240458,10 +240209,9 @@ class DevServer {
|
|
240458
240209
|
// browser window, since it will not be the port that `vc dev`
|
240459
240210
|
// is listening on and thus will be missing Vercel features.
|
240460
240211
|
BROWSER: 'none',
|
240461
|
-
|
240462
|
-
...this.envConfigs.allEnv,
|
240212
|
+
}, process.env, this.envConfigs.allEnv, {
|
240463
240213
|
PORT: `${port}`,
|
240464
|
-
};
|
240214
|
+
});
|
240465
240215
|
// This is necesary so that the dev command in the Project
|
240466
240216
|
// will work cross-platform (especially Windows).
|
240467
240217
|
let command = devCommand
|
@@ -240487,7 +240237,6 @@ class DevServer {
|
|
240487
240237
|
}
|
240488
240238
|
}
|
240489
240239
|
this.output.debug(`Spawning dev command: ${command}`);
|
240490
|
-
const devPort = new url_1.URL(this.address).port;
|
240491
240240
|
const proxyPort = new RegExp(port.toString(), 'g');
|
240492
240241
|
const p = (0, build_utils_1.spawnCommand)(command, {
|
240493
240242
|
stdio: ['inherit', 'pipe', 'pipe'],
|
@@ -240501,7 +240250,7 @@ class DevServer {
|
|
240501
240250
|
p.stderr.pipe(process.stderr);
|
240502
240251
|
p.stdout.setEncoding('utf8');
|
240503
240252
|
p.stdout.on('data', (data) => {
|
240504
|
-
process.stdout.write(data.replace(proxyPort,
|
240253
|
+
process.stdout.write(data.replace(proxyPort, this.address.port));
|
240505
240254
|
});
|
240506
240255
|
p.on('exit', (code, signal) => {
|
240507
240256
|
this.output.debug(`Dev command exited with "${signal || code}"`);
|
@@ -240748,43 +240497,6 @@ function buildMatchEquals(a, b) {
|
|
240748
240497
|
}
|
240749
240498
|
|
240750
240499
|
|
240751
|
-
/***/ }),
|
240752
|
-
|
240753
|
-
/***/ 46241:
|
240754
|
-
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
240755
|
-
|
240756
|
-
"use strict";
|
240757
|
-
|
240758
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
240759
|
-
exports.shouldServe = exports.build = exports.version = void 0;
|
240760
|
-
const build_utils_1 = __webpack_require__(3131);
|
240761
|
-
exports.version = 2;
|
240762
|
-
function build({ files, entrypoint, config: { zeroConfig, outputDirectory }, }) {
|
240763
|
-
const path = zeroConfig && outputDirectory
|
240764
|
-
? `${outputDirectory}/${entrypoint}`
|
240765
|
-
: entrypoint;
|
240766
|
-
return {
|
240767
|
-
output: {
|
240768
|
-
[entrypoint]: files[path],
|
240769
|
-
},
|
240770
|
-
routes: [],
|
240771
|
-
watch: [path],
|
240772
|
-
};
|
240773
|
-
}
|
240774
|
-
exports.build = build;
|
240775
|
-
function shouldServe(_opts) {
|
240776
|
-
const opts = { ..._opts };
|
240777
|
-
let { config: { zeroConfig, outputDirectory }, } = opts;
|
240778
|
-
// Add the output directory prefix
|
240779
|
-
if (zeroConfig && outputDirectory) {
|
240780
|
-
opts.entrypoint = `${outputDirectory}/${opts.entrypoint}`;
|
240781
|
-
opts.requestPath = `${outputDirectory}/${opts.requestPath}`;
|
240782
|
-
}
|
240783
|
-
return (0, build_utils_1.shouldServe)(opts);
|
240784
|
-
}
|
240785
|
-
exports.shouldServe = shouldServe;
|
240786
|
-
|
240787
|
-
|
240788
240500
|
/***/ }),
|
240789
240501
|
|
240790
240502
|
/***/ 97736:
|
@@ -249500,7 +249212,7 @@ module.exports = JSON.parse("{\"application/1d-interleaved-parityfec\":{\"source
|
|
249500
249212
|
/***/ ((module) => {
|
249501
249213
|
|
249502
249214
|
"use strict";
|
249503
|
-
module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.
|
249215
|
+
module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.3.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 --runInBand --bail --forceExit\",\"test-unit\":\"yarn test test/unit/\",\"test-integration-cli\":\"rimraf test/fixtures/integration && ava test/integration.js --serial --fail-fast --verbose\",\"test-integration-dev\":\"yarn 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\":\"5.4.3\",\"@vercel/go\":\"2.2.6\",\"@vercel/hydrogen\":\"0.0.19\",\"@vercel/next\":\"3.1.26\",\"@vercel/node\":\"2.5.15\",\"@vercel/python\":\"3.1.15\",\"@vercel/redwood\":\"1.0.24\",\"@vercel/remix\":\"1.0.25\",\"@vercel/ruby\":\"1.3.32\",\"@vercel/static-build\":\"1.0.24\",\"update-notifier\":\"5.1.0\"},\"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/ansi-escapes\":\"3.0.0\",\"@types/ansi-regex\":\"4.0.0\",\"@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\":\"11.11.0\",\"@types/node-fetch\":\"2.5.10\",\"@types/npm-package-arg\":\"6.1.0\",\"@types/pluralize\":\"0.0.29\",\"@types/psl\":\"1.1.0\",\"@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/client\":\"12.2.5\",\"@vercel/frameworks\":\"1.1.6\",\"@vercel/fs-detectors\":\"3.3.0\",\"@vercel/fun\":\"1.0.4\",\"@vercel/ncc\":\"0.24.0\",\"@zeit/source-map-support\":\"0.6.2\",\"ajv\":\"6.12.2\",\"alpha-sort\":\"2.0.1\",\"ansi-escapes\":\"3.0.0\",\"ansi-regex\":\"3.0.0\",\"arg\":\"5.0.0\",\"async-listen\":\"1.2.0\",\"async-retry\":\"1.1.3\",\"async-sema\":\"2.1.4\",\"ava\":\"2.2.0\",\"boxen\":\"4.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-prompt\":\"0.3.2\",\"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\",\"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\",\"jsonlines\":\"0.1.1\",\"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\":\"5.2.0\",\"stripe\":\"5.1.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.7.4\",\"universal-analytics\":\"0.4.20\",\"utility-types\":\"2.1.0\",\"which\":\"2.0.2\",\"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\"]}}");
|
249504
249216
|
|
249505
249217
|
/***/ }),
|
249506
249218
|
|
@@ -249508,7 +249220,7 @@ module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.2.4\",\"prefe
|
|
249508
249220
|
/***/ ((module) => {
|
249509
249221
|
|
249510
249222
|
"use strict";
|
249511
|
-
module.exports = JSON.parse("{\"name\":\"@vercel/client\",\"version\":\"12.2.
|
249223
|
+
module.exports = JSON.parse("{\"name\":\"@vercel/client\",\"version\":\"12.2.5\",\"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-integration-once\":\"yarn 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\":\"yarn test tests/unit.*test.*\"},\"engines\":{\"node\":\">= 14\"},\"devDependencies\":{\"@types/async-retry\":\"1.4.1\",\"@types/fs-extra\":\"7.0.0\",\"@types/jest\":\"27.4.1\",\"@types/minimatch\":\"3.0.5\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"12.0.4\",\"@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\":\"5.4.3\",\"@vercel/routing-utils\":\"2.0.2\",\"@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\"}}");
|
249512
249224
|
|
249513
249225
|
/***/ }),
|
249514
249226
|
|