approveTokenAndCallContract method

Future approveTokenAndCallContract(
  1. Web3 web3,
  2. String walletAddress,
  3. String tokenAddress,
  4. String contractAddress,
  5. String data, {
  6. String? network,
  7. num? tokensAmount,
  8. BigInt? amountInWei,
  9. Map? transactionBody,
  10. Map? txMetadata,
})

Implementation

Future<dynamic> approveTokenAndCallContract(
  Web3 web3,
  String walletAddress,
  String tokenAddress,
  String contractAddress,
  String data, {
  String? network,
  num? tokensAmount,
  BigInt? amountInWei,
  Map? transactionBody,
  Map? txMetadata,
}) async {
  Map<String, dynamic> signedData =
      await web3.approveTokenAndCallContractOffChain(
    walletAddress,
    tokenAddress,
    contractAddress,
    data,
    amountInWei: amountInWei,
    tokensAmount: tokensAmount,
    network: network,
    transactionBody: transactionBody,
    txMetadata: txMetadata,
  );
  Response response = await _dio.post(
    '/v1/relay',
    options: options,
    data: signedData,
  );

  return response.data;
}