checkForSignatureStatuses function

Future<bool> checkForSignatureStatuses(
  1. List<String> signatures,
  2. Repository repo
)

Implementation

Future<bool> checkForSignatureStatuses(
    List<String> signatures, Repository repo) async {
  bool isConfirmed = false;
  for (int i = 0; i < 20; i++) {
    SignatureStatusesResult? result =
        await repo.getSignatureStatuses(signatures);

    if (result != null) {
      for (var status in result.value) {
        if (status?.confirmationStatus == Commitment.finalized) {
          isConfirmed = true;
          break;
        }
        await Future.delayed(const Duration(seconds: 1));
      }
    }
    if (isConfirmed) {
      break;
    }
  }

  return isConfirmed;
}