@@ -6,7 +6,12 @@ import Head from 'next/head';
66import 'focus-visible' ;
77import { useConsoleLogo } from '@dailydotdev/shared/src/hooks/useConsoleLogo' ;
88import { DefaultSeo , NextSeo } from 'next-seo' ;
9- import { QueryClient , QueryClientProvider } from '@tanstack/react-query' ;
9+ import type { DehydratedState } from '@tanstack/react-query' ;
10+ import {
11+ HydrationBoundary ,
12+ QueryClient ,
13+ QueryClientProvider ,
14+ } from '@tanstack/react-query' ;
1015import { useAuthContext } from '@dailydotdev/shared/src/contexts/AuthContext' ;
1116import {
1217 useCookieBanner ,
@@ -253,7 +258,9 @@ function InternalApp({ Component, pageProps, router }: AppProps): ReactElement {
253258 ) ;
254259}
255260
256- export default function App ( props : AppProps ) : ReactElement {
261+ export default function App (
262+ props : AppProps < { dehydratedState : DehydratedState } > ,
263+ ) : ReactElement {
257264 const [ queryClient ] = useState (
258265 ( ) => new QueryClient ( defaultQueryClientConfig ) ,
259266 ) ;
@@ -262,27 +269,33 @@ export default function App(props: AppProps): ReactElement {
262269 useError ( ) ;
263270 useManualScrollRestoration ( ) ;
264271
272+ const {
273+ pageProps : { dehydratedState } ,
274+ } = props ;
275+
265276 return (
266277 < ProgressiveEnhancementContextProvider >
267278 < QueryClientProvider client = { queryClient } >
268- < BootDataProvider
269- app = { BootApp . Webapp }
270- getRedirectUri = { getRedirectUri }
271- getPage = { getPage }
272- version = { version }
273- deviceId = { deviceId }
274- >
275- < PixelsProvider >
276- < PushNotificationContextProvider >
277- < SubscriptionContextProvider >
278- < PostReferrerContextProvider >
279- < InternalApp { ...props } />
280- </ PostReferrerContextProvider >
281- </ SubscriptionContextProvider >
282- </ PushNotificationContextProvider >
283- </ PixelsProvider >
284- </ BootDataProvider >
285- < ReactQueryDevtools />
279+ < HydrationBoundary state = { dehydratedState } >
280+ < BootDataProvider
281+ app = { BootApp . Webapp }
282+ getRedirectUri = { getRedirectUri }
283+ getPage = { getPage }
284+ version = { version }
285+ deviceId = { deviceId }
286+ >
287+ < PixelsProvider >
288+ < PushNotificationContextProvider >
289+ < SubscriptionContextProvider >
290+ < PostReferrerContextProvider >
291+ < InternalApp { ...props } />
292+ </ PostReferrerContextProvider >
293+ </ SubscriptionContextProvider >
294+ </ PushNotificationContextProvider >
295+ </ PixelsProvider >
296+ </ BootDataProvider >
297+ < ReactQueryDevtools />
298+ </ HydrationBoundary >
286299 </ QueryClientProvider >
287300 </ ProgressiveEnhancementContextProvider >
288301 ) ;
0 commit comments