@@ -2704,6 +2704,12 @@ async function prerenderToStream(
2704
2704
setMetadataHeader ( name )
2705
2705
}
2706
2706
2707
+ const selectStaleTime = ( stale : number ) =>
2708
+ stale === INFINITE_CACHE &&
2709
+ typeof renderOpts . experimental . staleTimes ?. static === 'number'
2710
+ ? renderOpts . experimental . staleTimes . static
2711
+ : stale
2712
+
2707
2713
let prerenderStore : PrerenderStore | null = null
2708
2714
2709
2715
try {
@@ -3139,7 +3145,7 @@ async function prerenderToStream(
3139
3145
// TODO: Should this include the SSR pass?
3140
3146
collectedRevalidate : finalRenderPrerenderStore . revalidate ,
3141
3147
collectedExpire : finalRenderPrerenderStore . expire ,
3142
- collectedStale : finalRenderPrerenderStore . stale ,
3148
+ collectedStale : selectStaleTime ( finalRenderPrerenderStore . stale ) ,
3143
3149
collectedTags : finalRenderPrerenderStore . tags ,
3144
3150
}
3145
3151
} else {
@@ -3202,7 +3208,7 @@ async function prerenderToStream(
3202
3208
// TODO: Should this include the SSR pass?
3203
3209
collectedRevalidate : finalRenderPrerenderStore . revalidate ,
3204
3210
collectedExpire : finalRenderPrerenderStore . expire ,
3205
- collectedStale : finalRenderPrerenderStore . stale ,
3211
+ collectedStale : selectStaleTime ( finalRenderPrerenderStore . stale ) ,
3206
3212
collectedTags : finalRenderPrerenderStore . tags ,
3207
3213
}
3208
3214
}
@@ -3639,7 +3645,7 @@ async function prerenderToStream(
3639
3645
// TODO: Should this include the SSR pass?
3640
3646
collectedRevalidate : finalServerPrerenderStore . revalidate ,
3641
3647
collectedExpire : finalServerPrerenderStore . expire ,
3642
- collectedStale : finalServerPrerenderStore . stale ,
3648
+ collectedStale : selectStaleTime ( finalServerPrerenderStore . stale ) ,
3643
3649
collectedTags : finalServerPrerenderStore . tags ,
3644
3650
}
3645
3651
}
@@ -3789,7 +3795,7 @@ async function prerenderToStream(
3789
3795
// TODO: Should this include the SSR pass?
3790
3796
collectedRevalidate : reactServerPrerenderStore . revalidate ,
3791
3797
collectedExpire : reactServerPrerenderStore . expire ,
3792
- collectedStale : reactServerPrerenderStore . stale ,
3798
+ collectedStale : selectStaleTime ( reactServerPrerenderStore . stale ) ,
3793
3799
collectedTags : reactServerPrerenderStore . tags ,
3794
3800
}
3795
3801
} else if ( fallbackRouteParams && fallbackRouteParams . size > 0 ) {
@@ -3809,7 +3815,7 @@ async function prerenderToStream(
3809
3815
// TODO: Should this include the SSR pass?
3810
3816
collectedRevalidate : reactServerPrerenderStore . revalidate ,
3811
3817
collectedExpire : reactServerPrerenderStore . expire ,
3812
- collectedStale : reactServerPrerenderStore . stale ,
3818
+ collectedStale : selectStaleTime ( reactServerPrerenderStore . stale ) ,
3813
3819
collectedTags : reactServerPrerenderStore . tags ,
3814
3820
}
3815
3821
} else {
@@ -3870,7 +3876,7 @@ async function prerenderToStream(
3870
3876
// TODO: Should this include the SSR pass?
3871
3877
collectedRevalidate : reactServerPrerenderStore . revalidate ,
3872
3878
collectedExpire : reactServerPrerenderStore . expire ,
3873
- collectedStale : reactServerPrerenderStore . stale ,
3879
+ collectedStale : selectStaleTime ( reactServerPrerenderStore . stale ) ,
3874
3880
collectedTags : reactServerPrerenderStore . tags ,
3875
3881
}
3876
3882
}
@@ -3964,7 +3970,7 @@ async function prerenderToStream(
3964
3970
// TODO: Should this include the SSR pass?
3965
3971
collectedRevalidate : prerenderLegacyStore . revalidate ,
3966
3972
collectedExpire : prerenderLegacyStore . expire ,
3967
- collectedStale : prerenderLegacyStore . stale ,
3973
+ collectedStale : selectStaleTime ( prerenderLegacyStore . stale ) ,
3968
3974
collectedTags : prerenderLegacyStore . tags ,
3969
3975
}
3970
3976
}
@@ -4146,8 +4152,9 @@ async function prerenderToStream(
4146
4152
prerenderStore !== null ? prerenderStore . revalidate : INFINITE_CACHE ,
4147
4153
collectedExpire :
4148
4154
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
+ ) ,
4151
4158
collectedTags : prerenderStore !== null ? prerenderStore . tags : null ,
4152
4159
}
4153
4160
} catch ( finalErr : any ) {
0 commit comments