@vercel/next 3.4.7 → 3.5.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 +49 -7
- package/dist/server-build.js +5 -0
- package/dist/utils.js +28 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
@@ -40896,10 +40896,7 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
40896
40896
|
outputDirectory,
|
40897
40897
|
appPathRoutesManifest,
|
40898
40898
|
});
|
40899
|
-
const
|
40900
|
-
.replace(/\\/g, '/')
|
40901
|
-
.match(/(serverless|server)\/pages\/api(\/|\.js$)/);
|
40902
|
-
const canUsePreviewMode = Object.keys(pages).some(page => isApiPage(pages[page].fsPath));
|
40899
|
+
const canUsePreviewMode = Object.keys(pages).some(page => (0, utils_1.isApiPage)(pages[page].fsPath));
|
40903
40900
|
staticPages = await (0, utils_1.filterStaticPages)(await (0, build_utils_1.glob)('**/*.html', pagesDir), dynamicPages, entryDirectory, exports.htmlContentType, prerenderManifest, routesManifest);
|
40904
40901
|
hasStatic500 = !!staticPages[path_1.default.posix.join(entryDirectory, '500')];
|
40905
40902
|
// this can be either 404.html in latest versions
|
@@ -41109,7 +41106,7 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41109
41106
|
const route = `/${page.replace(/\.js$/, '')}`;
|
41110
41107
|
if (route === '/_error' && static404Page)
|
41111
41108
|
continue;
|
41112
|
-
if (isApiPage(pagePath)) {
|
41109
|
+
if ((0, utils_1.isApiPage)(pagePath)) {
|
41113
41110
|
apiPages.push(page);
|
41114
41111
|
}
|
41115
41112
|
else if (!nonLambdaSsgPages.has(route)) {
|
@@ -41214,6 +41211,9 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41214
41211
|
lambdaCompressedByteLimit,
|
41215
41212
|
internalPages: [],
|
41216
41213
|
});
|
41214
|
+
for (const group of initialApiLambdaGroups) {
|
41215
|
+
group.isApiLambda = true;
|
41216
|
+
}
|
41217
41217
|
(0, build_utils_1.debug)(JSON.stringify({
|
41218
41218
|
apiLambdaGroups: initialApiLambdaGroups.map(group => ({
|
41219
41219
|
pages: group.pages,
|
@@ -41250,7 +41250,7 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41250
41250
|
const pageFileName = path_1.default.normalize(path_1.default.relative(workPath, pages[page].fsPath));
|
41251
41251
|
const pathname = page.replace(/\.js$/, '');
|
41252
41252
|
const routeIsDynamic = (0, utils_1.isDynamicRoute)(pathname);
|
41253
|
-
routeIsApi = isApiPage(pageFileName);
|
41253
|
+
routeIsApi = (0, utils_1.isApiPage)(pageFileName);
|
41254
41254
|
if (routeIsDynamic) {
|
41255
41255
|
dynamicPages.push((0, utils_1.normalizePage)(pathname));
|
41256
41256
|
}
|
@@ -41366,6 +41366,10 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41366
41366
|
},
|
41367
41367
|
],
|
41368
41368
|
handler: path_1.default.join(path_1.default.relative(baseDir, entryPath), '___next_launcher.cjs'),
|
41369
|
+
operationType: (0, utils_1.getOperationType)({
|
41370
|
+
prerenderManifest,
|
41371
|
+
pageFileName,
|
41372
|
+
}),
|
41369
41373
|
runtime: nodeVersion.runtime,
|
41370
41374
|
nextVersion,
|
41371
41375
|
...lambdaOptions,
|
@@ -41383,6 +41387,7 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41383
41387
|
},
|
41384
41388
|
],
|
41385
41389
|
handler: path_1.default.join(path_1.default.relative(baseDir, entryPath), '___next_launcher.cjs'),
|
41390
|
+
operationType: (0, utils_1.getOperationType)({ pageFileName }),
|
41386
41391
|
runtime: nodeVersion.runtime,
|
41387
41392
|
nextVersion,
|
41388
41393
|
...lambdaOptions,
|
@@ -41521,6 +41526,10 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41521
41526
|
for (const page of groupPageKeys) {
|
41522
41527
|
pageLambdaMap[page] = group.lambdaIdentifier;
|
41523
41528
|
}
|
41529
|
+
const operationType = (0, utils_1.getOperationType)({
|
41530
|
+
group,
|
41531
|
+
prerenderManifest,
|
41532
|
+
});
|
41524
41533
|
lambdas[group.lambdaIdentifier] =
|
41525
41534
|
await (0, utils_1.createLambdaFromPseudoLayers)({
|
41526
41535
|
files: {
|
@@ -41529,6 +41538,7 @@ const build = async ({ files, workPath, repoRootPath, entrypoint, config = {}, m
|
|
41529
41538
|
},
|
41530
41539
|
layers: [group.pseudoLayer],
|
41531
41540
|
handler: path_1.default.join(path_1.default.relative(baseDir, entryPath), '___next_launcher.cjs'),
|
41541
|
+
operationType,
|
41532
41542
|
runtime: nodeVersion.runtime,
|
41533
41543
|
nextVersion,
|
41534
41544
|
});
|
@@ -42788,6 +42798,9 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
42788
42798
|
lambdaCompressedByteLimit,
|
42789
42799
|
internalPages,
|
42790
42800
|
});
|
42801
|
+
for (const group of apiLambdaGroups) {
|
42802
|
+
group.isApiLambda = true;
|
42803
|
+
}
|
42791
42804
|
(0, build_utils_1.debug)(JSON.stringify({
|
42792
42805
|
apiLambdaGroups: apiLambdaGroups.map(group => ({
|
42793
42806
|
pages: group.pages,
|
@@ -42871,6 +42884,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
42871
42884
|
});
|
42872
42885
|
}
|
42873
42886
|
}
|
42887
|
+
const operationType = (0, utils_1.getOperationType)({ group, prerenderManifest });
|
42874
42888
|
const lambda = await (0, utils_1.createLambdaFromPseudoLayers)({
|
42875
42889
|
files: {
|
42876
42890
|
...launcherFiles,
|
@@ -42878,6 +42892,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
42878
42892
|
},
|
42879
42893
|
layers: [group.pseudoLayer, groupPageFiles],
|
42880
42894
|
handler: path_1.default.join(path_1.default.relative(baseDir, requiredServerFilesManifest.appDir || entryPath), '___next_launcher.cjs'),
|
42895
|
+
operationType,
|
42881
42896
|
memory: group.memory,
|
42882
42897
|
runtime: nodeVersion.runtime,
|
42883
42898
|
maxDuration: group.maxDuration,
|
@@ -43635,7 +43650,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
43635
43650
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
43636
43651
|
};
|
43637
43652
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
43638
|
-
exports.upgradeMiddlewareManifest = exports.getMiddlewareManifest = exports.getMiddlewareBundle = exports.getSourceFilePathFromPage = exports.isDynamicRoute = exports.normalizePage = exports.getImagesConfig = exports.getNextConfig = exports.normalizePackageJson = exports.validateEntrypoint = exports.excludeFiles = exports.getPrivateOutputs = exports.updateRouteSrc = exports.getNextServerPath = exports.normalizeIndexOutput = exports.getStaticFiles = exports.onPrerenderRoute = exports.onPrerenderRouteInitial = exports.detectLambdaLimitExceeding = exports.outputFunctionFileSizeInfo = exports.getPageLambdaGroups = exports.MAX_UNCOMPRESSED_LAMBDA_SIZE = exports.addLocaleOrDefault = exports.normalizeLocalePath = exports.getPrerenderManifest = exports.getRequiredServerFilesManifest = exports.getExportStatus = exports.getExportIntent = exports.createLambdaFromPseudoLayers = exports.createPseudoLayer = exports.ExperimentalTraceVersion = exports.collectTracedFiles = exports.getFilesMapFromReasons = exports.filterStaticPages = exports.getImagesManifest = exports.localizeDynamicRoutes = exports.getDynamicRoutes = exports.getRoutesManifest = exports.prettyBytes = exports.MIB = exports.KIB = void 0;
|
43653
|
+
exports.isApiPage = exports.getOperationType = exports.upgradeMiddlewareManifest = exports.getMiddlewareManifest = exports.getMiddlewareBundle = exports.getSourceFilePathFromPage = exports.isDynamicRoute = exports.normalizePage = exports.getImagesConfig = exports.getNextConfig = exports.normalizePackageJson = exports.validateEntrypoint = exports.excludeFiles = exports.getPrivateOutputs = exports.updateRouteSrc = exports.getNextServerPath = exports.normalizeIndexOutput = exports.getStaticFiles = exports.onPrerenderRoute = exports.onPrerenderRouteInitial = exports.detectLambdaLimitExceeding = exports.outputFunctionFileSizeInfo = exports.getPageLambdaGroups = exports.MAX_UNCOMPRESSED_LAMBDA_SIZE = exports.addLocaleOrDefault = exports.normalizeLocalePath = exports.getPrerenderManifest = exports.getRequiredServerFilesManifest = exports.getExportStatus = exports.getExportIntent = exports.createLambdaFromPseudoLayers = exports.createPseudoLayer = exports.ExperimentalTraceVersion = exports.collectTracedFiles = exports.getFilesMapFromReasons = exports.filterStaticPages = exports.getImagesManifest = exports.localizeDynamicRoutes = exports.getDynamicRoutes = exports.getRoutesManifest = exports.prettyBytes = exports.MIB = exports.KIB = void 0;
|
43639
43654
|
const build_utils_1 = __webpack_require__(3445);
|
43640
43655
|
const async_sema_1 = __webpack_require__(7905);
|
43641
43656
|
const buffer_crc32_1 = __importDefault(__webpack_require__(2227));
|
@@ -44473,6 +44488,7 @@ async function getPageLambdaGroups({ entryPath, config, pages, prerenderRoutes,
|
|
44473
44488
|
pages: [page],
|
44474
44489
|
...opts,
|
44475
44490
|
isPrerenders: isPrerenderRoute,
|
44491
|
+
isApiLambda: !!isApiPage(page),
|
44476
44492
|
pseudoLayerBytes: initialPseudoLayer.pseudoLayerBytes,
|
44477
44493
|
pseudoLayerUncompressedBytes: initialPseudoLayerUncompressed,
|
44478
44494
|
pseudoLayer: Object.assign({}, initialPseudoLayer.pseudoLayer),
|
@@ -45314,6 +45330,32 @@ function transformSourceMap(sourcemap) {
|
|
45314
45330
|
});
|
45315
45331
|
return { ...sourcemap, sources };
|
45316
45332
|
}
|
45333
|
+
function getOperationType({ group, prerenderManifest, pageFileName, }) {
|
45334
|
+
if (group?.isApiLambda || isApiPage(pageFileName)) {
|
45335
|
+
return 'API';
|
45336
|
+
}
|
45337
|
+
if (group?.isPrerenders) {
|
45338
|
+
return 'ISR';
|
45339
|
+
}
|
45340
|
+
if (pageFileName && prerenderManifest) {
|
45341
|
+
const { blockingFallbackRoutes = {}, fallbackRoutes = {} } = prerenderManifest;
|
45342
|
+
if (pageFileName in blockingFallbackRoutes ||
|
45343
|
+
pageFileName in fallbackRoutes) {
|
45344
|
+
return 'ISR';
|
45345
|
+
}
|
45346
|
+
}
|
45347
|
+
return 'SSR';
|
45348
|
+
}
|
45349
|
+
exports.getOperationType = getOperationType;
|
45350
|
+
function isApiPage(page) {
|
45351
|
+
if (!page) {
|
45352
|
+
return false;
|
45353
|
+
}
|
45354
|
+
return page
|
45355
|
+
.replace(/\\/g, '/')
|
45356
|
+
.match(/(serverless|server)\/pages\/api(\/|\.js$)/);
|
45357
|
+
}
|
45358
|
+
exports.isApiPage = isApiPage;
|
45317
45359
|
|
45318
45360
|
|
45319
45361
|
/***/ }),
|
package/dist/server-build.js
CHANGED
@@ -412,6 +412,9 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
412
412
|
lambdaCompressedByteLimit,
|
413
413
|
internalPages,
|
414
414
|
});
|
415
|
+
for (const group of apiLambdaGroups) {
|
416
|
+
group.isApiLambda = true;
|
417
|
+
}
|
415
418
|
(0, build_utils_1.debug)(JSON.stringify({
|
416
419
|
apiLambdaGroups: apiLambdaGroups.map(group => ({
|
417
420
|
pages: group.pages,
|
@@ -495,6 +498,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
495
498
|
});
|
496
499
|
}
|
497
500
|
}
|
501
|
+
const operationType = (0, utils_1.getOperationType)({ group, prerenderManifest });
|
498
502
|
const lambda = await (0, utils_1.createLambdaFromPseudoLayers)({
|
499
503
|
files: {
|
500
504
|
...launcherFiles,
|
@@ -502,6 +506,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
502
506
|
},
|
503
507
|
layers: [group.pseudoLayer, groupPageFiles],
|
504
508
|
handler: path_1.default.join(path_1.default.relative(baseDir, requiredServerFilesManifest.appDir || entryPath), '___next_launcher.cjs'),
|
509
|
+
operationType,
|
505
510
|
memory: group.memory,
|
506
511
|
runtime: nodeVersion.runtime,
|
507
512
|
maxDuration: group.maxDuration,
|
package/dist/utils.js
CHANGED
@@ -22,7 +22,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
22
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
23
23
|
};
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
25
|
-
exports.upgradeMiddlewareManifest = exports.getMiddlewareManifest = exports.getMiddlewareBundle = exports.getSourceFilePathFromPage = exports.isDynamicRoute = exports.normalizePage = exports.getImagesConfig = exports.getNextConfig = exports.normalizePackageJson = exports.validateEntrypoint = exports.excludeFiles = exports.getPrivateOutputs = exports.updateRouteSrc = exports.getNextServerPath = exports.normalizeIndexOutput = exports.getStaticFiles = exports.onPrerenderRoute = exports.onPrerenderRouteInitial = exports.detectLambdaLimitExceeding = exports.outputFunctionFileSizeInfo = exports.getPageLambdaGroups = exports.MAX_UNCOMPRESSED_LAMBDA_SIZE = exports.addLocaleOrDefault = exports.normalizeLocalePath = exports.getPrerenderManifest = exports.getRequiredServerFilesManifest = exports.getExportStatus = exports.getExportIntent = exports.createLambdaFromPseudoLayers = exports.createPseudoLayer = exports.ExperimentalTraceVersion = exports.collectTracedFiles = exports.getFilesMapFromReasons = exports.filterStaticPages = exports.getImagesManifest = exports.localizeDynamicRoutes = exports.getDynamicRoutes = exports.getRoutesManifest = exports.prettyBytes = exports.MIB = exports.KIB = void 0;
|
25
|
+
exports.isApiPage = exports.getOperationType = exports.upgradeMiddlewareManifest = exports.getMiddlewareManifest = exports.getMiddlewareBundle = exports.getSourceFilePathFromPage = exports.isDynamicRoute = exports.normalizePage = exports.getImagesConfig = exports.getNextConfig = exports.normalizePackageJson = exports.validateEntrypoint = exports.excludeFiles = exports.getPrivateOutputs = exports.updateRouteSrc = exports.getNextServerPath = exports.normalizeIndexOutput = exports.getStaticFiles = exports.onPrerenderRoute = exports.onPrerenderRouteInitial = exports.detectLambdaLimitExceeding = exports.outputFunctionFileSizeInfo = exports.getPageLambdaGroups = exports.MAX_UNCOMPRESSED_LAMBDA_SIZE = exports.addLocaleOrDefault = exports.normalizeLocalePath = exports.getPrerenderManifest = exports.getRequiredServerFilesManifest = exports.getExportStatus = exports.getExportIntent = exports.createLambdaFromPseudoLayers = exports.createPseudoLayer = exports.ExperimentalTraceVersion = exports.collectTracedFiles = exports.getFilesMapFromReasons = exports.filterStaticPages = exports.getImagesManifest = exports.localizeDynamicRoutes = exports.getDynamicRoutes = exports.getRoutesManifest = exports.prettyBytes = exports.MIB = exports.KIB = void 0;
|
26
26
|
const build_utils_1 = require("@vercel/build-utils");
|
27
27
|
const async_sema_1 = require("async-sema");
|
28
28
|
const buffer_crc32_1 = __importDefault(require("buffer-crc32"));
|
@@ -860,6 +860,7 @@ async function getPageLambdaGroups({ entryPath, config, pages, prerenderRoutes,
|
|
860
860
|
pages: [page],
|
861
861
|
...opts,
|
862
862
|
isPrerenders: isPrerenderRoute,
|
863
|
+
isApiLambda: !!isApiPage(page),
|
863
864
|
pseudoLayerBytes: initialPseudoLayer.pseudoLayerBytes,
|
864
865
|
pseudoLayerUncompressedBytes: initialPseudoLayerUncompressed,
|
865
866
|
pseudoLayer: Object.assign({}, initialPseudoLayer.pseudoLayer),
|
@@ -1701,3 +1702,29 @@ function transformSourceMap(sourcemap) {
|
|
1701
1702
|
});
|
1702
1703
|
return { ...sourcemap, sources };
|
1703
1704
|
}
|
1705
|
+
function getOperationType({ group, prerenderManifest, pageFileName, }) {
|
1706
|
+
if (group?.isApiLambda || isApiPage(pageFileName)) {
|
1707
|
+
return 'API';
|
1708
|
+
}
|
1709
|
+
if (group?.isPrerenders) {
|
1710
|
+
return 'ISR';
|
1711
|
+
}
|
1712
|
+
if (pageFileName && prerenderManifest) {
|
1713
|
+
const { blockingFallbackRoutes = {}, fallbackRoutes = {} } = prerenderManifest;
|
1714
|
+
if (pageFileName in blockingFallbackRoutes ||
|
1715
|
+
pageFileName in fallbackRoutes) {
|
1716
|
+
return 'ISR';
|
1717
|
+
}
|
1718
|
+
}
|
1719
|
+
return 'SSR';
|
1720
|
+
}
|
1721
|
+
exports.getOperationType = getOperationType;
|
1722
|
+
function isApiPage(page) {
|
1723
|
+
if (!page) {
|
1724
|
+
return false;
|
1725
|
+
}
|
1726
|
+
return page
|
1727
|
+
.replace(/\\/g, '/')
|
1728
|
+
.match(/(serverless|server)\/pages\/api(\/|\.js$)/);
|
1729
|
+
}
|
1730
|
+
exports.isApiPage = isApiPage;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@vercel/next",
|
3
|
-
"version": "3.
|
3
|
+
"version": "3.5.0",
|
4
4
|
"license": "MIT",
|
5
5
|
"main": "./dist/index",
|
6
6
|
"homepage": "https://vercel.com/docs/runtimes#official-runtimes/next-js",
|
@@ -71,5 +71,5 @@
|
|
71
71
|
"typescript": "4.5.2",
|
72
72
|
"webpack-sources": "3.2.3"
|
73
73
|
},
|
74
|
-
"gitHead": "
|
74
|
+
"gitHead": "70a53515bd12202f895c369504e2d5be6c9469f4"
|
75
75
|
}
|