This commit is contained in:
Ren Amamiya
2023-03-31 15:10:16 +07:00
parent 990bf98571
commit c7e2b9430a
11 changed files with 242 additions and 222 deletions

View File

@@ -1,9 +1,5 @@
import RelayProvider from '@components/relaysProvider';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { Provider } from 'jotai';
import { queryClientAtom } from 'jotai-tanstack-query';
import { useHydrateAtoms } from 'jotai/react/utils';
import type { NextPage } from 'next';
import type { AppProps } from 'next/app';
import { ReactElement, ReactNode } from 'react';
@@ -19,24 +15,9 @@ type AppPropsWithLayout = AppProps & {
Component: NextPageWithLayout;
};
const queryClient = new QueryClient();
const HydrateAtoms = ({ children }) => {
useHydrateAtoms([[queryClientAtom, queryClient]]);
return children;
};
export default function MyApp({ Component, pageProps }: AppPropsWithLayout) {
// Use the layout defined at the page level, if available
const getLayout = Component.getLayout ?? ((page) => page);
return (
<QueryClientProvider client={queryClient}>
<Provider>
<HydrateAtoms>
<RelayProvider>{getLayout(<Component {...pageProps} />)}</RelayProvider>
</HydrateAtoms>
</Provider>
</QueryClientProvider>
);
return <RelayProvider>{getLayout(<Component {...pageProps} />)}</RelayProvider>;
}