@vercel/next 2.8.67-canary.1 → 2.9.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 +2 -2
- package/dist/utils.js +41 -16
- package/package.json +4 -4
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.getMiddlewareBundle = exports.getSourceFilePathFromPage = exports.isDynamicRoute = exports.normalizePage = 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 = void 0;
|
25
|
+
exports.getMiddlewareManifest = exports.getMiddlewareBundle = exports.getSourceFilePathFromPage = exports.isDynamicRoute = exports.normalizePage = 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 = 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"));
|
@@ -1340,27 +1340,44 @@ async function getPrivateOutputs(dir, entries) {
|
|
1340
1340
|
}
|
1341
1341
|
exports.getPrivateOutputs = getPrivateOutputs;
|
1342
1342
|
async function getMiddlewareBundle({ entryPath, outputDirectory, routesManifest, }) {
|
1343
|
+
var _a;
|
1343
1344
|
const middlewareManifest = await getMiddlewareManifest(entryPath, outputDirectory);
|
1344
|
-
|
1345
|
-
|
1346
|
-
|
1345
|
+
const sortedFunctions = [
|
1346
|
+
...(!middlewareManifest
|
1347
|
+
? []
|
1348
|
+
: middlewareManifest.sortedMiddleware.map(key => ({
|
1349
|
+
key,
|
1350
|
+
edgeFunction: middlewareManifest === null || middlewareManifest === void 0 ? void 0 : middlewareManifest.middleware[key],
|
1351
|
+
type: 'middleware',
|
1352
|
+
}))),
|
1353
|
+
...Object.entries((_a = middlewareManifest === null || middlewareManifest === void 0 ? void 0 : middlewareManifest.functions) !== null && _a !== void 0 ? _a : {}).map(([key, edgeFunction]) => {
|
1354
|
+
return {
|
1355
|
+
key,
|
1356
|
+
edgeFunction,
|
1357
|
+
type: 'function',
|
1358
|
+
};
|
1359
|
+
}),
|
1360
|
+
];
|
1361
|
+
if (middlewareManifest && sortedFunctions.length > 0) {
|
1362
|
+
const workerConfigs = await Promise.all(sortedFunctions.map(async ({ key, edgeFunction, type }) => {
|
1347
1363
|
try {
|
1348
|
-
const wrappedModuleSource = await (0, get_edge_function_source_1.getNextjsEdgeFunctionSource)(
|
1349
|
-
name:
|
1364
|
+
const wrappedModuleSource = await (0, get_edge_function_source_1.getNextjsEdgeFunctionSource)(edgeFunction.files, {
|
1365
|
+
name: edgeFunction.name,
|
1350
1366
|
staticRoutes: routesManifest.staticRoutes,
|
1351
1367
|
dynamicRoutes: routesManifest.dynamicRoutes.filter(r => !('isMiddleware' in r)),
|
1352
1368
|
nextConfig: {
|
1353
1369
|
basePath: routesManifest.basePath,
|
1354
1370
|
i18n: routesManifest.i18n,
|
1355
1371
|
},
|
1356
|
-
}, path_1.default.resolve(entryPath, outputDirectory),
|
1372
|
+
}, path_1.default.resolve(entryPath, outputDirectory), edgeFunction.wasm);
|
1357
1373
|
return {
|
1358
|
-
|
1374
|
+
type,
|
1375
|
+
page: edgeFunction.page,
|
1359
1376
|
edgeFunction: (() => {
|
1360
1377
|
var _a;
|
1361
1378
|
const { source, map } = wrappedModuleSource.sourceAndMap();
|
1362
1379
|
const transformedMap = (0, sourcemapped_1.stringifySourceMap)(transformSourceMap(map));
|
1363
|
-
const wasmFiles = ((_a =
|
1380
|
+
const wasmFiles = ((_a = edgeFunction.wasm) !== null && _a !== void 0 ? _a : []).reduce((acc, { filePath, name }) => {
|
1364
1381
|
const fullFilePath = path_1.default.join(entryPath, outputDirectory, filePath);
|
1365
1382
|
acc[`wasm/${name}.wasm`] = new build_utils_1.FileFsRef({
|
1366
1383
|
mode: 0o644,
|
@@ -1371,7 +1388,7 @@ async function getMiddlewareBundle({ entryPath, outputDirectory, routesManifest,
|
|
1371
1388
|
}, {});
|
1372
1389
|
return new build_utils_1.EdgeFunction({
|
1373
1390
|
deploymentTarget: 'v8-worker',
|
1374
|
-
name:
|
1391
|
+
name: edgeFunction.name,
|
1375
1392
|
files: {
|
1376
1393
|
'index.js': new build_utils_1.FileBlob({
|
1377
1394
|
data: source,
|
@@ -1388,10 +1405,10 @@ async function getMiddlewareBundle({ entryPath, outputDirectory, routesManifest,
|
|
1388
1405
|
...wasmFiles,
|
1389
1406
|
},
|
1390
1407
|
entrypoint: 'index.js',
|
1391
|
-
envVarsInUse:
|
1408
|
+
envVarsInUse: edgeFunction.env,
|
1392
1409
|
});
|
1393
1410
|
})(),
|
1394
|
-
routeSrc: getRouteSrc(
|
1411
|
+
routeSrc: getRouteSrc(edgeFunction, routesManifest),
|
1395
1412
|
};
|
1396
1413
|
}
|
1397
1414
|
catch (e) {
|
@@ -1406,13 +1423,20 @@ async function getMiddlewareBundle({ entryPath, outputDirectory, routesManifest,
|
|
1406
1423
|
};
|
1407
1424
|
for (const worker of workerConfigs.values()) {
|
1408
1425
|
const edgeFile = worker.edgeFunction.name;
|
1409
|
-
|
1410
|
-
|
1426
|
+
const shortPath = edgeFile.replace(/^pages\//, '');
|
1427
|
+
worker.edgeFunction.name = shortPath;
|
1428
|
+
source.edgeFunctions[shortPath] = worker.edgeFunction;
|
1411
1429
|
const route = {
|
1412
1430
|
continue: true,
|
1413
|
-
override: true,
|
1414
|
-
middlewarePath: edgeFile,
|
1415
1431
|
src: worker.routeSrc,
|
1432
|
+
...(worker.type === 'middleware'
|
1433
|
+
? {
|
1434
|
+
middlewarePath: shortPath,
|
1435
|
+
override: true,
|
1436
|
+
}
|
1437
|
+
: {
|
1438
|
+
dest: shortPath,
|
1439
|
+
}),
|
1416
1440
|
};
|
1417
1441
|
if (routesManifest.version > 3 && isDynamicRoute(worker.page)) {
|
1418
1442
|
source.dynamicRouteMap.set(worker.page, route);
|
@@ -1447,6 +1471,7 @@ async function getMiddlewareManifest(entryPath, outputDirectory) {
|
|
1447
1471
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
1448
1472
|
return require(middlewareManifestPath);
|
1449
1473
|
}
|
1474
|
+
exports.getMiddlewareManifest = getMiddlewareManifest;
|
1450
1475
|
/**
|
1451
1476
|
* For an object containing middleware info and a routes manifest this will
|
1452
1477
|
* generate a string with the route that will activate the middleware on
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@vercel/next",
|
3
|
-
"version": "2.
|
3
|
+
"version": "2.9.0",
|
4
4
|
"license": "MIT",
|
5
5
|
"main": "./dist/index",
|
6
6
|
"homepage": "https://vercel.com/docs/runtimes#official-runtimes/next-js",
|
@@ -45,8 +45,8 @@
|
|
45
45
|
"@types/semver": "6.0.0",
|
46
46
|
"@types/text-table": "0.2.1",
|
47
47
|
"@types/webpack-sources": "3.2.0",
|
48
|
-
"@vercel/build-utils": "3.1.1
|
49
|
-
"@vercel/nft": "0.19.
|
48
|
+
"@vercel/build-utils": "3.1.1",
|
49
|
+
"@vercel/nft": "0.19.1",
|
50
50
|
"@vercel/routing-utils": "1.13.3",
|
51
51
|
"async-sema": "3.0.1",
|
52
52
|
"buffer-crc32": "0.2.13",
|
@@ -70,5 +70,5 @@
|
|
70
70
|
"typescript": "4.5.2",
|
71
71
|
"webpack-sources": "3.2.3"
|
72
72
|
},
|
73
|
-
"gitHead": "
|
73
|
+
"gitHead": "ad436313e155b0e07cb14475e11c5c12e1b36f75"
|
74
74
|
}
|