mhunt_account_dash/pages/_app.tsx
2024-07-31 21:14:28 +05:30

83 lines
2.6 KiB
TypeScript

import "../styles/globals.css";
import type { AppProps } from "next/app";
import Head from "next/head";
import { PrivyProvider } from "@privy-io/react-auth";
//import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import { PrivyWagmiConnector } from '@privy-io/wagmi-connector';
import { mainnet, sepolia, configureChains } from 'wagmi';
import { alchemyProvider } from 'wagmi/providers/alchemy';
import { infuraProvider } from 'wagmi/providers/infura';
import { jsonRpcProvider } from 'wagmi/providers/jsonRpc';
// Configure chains and providers
const configureChainsConfig = configureChains(
[mainnet, sepolia],
[
alchemyProvider({ apiKey: 'XrSV5mVhj-BIUnneNRm66ReQeuO19jJ-' }),
infuraProvider({ apiKey: '25c9f1810f234c278a4f13736a897836' }),
jsonRpcProvider({
rpc: (chain) => {
if (chain.id === mainnet.id) return { http: `https://mainnet.infura.io/v3/25c9f1810f234c278a4f13736a897836` };
if (chain.id === sepolia.id) return { http: `https://sepolia.infura.io/v3/25c9f1810f234c278a4f13736a897836` };
return null; // Replace with your fallback RPC if needed
}
})
]
);
function MyApp({ Component, pageProps }: AppProps) {
return (
<>
<Head>
<link
rel="preload"
href="/fonts/AdelleSans-Regular.woff"
as="font"
crossOrigin=""
/>
<link
rel="preload"
href="/fonts/AdelleSans-Regular.woff2"
as="font"
crossOrigin=""
/>
<link
rel="preload"
href="/fonts/AdelleSans-Semibold.woff"
as="font"
crossOrigin=""
/>
<link
rel="preload"
href="/fonts/AdelleSans-Semibold.woff2"
as="font"
crossOrigin=""
/>
<link rel="icon" href="/favicons/favicon.ico" sizes="any" />
<link rel="icon" href="/favicons/icon.svg" type="image/svg+xml" />
<link rel="apple-touch-icon" href="/favicons/apple-touch-icon.png" />
<link rel="manifest" href="/favicons/manifest.json" />
<title>Privy Auth Starter</title>
<meta name="description" content="Privy Auth Starter" />
</Head>
<PrivyProvider
appId={process.env.NEXT_PUBLIC_PRIVY_APP_ID || ""}
config={{
embeddedWallets: {
createOnLogin: "all-users",
},
}}
>
<PrivyWagmiConnector wagmiChainsConfig={configureChainsConfig}>
<Component {...pageProps} />
</PrivyWagmiConnector>
</PrivyProvider>
</>
);
}
export default MyApp;