isCardNumberValid static method

bool isCardNumberValid(
  1. String cardNumber
)

Determines whether the credit card number provided is valid

@param cardNumber A credit card number @return true if the credit card number is valid, false otherwise

Implementation

static bool isCardNumberValid(String cardNumber) {
  if (cardNumber.isEmpty) {
    return false;
  }

  String ccn = cleanCardNumber(cardNumber);
  CardType cardType = getCardType(ccn);

  return ccn.length >= 12 &&
      ccn.length <= 19 &&
      _isNumeric(ccn) &&
      _isValidLuhnNumber(ccn) &&
      cardType != OTHER;
}