fix validate on user interaction

This commit is contained in:
J. A. Messias 2024-09-16 09:28:58 -03:00
parent ef036f7924
commit 5d8d56cb70
3 changed files with 22 additions and 6 deletions

View File

@ -60,11 +60,16 @@ class _CustomInputUtilState extends State<CustomInputUtil> {
validator: widget.validator,
autofocus: widget.autoFocus,
focusNode: widget.focusNode,
onChanged: (_) => EasyDebounce.debounce(
'${widget.controller}',
const Duration(milliseconds: 500),
() => setState(() {}),
),
onChanged: (value) {
EasyDebounce.debounce(
'${widget.controller}',
const Duration(milliseconds: 500),
() => setState(() {}),
);
if (widget.onChanged != null) {
widget.onChanged!(value); // Chamar o callback
}
},
textInputAction: widget.textInputAction,
obscureText: false,
decoration: InputDecoration(

View File

@ -201,7 +201,8 @@ class PetsPageModel extends FlutterFlowModel<PetsPageWidget> {
size: dropDownValue2!,
)
.then((response) {
if (response.jsonBody['error'] == true) {
if (response.jsonBody['error'] == true ||
isFormValid(buildContext!) == false) {
DialogUtil.error(buildContext!,
jsonDecode(response.jsonBody['error_msg'])[0]['message']);
}

View File

@ -233,6 +233,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
.getVariableText(ptText: 'Nome', enText: 'Name'),
suffixIcon: Symbols.format_color_text,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
Padding(
@ -249,6 +250,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'e.g. Dog, Cat, Parrot'),
suffixIcon: Symbols.sound_detection_dog_barking,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
),
@ -266,6 +268,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'e.g. Labrador, Poodle, Siamese, Persian'),
suffixIcon: Icons.pets_outlined,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
),
@ -283,6 +286,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'e.g. Black, Yellow, White'),
suffixIcon: Symbols.palette,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
),
@ -620,6 +624,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'Write your observations here...'),
suffixIcon: Icons.text_fields,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 250,
),
Padding(
@ -691,6 +696,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
.getVariableText(ptText: 'Nome', enText: 'Name'),
suffixIcon: Symbols.format_color_text,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
Padding(
@ -707,6 +713,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'e.g. Dog, Cat, Parrot'),
suffixIcon: Symbols.sound_detection_dog_barking,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
),
@ -724,6 +731,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'e.g. Labrador, Poodle, Siamese, Persian'),
suffixIcon: Icons.pets_outlined,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
),
@ -741,6 +749,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
enText: 'e.g. Black, Yellow, White'),
suffixIcon: Symbols.palette,
haveMaxLength: true,
onChanged: (value) => setState(() {}),
maxLength: 80,
),
),
@ -1081,6 +1090,7 @@ class _PetsPageWidgetState extends State<PetsPageWidget>
suffixIcon: Icons.text_fields,
haveMaxLength: true,
maxLength: 250,
onChanged: (value) => setState(() {}),
),
Padding(
padding: const EdgeInsets.fromLTRB(70, 20, 70, 30),