LegacyTxData.deserialize constructor

LegacyTxData.deserialize(
  1. String hash, {
  2. int? chainId,
})

Implementation

factory LegacyTxData.deserialize(String hash, {int? chainId}) {
  final decodeData = Rlp.decode(dynamicToUint8List(hash));

  final txData = EthTxDataRaw(
    nonce: hexToBigInt(dynamicToString(decodeData[0])).toInt(),
    gasPrice: hexToBigInt(dynamicToString(decodeData[1])).toInt(),
    gasLimit: hexToBigInt(dynamicToString(decodeData[2])).toInt(),
    to: dynamicToHex(decodeData[3]),
    value: hexToBigInt(dynamicToString(decodeData[4])),
    data: dynamicToHex(decodeData[5])
  );

  if (decodeData.length == 9) {
    txData.v = hexToBigInt(dynamicToString(decodeData[6])).toInt();
    txData.r = hexToBigInt(dynamicToString(decodeData[7]));
    txData.s = hexToBigInt(dynamicToString(decodeData[8]));
  }

  return LegacyTxData(data: txData, network: TxNetwork(chainId: chainId ?? -1));
}