signTransactionRaw function
Future<Uint8List>
signTransactionRaw(
- Transaction transaction,
- Credentials c, {
- int? chainId = 1,
Implementation
Future<Uint8List> signTransactionRaw(Transaction transaction, Credentials c,
{int? chainId = 1}) async {
if (transaction.isEIP1559 && chainId != null) {
final encodedTx = LengthTrackingByteSink();
encodedTx.addByte(0x02);
encodedTx.add(rlp
.encode(_encodeEIP1559ToRlp(transaction, null, BigInt.from(chainId))));
encodedTx.close();
final signature = await c.signToSignature(encodedTx.asBytes(),
chainId: chainId, isEIP1559: transaction.isEIP1559);
return uint8ListFromList(rlp.encode(
_encodeEIP1559ToRlp(transaction, signature, BigInt.from(chainId))));
}
final innerSignature =
chainId == null ? null : MsgSignature(BigInt.zero, BigInt.zero, chainId);
final encoded =
uint8ListFromList(rlp.encode(_encodeToRlp(transaction, innerSignature)));
final signature = await c.signToSignature(encoded, chainId: chainId);
return uint8ListFromList(rlp.encode(_encodeToRlp(transaction, signature)));
}