tokenTransfer method

Future<String> tokenTransfer(
  1. String tokenAddress,
  2. String receiverAddress,
  3. String tokensAmount
)

Implementation

Future<String> tokenTransfer(
  String tokenAddress,
  String receiverAddress,
  String tokensAmount,
) async {
  EthereumAddress receiver = EthereumAddress.fromHex(receiverAddress);
  dynamic tokenDetails = await getTokenDetails(tokenAddress);
  int tokenDecimals = int.parse(tokenDetails["decimals"].toString());
  Decimal tokensAmountDecimal = Decimal.parse(tokensAmount);
  Decimal decimals = Decimal.parse(pow(10, tokenDecimals).toString());
  BigInt amount = BigInt.parse((tokensAmountDecimal * decimals).toString());
  return await _callContract(
    'BasicToken',
    tokenAddress,
    'transfer',
    [receiver, amount],
  );
}