collectRequestTVF method

  1. @visibleForTesting
TVFData? collectRequestTVF(
  1. int id,
  2. WcSessionRequestRequest request
)

******* TVF *********** /// collection during request from dapp

Implementation

@visibleForTesting
TVFData? collectRequestTVF(int id, WcSessionRequestRequest request) {
  final method = request.request.method;
  // if (!TVFData.tvfRequestMethods.contains(method)) {
  //   return null;
  // }
  final params = request.request.params;

  // params to collect
  final rpcMethods = List<String>.from([method]);
  final chainId = request.chainId;
  List<String>? contractAddresses;
  final contractAddress = collectContractAddressIfNeeded(chainId, params);
  if (contractAddress != null) {
    contractAddresses = [contractAddress];
  }

  final tvfData = TVFData(
    rpcMethods: rpcMethods,
    chainId: chainId,
    contractAddresses: contractAddresses,
    requestParams: request.request.params,
  );

  // pendingTVFRequests is useful for WalletKit _onSessionRequest method
  pendingTVFRequests[id] = tvfData;

  // return is useful for AppKit's request() method
  return tvfData;
}