import React from 'react' import ReactDOM from 'react-dom' import { Mainnet, DAppProvider, Config, Arbitrum, Goerli, MetamaskConnector, CoinbaseWalletConnector, useEthers, useConnector, } from '@usedapp/core' import { getDefaultProvider } from 'ethers' import { WalletConnectConnector } from '@usedapp/wallet-connect-connector' import { PortisConnector } from '@usedapp/portis-connector' const PORTIS_DAPP_ID = 'e36dbbe4-d25d-4db2-bfa8-cb80eb87d1f0' const config: Config = { readOnlyChainId: Mainnet.chainId, readOnlyUrls: { [Mainnet.chainId]: getDefaultProvider('mainnet'), [Goerli.chainId]: getDefaultProvider('goerli'), [Arbitrum.chainId]: 'https://arb1.arbitrum.io/rpc', }, connectors: { metamask: new MetamaskConnector(), walletConnect: new WalletConnectConnector({ infuraId: 'd8df2cb7844e4a54ab0a782f608749dd' }), coinbase: new CoinbaseWalletConnector(), portis: new PortisConnector(PORTIS_DAPP_ID, 'mainnet'), }, } ReactDOM.render( , document.getElementById('root') ) export function App() { const { connector, isLoading } = useConnector() const { activateBrowserWallet, account, chainId, deactivate } = useEthers() if (isLoading) { return
Loading...
} if (!account) { return (
) } return (
Account: {account}
Chain id: {chainId}
Connected with: {connector?.connector?.name ?? 'None'}
) }