PhoneNumberFormField constructor

PhoneNumberFormField({
  1. Key? key,
  2. PhoneNumberEditingController? controller,
  3. InputDecoration decoration = const InputDecoration(),
  4. TextStyle? style,
  5. double countryCodeWidth = 135,
  6. String errorMessage = 'Invalid phone number',
  7. PhoneNumber? initialValue,
  8. AutovalidateMode autovalidateMode = AutovalidateMode.disabled,
  9. String dialogTitle = 'Area code',
  10. PhoneNumberFieldPrefixBuilder prefixBuilder = _buildPrefix,
})

Implementation

PhoneNumberFormField({
  Key? key,
  this.controller,
  InputDecoration decoration = const InputDecoration(),
  TextStyle? style,
  double countryCodeWidth = 135,
  String errorMessage = 'Invalid phone number',
  PhoneNumber? initialValue,
  AutovalidateMode autovalidateMode = AutovalidateMode.disabled,
  String dialogTitle = 'Area code',
  PhoneNumberFieldPrefixBuilder prefixBuilder = _buildPrefix,
}) : super(
        key: key,
        autovalidateMode: autovalidateMode,
        initialValue: controller != null
            ? controller.value
            : (initialValue ?? PhoneNumber.empty),
        validator: (value) {
          if (value?.isValid == true) return null;
          return errorMessage;
        },
        builder: (field) {
          final state = field as _PhoneNumberFormFieldState;
          return PhoneNumberField(
            style: style,
            controller: state._effectiveController,
            decoration: decoration.copyWith(errorText: field.errorText),
            countryCodeWidth: countryCodeWidth,
            dialogTitle: dialogTitle,
            prefixBuilder: prefixBuilder,
          );
        },
      );