@@ -2704,6 +2704,12 @@ async function prerenderToStream(
27042704 setMetadataHeader ( name )
27052705 }
27062706
2707+ const selectStaleTime = ( stale : number ) =>
2708+ stale === INFINITE_CACHE &&
2709+ typeof renderOpts . experimental . staleTimes ?. static === 'number'
2710+ ? renderOpts . experimental . staleTimes . static
2711+ : stale
2712+
27072713 let prerenderStore : PrerenderStore | null = null
27082714
27092715 try {
@@ -3139,7 +3145,7 @@ async function prerenderToStream(
31393145 // TODO: Should this include the SSR pass?
31403146 collectedRevalidate : finalRenderPrerenderStore . revalidate ,
31413147 collectedExpire : finalRenderPrerenderStore . expire ,
3142- collectedStale : finalRenderPrerenderStore . stale ,
3148+ collectedStale : selectStaleTime ( finalRenderPrerenderStore . stale ) ,
31433149 collectedTags : finalRenderPrerenderStore . tags ,
31443150 }
31453151 } else {
@@ -3202,7 +3208,7 @@ async function prerenderToStream(
32023208 // TODO: Should this include the SSR pass?
32033209 collectedRevalidate : finalRenderPrerenderStore . revalidate ,
32043210 collectedExpire : finalRenderPrerenderStore . expire ,
3205- collectedStale : finalRenderPrerenderStore . stale ,
3211+ collectedStale : selectStaleTime ( finalRenderPrerenderStore . stale ) ,
32063212 collectedTags : finalRenderPrerenderStore . tags ,
32073213 }
32083214 }
@@ -3639,7 +3645,7 @@ async function prerenderToStream(
36393645 // TODO: Should this include the SSR pass?
36403646 collectedRevalidate : finalServerPrerenderStore . revalidate ,
36413647 collectedExpire : finalServerPrerenderStore . expire ,
3642- collectedStale : finalServerPrerenderStore . stale ,
3648+ collectedStale : selectStaleTime ( finalServerPrerenderStore . stale ) ,
36433649 collectedTags : finalServerPrerenderStore . tags ,
36443650 }
36453651 }
@@ -3789,7 +3795,7 @@ async function prerenderToStream(
37893795 // TODO: Should this include the SSR pass?
37903796 collectedRevalidate : reactServerPrerenderStore . revalidate ,
37913797 collectedExpire : reactServerPrerenderStore . expire ,
3792- collectedStale : reactServerPrerenderStore . stale ,
3798+ collectedStale : selectStaleTime ( reactServerPrerenderStore . stale ) ,
37933799 collectedTags : reactServerPrerenderStore . tags ,
37943800 }
37953801 } else if ( fallbackRouteParams && fallbackRouteParams . size > 0 ) {
@@ -3809,7 +3815,7 @@ async function prerenderToStream(
38093815 // TODO: Should this include the SSR pass?
38103816 collectedRevalidate : reactServerPrerenderStore . revalidate ,
38113817 collectedExpire : reactServerPrerenderStore . expire ,
3812- collectedStale : reactServerPrerenderStore . stale ,
3818+ collectedStale : selectStaleTime ( reactServerPrerenderStore . stale ) ,
38133819 collectedTags : reactServerPrerenderStore . tags ,
38143820 }
38153821 } else {
@@ -3870,7 +3876,7 @@ async function prerenderToStream(
38703876 // TODO: Should this include the SSR pass?
38713877 collectedRevalidate : reactServerPrerenderStore . revalidate ,
38723878 collectedExpire : reactServerPrerenderStore . expire ,
3873- collectedStale : reactServerPrerenderStore . stale ,
3879+ collectedStale : selectStaleTime ( reactServerPrerenderStore . stale ) ,
38743880 collectedTags : reactServerPrerenderStore . tags ,
38753881 }
38763882 }
@@ -3964,7 +3970,7 @@ async function prerenderToStream(
39643970 // TODO: Should this include the SSR pass?
39653971 collectedRevalidate : prerenderLegacyStore . revalidate ,
39663972 collectedExpire : prerenderLegacyStore . expire ,
3967- collectedStale : prerenderLegacyStore . stale ,
3973+ collectedStale : selectStaleTime ( prerenderLegacyStore . stale ) ,
39683974 collectedTags : prerenderLegacyStore . tags ,
39693975 }
39703976 }
@@ -4146,8 +4152,9 @@ async function prerenderToStream(
41464152 prerenderStore !== null ? prerenderStore . revalidate : INFINITE_CACHE ,
41474153 collectedExpire :
41484154 prerenderStore !== null ? prerenderStore . expire : INFINITE_CACHE ,
4149- collectedStale :
4150- prerenderStore !== null ? prerenderStore . stale : INFINITE_CACHE ,
4155+ collectedStale : selectStaleTime (
4156+ prerenderStore !== null ? prerenderStore . stale : INFINITE_CACHE
4157+ ) ,
41514158 collectedTags : prerenderStore !== null ? prerenderStore . tags : null ,
41524159 }
41534160 } catch ( finalErr : any ) {
0 commit comments