27 lines
851 B
TypeScript
27 lines
851 B
TypeScript
import { SessionProvider } from "next-auth/react";
|
|
import type { AppProps } from "next/app";
|
|
import { useState } from "react";
|
|
import { Hydrate, QueryClient, QueryClientProvider } from "react-query";
|
|
import { ReactQueryDevtools } from "react-query/devtools";
|
|
import "../styles/dark.css"; // TODO: Setup themeing the React way
|
|
import "../styles/globals.css";
|
|
|
|
function MyApp({ Component, pageProps: { session, ...pageProps } }: AppProps) {
|
|
const [queryClient] = useState(() => new QueryClient());
|
|
|
|
return (
|
|
<>
|
|
<QueryClientProvider client={queryClient}>
|
|
<ReactQueryDevtools />
|
|
<Hydrate state={pageProps.dehydratedState}>
|
|
<SessionProvider session={session}>
|
|
<Component {...pageProps} />
|
|
</SessionProvider>
|
|
</Hydrate>
|
|
</QueryClientProvider>
|
|
</>
|
|
);
|
|
}
|
|
|
|
export default MyApp;
|