fix(wallet): workaround for coinbase wallet / fortmatic
This commit is contained in:
parent
b8f61d5f90
commit
d3898cf900
@ -1,14 +1,17 @@
|
|||||||
import { Web3Provider } from '@ethersproject/providers'
|
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
|
// latest ethers version tries to detect the network which fails
|
||||||
const library = new Web3Provider(
|
const library = new Web3Provider(
|
||||||
provider,
|
provider,
|
||||||
typeof provider.chainId === 'number'
|
typeof chainId === 'number' ? chainId : typeof chainId === 'string' ? parseInt(chainId) : 'any'
|
||||||
? provider.chainId
|
|
||||||
: typeof provider.chainId === 'string'
|
|
||||||
? parseInt(provider.chainId)
|
|
||||||
: 'any'
|
|
||||||
)
|
)
|
||||||
library.pollingInterval = 15000
|
library.pollingInterval = 15000
|
||||||
return library
|
return library
|
||||||
|
Loading…
Reference in New Issue
Block a user