encodeDataAndApproveTokenAndCallContract method

Future<DC<Exception, Stream<SmartWalletEvent>>> encodeDataAndApproveTokenAndCallContract(
  1. EthPrivateKey credentials,
  2. String jsonInterface,
  3. String contractAddress,
  4. String contractName,
  5. String methodName,
  6. String tokenAddress,
  7. String value,
  8. List params, {
  9. Map<String, dynamic>? transactionBody,
})

Implementation

Future<DC<Exception, Stream<SmartWalletEvent>>>
    encodeDataAndApproveTokenAndCallContract(
  EthPrivateKey credentials,
  String jsonInterface,
  String contractAddress,
  String contractName,
  String methodName,
  String tokenAddress,
  String value,
  List<dynamic> params, {
  Map<String, dynamic>? transactionBody,
}) async {
  final String data = ContractsUtils.encodedDataForContractCall(
    contractName,
    EthereumAddress.fromHex(contractAddress),
    methodName,
    params,
    jsonInterface: jsonInterface,
  );

  return approveTokenAndCallContract(
    credentials,
    tokenAddress,
    contractAddress,
    value,
    data,
    transactionBody: transactionBody,
  );
}