import 'package:formz/formz.dart'; enum TransactionDateValidationError { empty('Date empty'), invalid('Date invalid'); final String message; const TransactionDateValidationError(this.message); } class TransactionDate extends FormzInput { const TransactionDate.pure() : super.pure(null); const TransactionDate.dirty([super.value]) : super.dirty(); @override TransactionDateValidationError? validator(DateTime? value) { return value == null ? TransactionDateValidationError.empty : null; } }