This package has been deprecated

Author message:

This package has been deprecated. Please check this repo https://github.com/crypto-com/deficonnect-monorepo

deficonnect
TypeScript icon, indicating that this package has built-in type declarations

1.6.14-dev.2 • Public • Published

DeFiConnect

Installation

use npm package manager

npm install "deficonnect"

use script tag

<script type="module" src="https://unpkg.com/deficonnect/dist/index.umd.js"></script>

the global variable is: window.DeFiConnect

const connector = new window.DeFiConnect.DeFiWeb3Connector({
  supportedChainIds: [1],
  rpc: { 1: 'https://mainnet.infura.io/v3/INFURA_API_KEY' },
  pollingInterval: 15000
})

Usage

connect wallet

if you use web3-react, it is easy to integrate: DeFiWeb3Connector has implement AbstractConnector from web3-react

import { DeFiWeb3Connector } from 'deficonnect'

const connector = new DeFiWeb3Connector({
  supportedChainIds: [1],
  rpc: { 1: 'https://mainnet.infura.io/v3/INFURA_API_KEY' },
  pollingInterval: 15000
})
connector.activate()

methods for DeFiWeb3Connector

// connect to the Wallet
await connector.activate()

// disconnect the Wallet
await connector.deactivate()

events for Provider (EIP-1193)

// Subscribe to accounts change
provider.on('accountsChanged', (accounts: string[]) => {
  console.log(accounts)
})

// Subscribe to chainId change
provider.on('chainChanged', (chainId: number) => {
  console.log(chainId)
})

// Subscribe to session connection
provider.on('connect', () => {
  console.log('connect')
})

// Subscribe to session disconnection
provider.on('disconnect', (code: number, reason: string) => {
  console.log(code, reason)
})

methods for Provider

interface RequestArguments {
 method: string;
 params?: unknown[] | object;
}

// Send JSON RPC requests
const result = await provider.request(payload: RequestArguments);

// Close provider session
await provider.disconnect()

methods for Web3

//  Get Accounts
const accounts = await web3.eth.getAccounts()

//  Get Chain Id
const chainId = await web3.eth.chainId()

//  Get Network Id
const networkId = await web3.eth.net.getId()

// Send Transaction
const txHash = await web3.eth.sendTransaction(tx)

// Sign Transaction
const signedTx = await web3.eth.signTransaction(tx)

// Sign Message
const signedMessage = await web3.eth.sign(msg)

// Sign Typed Data
const signedTypedData = await web3.eth.signTypedData(msg)

release package step

  1. change the package.json version, and create PR to master.
  2. approved release on CI control
  3. create a new tag on Github

Readme

Keywords

none

Package Sidebar

Install

npm i deficonnect

Weekly Downloads

325

Version

1.6.14-dev.2

License

MIT

Unpacked Size

3.15 MB

Total Files

43

Last publish

Collaborators

  • cryptocom