@tronweb3/walletconnect-tron
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

@tronweb3/walletconnect-tron

@tronweb3/walletconnect-tron helps DApp to connect with WalletConnect TRON Chain.

Get Started

Installation

you can install @tronweb3/walletconnect-tron by npm/yarn/pnpm:

npm i @tronweb3/walletconnect-tron
// or
yarn add @tronweb3/walletconnect-tron
// or
pnpm install @tronweb3/walletconnect-tron

Create WalletConnect Wallet

Request Parameters

Argument Description Type
network The Chain (Mainnet, Shasta, Nile) string
options The options Info of the wallet object
web3ModalConfig The options for Web3Modal object
interface WalletConnectWalletAdapterConfig {
  network: WalletConnectChainID;
  options: SignClientTypes.Options;
  /**
   * Config for web3Modal constructor.
   * Detailed documentation can be found in WalletConnect page: https://docs.walletconnect.com/2.0/web3modal/options.
   * - `walletConnectVersion` will be ignored and will be set to 2.
   * - `projectId` will be ignored and will be set with `options.projectId`.
   */
  web3ModalConfig?: WalletConnectWeb3ModalConfig;
}

Example

import { WalletConnectWallet, WalletConnectChainID } from '@tronweb3/walletconnect-tron';
const wallet = new WalletConnectWallet({
  network: WalletConnectChainID.Mainnet,
  options: {
    relayUrl: 'wss://relay.walletconnect.com',
    projectId: '....',
    metadata: {
      name: 'Your dapp name',
      description: 'Your dapp description',
      url: 'your dapp url',
      icons: ['your dapp icon']
    }
  },
  web3ModalConfig: {
    themeMode: 'dark',
    themeVariables: {
      '--w3m-z-index': 1000
    },
    /**
     * Recommended Wallets are fetched from WalletConnect explore api:
     * https://walletconnect.com/explorer?type=wallet&version=2.
     * You can copy these ids from the page.
     */ 
    explorerRecommendedWalletIds: [
      '225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f',
      '1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369',
      '4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0'
    ]
  }
});

Connect to the Wallet

Use wallet.connect() to connect. If the Dapp has connected before, it will connect directly, or else display the WalletConnect qrcode.

Response

Return the Wallet address if connected.

Example

const { address } = await wallet.connect();

DisConnect to the Wallet

Use wallet.disconnect() to disconnect

Example

try {
  await wallet.disconnect();
} catch (error) {
  console.log('disconnect:' + error);
}

Sign Transaction

Sign a provided transaction object

Request Parameters

Argument Description Type
transation Tron Transaction object

Example

try {
  const signature = await wallet.signTransaction(transaction);
} catch (error) {
  console.log('signTransaction:' + error);
}

Sign Message

Sign a String Message

Request Parameters

Argument Description Type
message message string

Example

try {
  const signature = await wallet.signMessage('hello world');
} catch (error) {
  console.log('signTransaction:' + error);
}

Check Connect Status

Check the Connect Status

Response

Return the address, if it is not connected, the address is empty.

Example

const { address } = await wallet.checkConnectStatus();

Note

The connection is based on the relayUrl service, sometimes there will be some network error. The Dapp developer should handle the network error, connection error or timeout error.

All the Error Message and Error Code please refer to the WalletConnect Error:

https://github.com/WalletConnect/walletconnect-monorepo/blob/v2.0/packages/utils/src/errors.ts

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i @tronweb3/walletconnect-tron

Weekly Downloads

1,055

Version

2.0.0

License

MIT

Unpacked Size

38.8 kB

Total Files

22

Last publish

Collaborators

  • cathytan
  • troncore
  • tron-dev