@tronweb3/tronwallet-adapter-tronlink
TypeScript icon, indicating that this package has built-in type declarations

1.1.9 • Public • Published

@tronweb3/tronwallet-adapter-tronlink

This package provides an adapter to enable TRON DApps to connect to the TronLink Wallet extension and TronLink Wallet App.

Demo

import { TronLinkAdapter } from '@tronweb3/tronwallet-adapter-tronlink';
import TronWeb from 'tronweb';

const tronWeb = new TronWeb({
    fullHost: 'https://api.trongrid.io',
    headers: { 'TRON-PRO-API-KEY': 'your api key' },
});

const adapter = new TronLinkAdapter();
// connect
await adapter.connect();

// then you can get address
console.log(adapter.address);

// create a send TRX transaction
const unSignedTransaction = await tronWeb.transactionBuilder.sendTrx(targetAddress, 100, adapter.address);
// using adapter to sign the transaction
const signedTransaction = await adapter.signTransaction(unSignedTransaction);
// broadcast the transaction
await tronWeb.trx.sendRawTransaction(signedTransaction);

Documentation

API

  • Constructor(config: TronLinkAdapterConfig)

    interface TronLinkAdapterConfig {
        /**
         * Set if open Wallet's website url when wallet is not installed.
         * Default is true.
         */
        openUrlWhenWalletNotFound?: boolean;
        /**
         * Timeout in millisecond for checking if TronLink wallet exists.
         * Default is 30 * 1000ms
         */
        checkTimeout?: number;
        /**
         * Set if open TronLink app using DeepLink on mobile device.
         * Default is true.
         */
        openTronLinkAppOnMobile?: boolean;
        /**
         * The icon of your dapp. Used when open TronLink app in mobile device browsers.
         * Default is current website icon.
         */
        dappIcon?: string;
        /**
         * The name of your dapp. Used when open TronLink app in mobile device browsers.
         * Default is `document.title`.
         */
        dappName?: string;
    }
  • network() method is supported to get current network information. The type of returned value is Network as follows:

    export enum NetworkType {
        Mainnet = 'Mainnet',
        Shasta = 'Shasta',
        Nile = 'Nile',
        /**
         * When use custom node
         */
        Unknown = 'Unknown',
    }
    
    export type Network = {
        networkType: NetworkType;
        chainId: string;
        fullNode: string;
        solidityNode: string;
        eventServer: string;
    };

Caveats

  • TronLink Doesn't support disconnect by DApp. As TronLinkAdapter doesn't support disconnect by DApp website, call adapter.disconnect() won't disconnect from TronLink extension really.

For more information about tronwallet adapters, please refer to @tronweb3/tronwallet-adapters

Readme

Keywords

Package Sidebar

Install

npm i @tronweb3/tronwallet-adapter-tronlink

Weekly Downloads

1,157

Version

1.1.9

License

MIT

Unpacked Size

261 kB

Total Files

42

Last publish

Collaborators

  • cathytan
  • troncore
  • tron-dev