forked from reown-com/appkit
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
29 lines (26 loc) · 1.04 KB
/
main.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { Web3Modal } from '@bitizenwallet/web3modal-html'
import { SafeConnector } from '@gnosis.pm/safe-apps-wagmi'
import { configureChains, createClient } from '@wagmi/core'
import { arbitrum, avalanche, mainnet, polygon } from '@wagmi/core/chains'
import { EthereumClient, modalConnectors, walletConnectProvider } from '@web3modal/ethereum'
// 1. Define constants
const projectId = '8e6b5ffdcbc9794bf9f4a1952578365b'
const chains = [mainnet, polygon, avalanche, arbitrum]
// 2. Configure wagmi client
const { provider } = configureChains(chains, [walletConnectProvider({ projectId })])
const wagmiClient = createClient({
autoConnect: true,
connectors: [...modalConnectors({ appName: 'web3Modal', chains }), new SafeConnector({ chains })],
provider
})
// 3. Create ethereum and modal clients
const ethereumClient = new EthereumClient(wagmiClient, chains)
export const web3Modal = new Web3Modal(
{
projectId,
walletImages: {
safe: 'https://pbs.twimg.com/profile_images/1566773491764023297/IvmCdGnM_400x400.jpg'
}
},
ethereumClient
)