passwordRequires method
Returns the text displayed when a password input does match the password requirements defined in the amplify configuration.
Implementation
String passwordRequires(
BuildContext context,
PasswordProtectionSettings requirements,
) {
final minLength = requirements.passwordPolicyMinLength;
final characterReqs = requirements.passwordPolicyCharacters;
if (minLength == null && (characterReqs.isEmpty)) {
return '';
}
final sb = StringBuffer()
..writeln(
AuthenticatorLocalizations.inputsOf(context)
.passwordRequirementsPreamble,
);
if (minLength != null) {
final atLeast = AuthenticatorLocalizations.inputsOf(context)
.passwordRequirementsAtLeast(minLength, '');
sb.writeln('* $atLeast');
}
for (final characterReq in characterReqs) {
final characterType = AuthenticatorLocalizations.inputsOf(context)
.passwordRequirementsCharacterType(characterReq.name);
final atLeast = AuthenticatorLocalizations.inputsOf(context)
.passwordRequirementsAtLeast(1, characterType);
sb.writeln('* $atLeast');
}
return sb.toString();
}