@@ -11,7 +11,7 @@ import type {
1111 QueryOptions ,
1212} from './types'
1313import type { QueryClient } from './queryClient'
14- import type { Query , QueryState } from './query'
14+ import type { Query , QueryBehavior , QueryState } from './query'
1515import type { Mutation , MutationState } from './mutation'
1616import { infiniteQueryBehavior } from './infiniteQueryBehavior'
1717
@@ -261,11 +261,11 @@ export function hydrate(
261261 queryKey,
262262 queryHash,
263263 meta,
264+ behavior : queryType === 'infiniteQuery'
265+ ? ( infiniteQueryBehavior ( ) as QueryBehavior < unknown , unknown , unknown > )
266+ : undefined ,
264267 }
265268
266- if ( queryType === 'infiniteQuery' ) {
267- queryOptions . behavior = infiniteQueryBehavior ( undefined )
268- }
269269 // Restore query
270270 query = queryCache . build (
271271 client ,
@@ -293,24 +293,13 @@ export function hydrate(
293293 // which will re-use the passed `initialPromise`
294294 // Note that we need to call these even when data was synchronously
295295 // available, as we still need to set up the retryer
296-
297- const isRejectedThenable =
298- promise &&
299- typeof promise === 'object' &&
300- 'status' in promise &&
301- ( promise as any ) . status === 'rejected'
302-
303- if ( ! isRejectedThenable ) {
304- query
305- . fetch ( undefined , {
306- // RSC transformed promises are not thenable
307- initialPromise : Promise . resolve ( promise ) . then ( ( resolvedData ) => {
308- return deserializeData ( resolvedData )
309- } ) ,
310- } )
311- // Avoid unhandled promise rejections
312- . catch ( noop )
313- }
296+ query
297+ . fetch ( undefined , {
298+ // RSC transformed promises are not thenable
299+ initialPromise : Promise . resolve ( promise ) . then ( deserializeData ) ,
300+ } )
301+ // Avoid unhandled promise rejections
302+ . catch ( noop )
314303 }
315304 } ,
316305 )
0 commit comments