@vercel/next 3.2.8 → 3.2.10
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 +30 -6
- package/dist/server-build.js +25 -4
- package/dist/utils.js +4 -2
- package/package.json +4 -4
package/dist/index.js
CHANGED
@@ -43192,6 +43192,7 @@ function replaceSegments(segments, hasItemSegments, destination, isRedirect, int
|
|
43192
43192
|
query[key] = strOrArray.map(str => safelyCompile(unescapeSegments(str), indexes, true));
|
43193
43193
|
}
|
43194
43194
|
else {
|
43195
|
+
// TODO: handle strOrArray is undefined
|
43195
43196
|
query[key] = safelyCompile(unescapeSegments(strOrArray), indexes, true);
|
43196
43197
|
}
|
43197
43198
|
}
|
@@ -46374,6 +46375,21 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
46374
46375
|
}
|
46375
46376
|
}
|
46376
46377
|
}
|
46378
|
+
const rscHeader = routesManifest.rsc?.header?.toLowerCase() || '__rsc__';
|
46379
|
+
const completeDynamicRoutes = [];
|
46380
|
+
if (appDir) {
|
46381
|
+
for (const route of dynamicRoutes) {
|
46382
|
+
completeDynamicRoutes.push(route);
|
46383
|
+
completeDynamicRoutes.push({
|
46384
|
+
...route,
|
46385
|
+
src: route.src.replace(new RegExp((0, escape_string_regexp_1.default)('(?:/)?$')), '(?:\\.rsc)?(?:/)?$'),
|
46386
|
+
dest: route.dest?.replace(/($|\?)/, '.rsc$1'),
|
46387
|
+
});
|
46388
|
+
}
|
46389
|
+
}
|
46390
|
+
else {
|
46391
|
+
completeDynamicRoutes.push(...dynamicRoutes);
|
46392
|
+
}
|
46377
46393
|
return {
|
46378
46394
|
wildcard: wildcardConfig,
|
46379
46395
|
images: imagesManifest?.images?.loader === 'default'
|
@@ -46505,7 +46521,13 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
46505
46521
|
...redirects,
|
46506
46522
|
// middleware comes directly after redirects but before
|
46507
46523
|
// beforeFiles rewrites as middleware is not a "file" route
|
46524
|
+
...(routesManifest?.skipMiddlewareUrlNormalize
|
46525
|
+
? denormalizeNextDataRoute(true)
|
46526
|
+
: []),
|
46508
46527
|
...(isCorrectMiddlewareOrder ? middleware.staticRoutes : []),
|
46528
|
+
...(routesManifest?.skipMiddlewareUrlNormalize
|
46529
|
+
? normalizeNextDataRoute(true)
|
46530
|
+
: []),
|
46509
46531
|
...beforeFilesRewrites,
|
46510
46532
|
// Make sure to 404 for the /404 path itself
|
46511
46533
|
...(i18n
|
@@ -46570,7 +46592,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
46570
46592
|
has: [
|
46571
46593
|
{
|
46572
46594
|
type: 'header',
|
46573
|
-
key:
|
46595
|
+
key: rscHeader,
|
46574
46596
|
},
|
46575
46597
|
],
|
46576
46598
|
dest: path_1.default.posix.join('/', entryDirectory, '/index.rsc'),
|
@@ -46581,7 +46603,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
46581
46603
|
has: [
|
46582
46604
|
{
|
46583
46605
|
type: 'header',
|
46584
|
-
key:
|
46606
|
+
key: rscHeader,
|
46585
46607
|
},
|
46586
46608
|
],
|
46587
46609
|
dest: path_1.default.posix.join('/', entryDirectory, '/$1.rsc'),
|
@@ -46664,7 +46686,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
46664
46686
|
? // when resolving data routes for middleware we need to include
|
46665
46687
|
// all dynamic routes including non-SSG/SSP so that the priority
|
46666
46688
|
// is correct
|
46667
|
-
|
46689
|
+
completeDynamicRoutes
|
46668
46690
|
.map(route => {
|
46669
46691
|
route = Object.assign({}, route);
|
46670
46692
|
let normalizedSrc = route.src;
|
@@ -46710,7 +46732,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
46710
46732
|
: []),
|
46711
46733
|
// Dynamic routes (must come after dataRoutes as dataRoutes are more
|
46712
46734
|
// specific)
|
46713
|
-
...
|
46735
|
+
...completeDynamicRoutes,
|
46714
46736
|
...(isNextDataServerResolving
|
46715
46737
|
? [
|
46716
46738
|
{
|
@@ -48164,6 +48186,8 @@ const onPrerenderRoute = (prerenderRouteArgs) => (routeKey, { isBlocking, isFall
|
|
48164
48186
|
allowQuery = [];
|
48165
48187
|
}
|
48166
48188
|
}
|
48189
|
+
const rscVaryHeader = routesManifest?.rsc?.varyHeader ||
|
48190
|
+
'__rsc__, __next_router_state_tree__, __next_router_prefetch__';
|
48167
48191
|
prerenders[outputPathPage] = new build_utils_1.Prerender({
|
48168
48192
|
expiration: initialRevalidate,
|
48169
48193
|
lambda,
|
@@ -48179,7 +48203,7 @@ const onPrerenderRoute = (prerenderRouteArgs) => (routeKey, { isBlocking, isFall
|
|
48179
48203
|
...(isAppPathRoute
|
48180
48204
|
? {
|
48181
48205
|
initialHeaders: {
|
48182
|
-
vary:
|
48206
|
+
vary: rscVaryHeader,
|
48183
48207
|
},
|
48184
48208
|
}
|
48185
48209
|
: {}),
|
@@ -48200,7 +48224,7 @@ const onPrerenderRoute = (prerenderRouteArgs) => (routeKey, { isBlocking, isFall
|
|
48200
48224
|
? {
|
48201
48225
|
initialHeaders: {
|
48202
48226
|
'content-type': 'application/octet-stream',
|
48203
|
-
vary:
|
48227
|
+
vary: rscVaryHeader,
|
48204
48228
|
},
|
48205
48229
|
}
|
48206
48230
|
: {}),
|
package/dist/server-build.js
CHANGED
@@ -663,6 +663,21 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
663
663
|
}
|
664
664
|
}
|
665
665
|
}
|
666
|
+
const rscHeader = routesManifest.rsc?.header?.toLowerCase() || '__rsc__';
|
667
|
+
const completeDynamicRoutes = [];
|
668
|
+
if (appDir) {
|
669
|
+
for (const route of dynamicRoutes) {
|
670
|
+
completeDynamicRoutes.push(route);
|
671
|
+
completeDynamicRoutes.push({
|
672
|
+
...route,
|
673
|
+
src: route.src.replace(new RegExp((0, escape_string_regexp_1.default)('(?:/)?$')), '(?:\\.rsc)?(?:/)?$'),
|
674
|
+
dest: route.dest?.replace(/($|\?)/, '.rsc$1'),
|
675
|
+
});
|
676
|
+
}
|
677
|
+
}
|
678
|
+
else {
|
679
|
+
completeDynamicRoutes.push(...dynamicRoutes);
|
680
|
+
}
|
666
681
|
return {
|
667
682
|
wildcard: wildcardConfig,
|
668
683
|
images: imagesManifest?.images?.loader === 'default'
|
@@ -794,7 +809,13 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
794
809
|
...redirects,
|
795
810
|
// middleware comes directly after redirects but before
|
796
811
|
// beforeFiles rewrites as middleware is not a "file" route
|
812
|
+
...(routesManifest?.skipMiddlewareUrlNormalize
|
813
|
+
? denormalizeNextDataRoute(true)
|
814
|
+
: []),
|
797
815
|
...(isCorrectMiddlewareOrder ? middleware.staticRoutes : []),
|
816
|
+
...(routesManifest?.skipMiddlewareUrlNormalize
|
817
|
+
? normalizeNextDataRoute(true)
|
818
|
+
: []),
|
798
819
|
...beforeFilesRewrites,
|
799
820
|
// Make sure to 404 for the /404 path itself
|
800
821
|
...(i18n
|
@@ -859,7 +880,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
859
880
|
has: [
|
860
881
|
{
|
861
882
|
type: 'header',
|
862
|
-
key:
|
883
|
+
key: rscHeader,
|
863
884
|
},
|
864
885
|
],
|
865
886
|
dest: path_1.default.posix.join('/', entryDirectory, '/index.rsc'),
|
@@ -870,7 +891,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
870
891
|
has: [
|
871
892
|
{
|
872
893
|
type: 'header',
|
873
|
-
key:
|
894
|
+
key: rscHeader,
|
874
895
|
},
|
875
896
|
],
|
876
897
|
dest: path_1.default.posix.join('/', entryDirectory, '/$1.rsc'),
|
@@ -953,7 +974,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
953
974
|
? // when resolving data routes for middleware we need to include
|
954
975
|
// all dynamic routes including non-SSG/SSP so that the priority
|
955
976
|
// is correct
|
956
|
-
|
977
|
+
completeDynamicRoutes
|
957
978
|
.map(route => {
|
958
979
|
route = Object.assign({}, route);
|
959
980
|
let normalizedSrc = route.src;
|
@@ -999,7 +1020,7 @@ async function serverBuild({ dynamicPages, pagesDir, config = {}, privateOutputs
|
|
999
1020
|
: []),
|
1000
1021
|
// Dynamic routes (must come after dataRoutes as dataRoutes are more
|
1001
1022
|
// specific)
|
1002
|
-
...
|
1023
|
+
...completeDynamicRoutes,
|
1003
1024
|
...(isNextDataServerResolving
|
1004
1025
|
? [
|
1005
1026
|
{
|
package/dist/utils.js
CHANGED
@@ -1233,6 +1233,8 @@ const onPrerenderRoute = (prerenderRouteArgs) => (routeKey, { isBlocking, isFall
|
|
1233
1233
|
allowQuery = [];
|
1234
1234
|
}
|
1235
1235
|
}
|
1236
|
+
const rscVaryHeader = routesManifest?.rsc?.varyHeader ||
|
1237
|
+
'__rsc__, __next_router_state_tree__, __next_router_prefetch__';
|
1236
1238
|
prerenders[outputPathPage] = new build_utils_1.Prerender({
|
1237
1239
|
expiration: initialRevalidate,
|
1238
1240
|
lambda,
|
@@ -1248,7 +1250,7 @@ const onPrerenderRoute = (prerenderRouteArgs) => (routeKey, { isBlocking, isFall
|
|
1248
1250
|
...(isAppPathRoute
|
1249
1251
|
? {
|
1250
1252
|
initialHeaders: {
|
1251
|
-
vary:
|
1253
|
+
vary: rscVaryHeader,
|
1252
1254
|
},
|
1253
1255
|
}
|
1254
1256
|
: {}),
|
@@ -1269,7 +1271,7 @@ const onPrerenderRoute = (prerenderRouteArgs) => (routeKey, { isBlocking, isFall
|
|
1269
1271
|
? {
|
1270
1272
|
initialHeaders: {
|
1271
1273
|
'content-type': 'application/octet-stream',
|
1272
|
-
vary:
|
1274
|
+
vary: rscVaryHeader,
|
1273
1275
|
},
|
1274
1276
|
}
|
1275
1277
|
: {}),
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@vercel/next",
|
3
|
-
"version": "3.2.
|
3
|
+
"version": "3.2.10",
|
4
4
|
"license": "MIT",
|
5
5
|
"main": "./dist/index",
|
6
6
|
"homepage": "https://vercel.com/docs/runtimes#official-runtimes/next-js",
|
@@ -39,14 +39,14 @@
|
|
39
39
|
"@types/fs-extra": "8.0.0",
|
40
40
|
"@types/glob": "7.1.3",
|
41
41
|
"@types/next-server": "8.0.0",
|
42
|
-
"@types/node": "14.
|
42
|
+
"@types/node": "14.18.33",
|
43
43
|
"@types/resolve-from": "5.0.1",
|
44
44
|
"@types/semver": "6.0.0",
|
45
45
|
"@types/text-table": "0.2.1",
|
46
46
|
"@types/webpack-sources": "3.2.0",
|
47
47
|
"@vercel/build-utils": "5.5.7",
|
48
48
|
"@vercel/nft": "0.22.1",
|
49
|
-
"@vercel/routing-utils": "2.1.
|
49
|
+
"@vercel/routing-utils": "2.1.2",
|
50
50
|
"async-sema": "3.0.1",
|
51
51
|
"buffer-crc32": "0.2.13",
|
52
52
|
"cheerio": "1.0.0-rc.10",
|
@@ -69,5 +69,5 @@
|
|
69
69
|
"typescript": "4.5.2",
|
70
70
|
"webpack-sources": "3.2.3"
|
71
71
|
},
|
72
|
-
"gitHead": "
|
72
|
+
"gitHead": "fbb8bba4cfb06040d62916bdc3fc849ac0b4d074"
|
73
73
|
}
|