@vercel/next 4.10.10 → 4.11.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 +43 -22
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -11162,6 +11162,14 @@ async function getDynamicRoutes({
|
|
|
11162
11162
|
case 3:
|
|
11163
11163
|
case 4: {
|
|
11164
11164
|
const routes2 = [];
|
|
11165
|
+
if (isAppClientSegmentCacheEnabled && !isAppPPREnabled) {
|
|
11166
|
+
routes2.push({
|
|
11167
|
+
src: "^/(?<path>.+)(?<rscSuffix>\\.segments/.+\\.segment\\.rsc)(?:/)?$",
|
|
11168
|
+
dest: `/$path${isAppPPREnabled ? ".prefetch.rsc" : ".rsc"}`,
|
|
11169
|
+
check: true,
|
|
11170
|
+
override: true
|
|
11171
|
+
});
|
|
11172
|
+
}
|
|
11165
11173
|
for (const dynamicRoute of routesManifest.dynamicRoutes) {
|
|
11166
11174
|
if (!canUsePreviewMode && omittedRoutes?.has(dynamicRoute.page)) {
|
|
11167
11175
|
continue;
|
|
@@ -11182,7 +11190,8 @@ async function getDynamicRoutes({
|
|
|
11182
11190
|
namedRegex,
|
|
11183
11191
|
regex,
|
|
11184
11192
|
routeKeys,
|
|
11185
|
-
prefetchSegmentDataRoutes
|
|
11193
|
+
prefetchSegmentDataRoutes,
|
|
11194
|
+
hasFallbackRootParams
|
|
11186
11195
|
} = params;
|
|
11187
11196
|
const route = {
|
|
11188
11197
|
src: namedRegex || regex,
|
|
@@ -11191,6 +11200,10 @@ async function getDynamicRoutes({
|
|
|
11191
11200
|
if (!isServerMode) {
|
|
11192
11201
|
route.check = true;
|
|
11193
11202
|
}
|
|
11203
|
+
if (isAppPPREnabled || isAppClientSegmentCacheEnabled) {
|
|
11204
|
+
route.check = true;
|
|
11205
|
+
route.override = true;
|
|
11206
|
+
}
|
|
11194
11207
|
if (isServerMode && canUsePreviewMode && omittedRoutes?.has(page)) {
|
|
11195
11208
|
route.has = [
|
|
11196
11209
|
{
|
|
@@ -11207,7 +11220,6 @@ async function getDynamicRoutes({
|
|
|
11207
11220
|
if (isAppClientSegmentCacheEnabled && prefetchSegmentDataRoutes && prefetchSegmentDataRoutes.length > 0) {
|
|
11208
11221
|
for (const prefetchSegmentDataRoute of prefetchSegmentDataRoutes) {
|
|
11209
11222
|
routes2.push({
|
|
11210
|
-
...route,
|
|
11211
11223
|
src: prefetchSegmentDataRoute.source,
|
|
11212
11224
|
dest: getDestinationForSegmentRoute(
|
|
11213
11225
|
isDev === true,
|
|
@@ -11215,18 +11227,23 @@ async function getDynamicRoutes({
|
|
|
11215
11227
|
routeKeys,
|
|
11216
11228
|
prefetchSegmentDataRoute
|
|
11217
11229
|
),
|
|
11218
|
-
check: true
|
|
11230
|
+
check: true,
|
|
11231
|
+
override: true
|
|
11219
11232
|
});
|
|
11220
11233
|
}
|
|
11221
11234
|
}
|
|
11222
11235
|
if (isAppPPREnabled || isAppClientSegmentCacheEnabled) {
|
|
11223
11236
|
routes2.push({
|
|
11224
|
-
...route,
|
|
11225
11237
|
src: route.src.replace(
|
|
11226
11238
|
new RegExp((0, import_escape_string_regexp.default)("(?:/)?$")),
|
|
11227
|
-
"(?<rscSuffix>\\.rsc|\\.prefetch\\.rsc|\\.segments/.+\\.segment\\.rsc)(?:/)?$"
|
|
11239
|
+
hasFallbackRootParams ? "\\.rsc(?:/)?$" : "(?<rscSuffix>\\.rsc|\\.prefetch\\.rsc|\\.segments/.+\\.segment\\.rsc)(?:/)?$"
|
|
11240
|
+
),
|
|
11241
|
+
dest: route.dest?.replace(
|
|
11242
|
+
/($|\?)/,
|
|
11243
|
+
hasFallbackRootParams ? ".rsc$1" : "$rscSuffix$1"
|
|
11228
11244
|
),
|
|
11229
|
-
|
|
11245
|
+
check: true,
|
|
11246
|
+
override: true
|
|
11230
11247
|
});
|
|
11231
11248
|
} else {
|
|
11232
11249
|
routes2.push({
|
|
@@ -11621,7 +11638,13 @@ async function getPrerenderManifest(entryPath, outputDirectory) {
|
|
|
11621
11638
|
};
|
|
11622
11639
|
});
|
|
11623
11640
|
lazyRoutes.forEach((lazyRoute) => {
|
|
11624
|
-
const {
|
|
11641
|
+
const {
|
|
11642
|
+
routeRegex,
|
|
11643
|
+
fallback,
|
|
11644
|
+
dataRoute,
|
|
11645
|
+
dataRouteRegex,
|
|
11646
|
+
fallbackRootParams
|
|
11647
|
+
} = manifest.dynamicRoutes[lazyRoute];
|
|
11625
11648
|
if (fallback) {
|
|
11626
11649
|
ret.fallbackRoutes[lazyRoute] = {
|
|
11627
11650
|
routeRegex,
|
|
@@ -11635,6 +11658,8 @@ async function getPrerenderManifest(entryPath, outputDirectory) {
|
|
|
11635
11658
|
ret.blockingFallbackRoutes[lazyRoute] = {
|
|
11636
11659
|
routeRegex,
|
|
11637
11660
|
dataRoute,
|
|
11661
|
+
fallback: null,
|
|
11662
|
+
fallbackRootParams,
|
|
11638
11663
|
dataRouteRegex,
|
|
11639
11664
|
renderingMode: "STATIC" /* STATIC */,
|
|
11640
11665
|
allowHeader: void 0
|
|
@@ -11750,7 +11775,8 @@ async function getPrerenderManifest(entryPath, outputDirectory) {
|
|
|
11750
11775
|
prefetchDataRouteRegex,
|
|
11751
11776
|
renderingMode,
|
|
11752
11777
|
allowHeader,
|
|
11753
|
-
fallbackRootParams
|
|
11778
|
+
fallbackRootParams,
|
|
11779
|
+
fallback: null
|
|
11754
11780
|
};
|
|
11755
11781
|
} else {
|
|
11756
11782
|
ret.omittedRoutes[lazyRoute] = {
|
|
@@ -12519,8 +12545,8 @@ var onPrerenderRoute = (prerenderRouteArgs) => async (routeKey, {
|
|
|
12519
12545
|
}
|
|
12520
12546
|
let htmlAllowQuery = allowQuery;
|
|
12521
12547
|
if (renderingMode === "PARTIALLY_STATIC" /* PARTIALLY_STATIC */ && (isFallback || isBlocking)) {
|
|
12522
|
-
const { fallbackRootParams } = isFallback ? prerenderManifest.fallbackRoutes[routeKey] : prerenderManifest.blockingFallbackRoutes[routeKey];
|
|
12523
|
-
if (fallbackRootParams && fallbackRootParams.length > 0) {
|
|
12548
|
+
const { fallbackRootParams, fallback } = isFallback ? prerenderManifest.fallbackRoutes[routeKey] : prerenderManifest.blockingFallbackRoutes[routeKey];
|
|
12549
|
+
if (fallback && typeof fallback === "string" && fallbackRootParams && fallbackRootParams.length > 0) {
|
|
12524
12550
|
htmlAllowQuery = fallbackRootParams;
|
|
12525
12551
|
} else if (postponedPrerender) {
|
|
12526
12552
|
htmlAllowQuery = [];
|
|
@@ -15165,6 +15191,9 @@ ${JSON.stringify(
|
|
|
15165
15191
|
lambdas[dataPathname] = lambdas[srcPathname];
|
|
15166
15192
|
}
|
|
15167
15193
|
}
|
|
15194
|
+
const shouldHandleSegmentToRsc = Boolean(
|
|
15195
|
+
isAppClientSegmentCacheEnabled && rscPrefetchHeader && prefetchSegmentHeader && prefetchSegmentDirSuffix && prefetchSegmentSuffix
|
|
15196
|
+
);
|
|
15168
15197
|
return {
|
|
15169
15198
|
wildcard: wildcardConfig,
|
|
15170
15199
|
images: getImagesConfig(imagesManifest),
|
|
@@ -15646,19 +15675,11 @@ ${JSON.stringify(
|
|
|
15646
15675
|
}
|
|
15647
15676
|
] : [],
|
|
15648
15677
|
// If it didn't match any of the static routes or dynamic ones, then we
|
|
15649
|
-
// should fallback to
|
|
15650
|
-
...
|
|
15678
|
+
// should fallback to either prefetch or normal RSC request
|
|
15679
|
+
...shouldHandleSegmentToRsc && prefetchSegmentDirSuffix && prefetchSegmentSuffix ? [
|
|
15651
15680
|
{
|
|
15652
|
-
src:
|
|
15653
|
-
|
|
15654
|
-
entryDirectory,
|
|
15655
|
-
`/(?<path>.+)${(0, import_escape_string_regexp2.default)(prefetchSegmentDirSuffix)}/.+${(0, import_escape_string_regexp2.default)(prefetchSegmentSuffix)}$`
|
|
15656
|
-
),
|
|
15657
|
-
dest: import_path4.default.posix.join(
|
|
15658
|
-
"/",
|
|
15659
|
-
entryDirectory,
|
|
15660
|
-
isAppPPREnabled ? "/$path.prefetch.rsc" : "/$path.rsc"
|
|
15661
|
-
),
|
|
15681
|
+
src: "^/(?<path>.+)(?<rscSuffix>\\.segments/.+\\.segment\\.rsc)(?:/)?$",
|
|
15682
|
+
dest: `/$path${isAppPPREnabled ? ".prefetch.rsc" : ".rsc"}`,
|
|
15662
15683
|
check: true
|
|
15663
15684
|
}
|
|
15664
15685
|
] : [],
|