isValid method

bool isValid(
  1. String? aadhaar
)

function to check if the provider aadhaar is valid or not.

return true if the aadhaar seems to be valid.

Implementation

bool isValid(String? aadhaar) {
  if (aadhaar == null) return false;

  // remove the spaces from aadhaar
  String aadhaarWithoutSpace = aadhaar.replaceAll(RegExp(r"\s+"), "");

  if (aadhaarWithoutSpace.length != 12) {
    // aadhaar length must be 12
    return false;
  }

  RegExp aadhaarRegEx = RegExp(r'[2-9]{1}[0-9]{3}[0-9]{4}[0-9]{4}');
  if (!aadhaarRegEx.hasMatch(aadhaarWithoutSpace)) {
    // aadhaar regular expression not matched
    return false;
  }

  // now validate with Verhoeff algorithm
  return VerhoeffAlgorithm.validateVerhoeff(aadhaarWithoutSpace);
}