feat(form): add raw form validator

This commit is contained in:
Hugo Pointcheval 2022-08-26 13:42:01 +02:00
parent 24ebdc008c
commit a1e36f84be
Signed by: hugo
GPG Key ID: A9E8E9615379254F
3 changed files with 13 additions and 3 deletions

View File

@ -28,4 +28,8 @@ abstract class FormValidator {
.every((validator) => validator.pure);
FormStatus validate(FormData form);
FormStatus rawValidate(
List<FormInputValidator<dynamic, ValidationError>> validators,
);
}

View File

@ -29,9 +29,14 @@ class EveryInputValidator extends FormValidator {
return FormStatus.pure;
}
if (form
.validators<dynamic, ValidationError>()
.any((validator) => validator.valid == false)) {
return rawValidate(form.validators<dynamic, ValidationError>());
}
@override
FormStatus rawValidate(
List<FormInputValidator<dynamic, ValidationError>> validators,
) {
if (validators.any((validator) => validator.valid == false)) {
return FormStatus.invalid;
}

View File

@ -14,6 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
export 'form/every_input_validator.dart';
export 'inputs/base/regex_validator.dart';
export 'inputs/base/text_validator.dart';
export 'inputs/boolean.dart';