3.0.0 • Published 6 years ago
ethereum-tx-decoder v3.0.0
ethereum-tx-decoder
Lightweight utility for decoding function parameters from Ethereum transactions.
Minimal dependencies.
Find the exact function parameters that triggered an event.
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);