wallet-connect-web-examples/wallets/react-web3wallet/src/utils/WalletConnectUtil.ts
Gancho Radkov 7a3886073b
feat: Web3Wallet Example (#94)
* feat: v2 wallet

* feat: Web3Wallet sign integration

* chore: adds `core` to package.json

* feat: Web3Wallet Auth integration

* chore: core & web3wallet canary

* chore: rm config

* chore: force redeploy

* chore: rm core & sign-client deps

* fix: rm `sign-client` usage

* refactor: updates README

* feat: adds metadata mock obj & removes relay url param

* refactor: more url mentions

* refactor: rm v2 wallet readme references & uses web3wallet.core...

* refactor: wallet -> web3wallet

* refactor: rm wallet to web3wallet

* fix: adds async to example listeners
2022-12-22 11:19:46 +02:00

28 lines
833 B
TypeScript

import { Core } from '@walletconnect/core'
import { ICore } from '@walletconnect/types'
import { Web3Wallet, IWeb3Wallet } from '@walletconnect/web3wallet'
export let web3wallet: IWeb3Wallet
export let core: ICore
export async function createWeb3Wallet(relayerRegionURL: string) {
core = new Core({
logger: 'debug',
projectId: process.env.NEXT_PUBLIC_PROJECT_ID,
relayUrl: relayerRegionURL ?? process.env.NEXT_PUBLIC_RELAY_URL
})
web3wallet = await Web3Wallet.init({
core,
metadata: {
name: 'React Web3Wallet',
description: 'React Web3Wallet for WalletConnect',
url: 'https://walletconnect.com/',
icons: ['https://avatars.githubusercontent.com/u/37784886']
}
})
}
export async function pair(params: { uri: string }) {
return await core.pairing.pair({ uri: params.uri })
}