ethereum-tx-decoder

3.0.0 • Public • Published

ethereum-tx-decoder

npm versionBuild Status

Lightweight utility for decoding function parameters from Ethereum transactions.

Usage

npm i ethereum-tx-decoder

decodeTx()

Decode raw transactions into an Object.

  var txDecoder = require('ethereum-tx-decoder');
 
  // transaction.raw = '0x...'
  var decodedTx = txDecoder.decodeTx(transaction.raw);
  //  {
  //    nonce:    Number
  //    gasPrice: BigNumber
  //    gasLimit: BigNumber
  //    to:       string (hex)
  //    value:    BigNumber
  //    data:     string (hex)
  //    v:        Number
  //    r:        string (hex)
  //    s:        string (hex)
  //  }

Need to know from or chainId? Use ethers.Wallet.parseTransaction() instead.

class FunctionDecoder

Decode function call data into the original parameter values.

New instance with ethers.Contract:

  // contract = new Contract(address, abi, provider)
  var fnDecoder = new txDecoder.FunctionDecoder(contract.interface);

New instance with contract abi:

  // Internally creates an ethers.Interface object.
  var fnDecoder = new txDecoder.FunctionDecoder(abi);

decodeFn()

  fnDecoder.decodeFn(decodedTx.data);
  //  Result {
  //    ...All function parameters indexed by both name and position...
  //  }

Note: decodeFn() returns an Arrayish.

decodeFnFromTx()

Shortcut for decoding a function from transaction.

  fnDecoder.decodeFnFromTx(transaction.raw);

BigNumber

BigNumber Documentation (ethers.js)

Package Sidebar

Install

npm i ethereum-tx-decoder

Weekly Downloads

1,800

Version

3.0.0

License

MIT

Unpacked Size

6.16 kB

Total Files

7

Last publish

Collaborators

  • gfjhogue