SolTxDataV2.fromJson constructor

SolTxDataV2.fromJson(
  1. Map<String, dynamic> params
)

Implementation

factory SolTxDataV2.fromJson(Map<String, dynamic> params) {
  final tx = SolanaTransaction.legacy(
      payer: Pubkey.fromString(params['feePayer']),
      recentBlockhash: params['recentBlockhash'],
      instructions: (params['instructions'] as List).map((item) {
        final data =
            (item['data'] as List).map((e) => NumberUtil.toInt(e)).toList();

        return TransactionInstruction(
            data: data.toUint8List(),
            programId: Pubkey.fromString(item['programId']),
            keys: (item['keys'] as List)
                .map((k) => AccountMeta(Pubkey.fromString(k['pubkey']),
                    isSigner: k['isSigner'], isWritable: k['isWritable']))
                .toList());
      }).toList());

  return SolTxDataV2(tx);
}