verifyPhoneMask method
void
verifyPhoneMask(
- String value
)
override
Implementation
@override
void verifyPhoneMask(String value) {
String valueWithoutPrefix = value;
valueWithoutPrefix = valueWithoutPrefix.replaceFirst(widget.prefix, '');
if (valueWithoutPrefix.length > 14) {
if (currentMask != maskWithPrefix('(##) #####-####')) {
setState(() {
currentMask = maskWithPrefix('(##) #####-####');
});
for (TextInputFormatter element in inputFormatters) {
if (element is MaskTextInputFormatter) {
element.updateMask(
mask: maskWithPrefix('(##) #####-####'),
filter: <String, RegExp>{'#': RegExp(r'[0-9]')},
newValue: TextEditingValue.empty,
);
value = element
.formatEditUpdate(
TextEditingValue.empty, TextEditingValue(text: value))
.text;
}
}
setValue(value);
}
} else {
if (currentMask != maskWithPrefix('(##) ####-#####')) {
setState(() {
currentMask = maskWithPrefix('(##) ####-#####');
});
for (TextInputFormatter element in inputFormatters) {
if (element is MaskTextInputFormatter) {
element.updateMask(
mask: maskWithPrefix('(##) ####-#####'),
filter: <String, RegExp>{'#': RegExp(r'[0-9]')},
newValue: TextEditingValue.empty,
);
value = element
.formatEditUpdate(
TextEditingValue.empty, TextEditingValue(text: value))
.text;
}
setValue(value);
}
}
}
}