isValidPassword method Null safety

String? isValidPassword(
  1. String? value
)

Validates a password.

Password contains a minimum of 6 characters, Contain at least one: Uppercase letter (A-Z), Lowercase letter (a-z), Numeric digit (0-9), Special character (~`!@#$%^&*()_+={]}[|:;"'<,>.?/), Contain no other types of characters, symbols, or spaces.

Implementation

static String? isValidPassword(String? value) {
  if (value == null || value.isEmpty) {
    return "Field cannot be empty";
  }
  String toReturn = "";
  if (!value.containsOneUppercase) {
    toReturn += "\n Must contain one uppercase letter";
  }
  if (!value.containsOneLowercase) {
    toReturn += "\n Must contain one lowercase letter";
  }
  if (!value.containsOneDigit) {
    toReturn += "\n Must contain one numeric digit";
  }
  if (!value.containsOneSpecial) {
    toReturn += "\n Must contain one special character, without spaces";
  }
  if (!value.isOfMinimumLength(6)) {
    toReturn += "\n Must be at least 6 characters";
  }
  return toReturn.isEmpty ? null : toReturn;
}