verifyPhoneMask method

void verifyPhoneMask(
  1. String value
)

Implementation

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