import Onboard from '@web3-onboard/core' import type { OnboardAPI } from '@web3-onboard/core' import injectedWalletsModule from '@web3-onboard/injected-wallets' import walletConnectModule from '@web3-onboard/walletconnect' const injected = injectedWalletsModule() const walletConnect = walletConnectModule({ connectFirstChainId: true, qrcodeModalOptions: { mobileLinks: ['rainbow', 'metamask', 'argent', 'trust', 'imtoken', 'pillar'] } }) const wallets = [injected, walletConnect] const INFURA_ID = '' const chains = [ { id: 1, token: 'ETH', label: 'Ethereum Mainnet', rpcUrl: `https://mainnet.infura.io/v3/${INFURA_ID}` }, { id: 137, token: 'MATIC', label: 'Matic Mainnet', rpcUrl: 'https://matic-mainnet.chainstacklabs.com' }, { id: '0x2105', token: 'ETH', label: 'Base', rpcUrl: 'https://mainnet.base.org' } ] const appMetadata = { name: 'Web3-Onboard Svelte Demo', icon: '', logo: '', description: 'Demo using Onboard', recommendedInjectedWallets: [ { name: 'Coinbase', url: 'https://wallet.coinbase.com/' }, { name: 'MetaMask', url: 'https://metamask.io' } ] } let onboard if (!onboard) { onboard = Onboard({ wallets, chains, appMetadata }) } export default onboard as OnboardAPI