fromBytes static method

Implementation

static TransactionBlockDataBuilder fromBytes(Uint8List bytes) {
  final rawData = SuiBcs.TransactionData.parse(bytes);
  final data = rawData["V1"];
  final programmableTx = data?["kind"]?["ProgrammableTransaction"];
  if (data == null || programmableTx == null) {
    throw ArgumentError('Unable to deserialize from bytes.');
  }

  final serialized = {
    "version": 2,
    "sender": data["sender"],
    "expiration": data["expiration"],
    "gasData": data["gasData"],
    "inputs": programmableTx["inputs"],
    "commands": programmableTx["commands"],
  };

  return TransactionBlockDataBuilder.restore(serialized);
}