adaptInitialValue method

  1. @override
void adaptInitialValue({
  1. String? value,
})
override

Implementation

@override
void adaptInitialValue({String? value}) {
  value ??= widget.initialValue ?? '';

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