diff --git a/lib/src/auth_screen.dart b/lib/src/auth_screen.dart index e200e45..111d038 100644 --- a/lib/src/auth_screen.dart +++ b/lib/src/auth_screen.dart @@ -27,18 +27,6 @@ class AuthScreen extends StatefulWidget { class _AuthScreenState extends State { int _index = 0; final _formKey = GlobalKey(); - final HashMap _textEditingControllers = - HashMap(); - - @override - void initState() { - for (var step in widget.steps) { - for (var field in step.fields) { - _textEditingControllers[field] = TextEditingController(); - } - } - super.initState(); - } @override Widget build(BuildContext context) { @@ -77,23 +65,7 @@ class _AuthScreenState extends State { ), ), ), - TextFormField( - controller: _textEditingControllers[field], - obscureText: field.obscureText, - onChanged: (value) { - field.value = value; - }, - validator: (value) { - for (var validator in field.validators) { - var output = validator(value); - if (output != null) { - return output; - } - } - - return null; - }, - ), + field.build(), ], ) ], diff --git a/lib/src/model/auth_field.dart b/lib/src/model/auth_field.dart index 2421fe0..d0a123c 100644 --- a/lib/src/model/auth_field.dart +++ b/lib/src/model/auth_field.dart @@ -4,14 +4,12 @@ abstract class AuthField { AuthField({ required this.name, required this.title, - this.obscureText = false, this.validators = const [], this.value = '', }); final String name; final String title; - final bool obscureText; List validators; String value; diff --git a/lib/src/model/auth_text_field.dart b/lib/src/model/auth_text_field.dart index fb41b92..b76bb9a 100644 --- a/lib/src/model/auth_text_field.dart +++ b/lib/src/model/auth_text_field.dart @@ -5,14 +5,15 @@ class AuthTextField extends AuthField { AuthTextField({ required super.name, required super.title, - super.obscureText = false, super.validators = const [], super.value = '', + this.obscureText = false, }) { _textEditingController = TextEditingController(); } late TextEditingController _textEditingController; + final bool obscureText; @override Widget build() => TextFormField(