fix(wallet): workaround for coinbase wallet / fortmatic

This commit is contained in:
Moody Salem 2021-05-06 10:09:41 -04:00
parent b8f61d5f90
commit d3898cf900
No known key found for this signature in database
GPG Key ID: 8CB5CD10385138DB

@ -1,14 +1,17 @@
import { Web3Provider } from '@ethersproject/providers'
import { Web3ReactContextInterface } from '@web3-react/core/dist/types'
export default function getLibrary(provider: any): Web3Provider {
export default function getLibrary(
provider: any,
connector?: Required<Web3ReactContextInterface>['connector']
): Web3Provider {
// todo: need to add types to this function and fix the issue with latest version of ethers not able to detect network if we pass in 'any'
const chainId =
provider?.chainId ?? connector?.supportedChainIds?.length === 1 ? connector?.supportedChainIds?.[0] : undefined
// latest ethers version tries to detect the network which fails
const library = new Web3Provider(
provider,
typeof provider.chainId === 'number'
? provider.chainId
: typeof provider.chainId === 'string'
? parseInt(provider.chainId)
: 'any'
typeof chainId === 'number' ? chainId : typeof chainId === 'string' ? parseInt(chainId) : 'any'
)
library.pollingInterval = 15000
return library