textControlBuilder function
AbstractControl
textControlBuilder(
- BuildContext context,
- Elementbase element, {
- dynamic validators = const <ValidatorFunction>[],
- Object? value,
Implementation
AbstractControl textControlBuilder(BuildContext context, s.Elementbase element,
{validators = const <ValidatorFunction>[], Object? value}) {
final e = element as s.Text;
if (e.inputType == s.TextInputType.date ||
e.inputType == s.TextInputType.datetimeLocal) {
return FormControl<String>(
validators: validators,
value: e.defaultValue.tryCastToString() ?? value.tryCastToString());
}
if (e.inputType == s.TextInputType.color) {
return FormControl<String>(
validators: validators,
value: e.defaultValue.tryCastToString() ?? value.tryCastToString());
}
if (e.inputType == s.TextInputType.email) {
return FormControl<String>(
validators: [...validators, Validators.email],
value: e.defaultValue.tryCastToString() ?? value.tryCastToString());
}
if (e.inputType == s.TextInputType.number) {
return FormControl<num>(
validators: [...validators, NullableNumberValidator().validate],
value: e.defaultValue.tryCastToNum() ?? value.tryCastToNum());
}
return FormControl<String>(
validators: validators,
value: e.defaultValue.tryCastToString() ?? value.tryCastToString());
}