feat(form): clean and add toString and equality

This commit is contained in:
Hugo Pointcheval 2022-11-10 13:24:29 -05:00
parent ae3711a136
commit 0c920e8245
Signed by: hugo
GPG Key ID: A9E8E9615379254F
7 changed files with 29 additions and 9 deletions

View File

@ -73,7 +73,9 @@ class WyattFormImpl extends WyattForm {
if (containsKey(key)) { if (containsKey(key)) {
return inputs.firstWhere((input) => input.key == key); return inputs.firstWhere((input) => input.key == key);
} else { } else {
throw Exception('FormInput with key `$key` does not exist in form'); throw Exception(
'FormInput with key `$key` does not exist in form `$name`',
);
} }
} }
@ -146,6 +148,6 @@ class WyattFormImpl extends WyattForm {
List<Object?> get props => [_inputs, _name, _validator]; List<Object?> get props => [_inputs, _name, _validator];
@override @override
String toString() => String toString() => 'WyattForm(name: $name, validation: '
'WyattForm(name: $name, validation: ${_validator.runtimeType}, inputs: $inputs)'; '${_validator.runtimeType}, inputs: $inputs)';
} }

View File

@ -41,4 +41,7 @@ class ConfirmedPassword
@override @override
ValidationStandardError get onNull => ValidationStandardError.invalid; ValidationStandardError get onNull => ValidationStandardError.invalid;
@override
List<Object?> get props => super.props + [password];
} }

View File

@ -57,4 +57,7 @@ class FormRepositoryImpl extends FormRepository {
void unregisterForm(String formName) { void unregisterForm(String formName) {
_runtimeForms.remove(formName); _runtimeForms.remove(formName);
} }
@override
String toString() => 'FormRepository($_runtimeForms)';
} }

View File

@ -63,5 +63,5 @@ class FormInput<
@override @override
String toString() => String toString() =>
'FormInput(name: $name, value: ${validator.value}, status: ${validator.status.name}'; 'FormInput(name: $name, $validator)';
} }

View File

@ -42,4 +42,10 @@ abstract class AnyValidator<O, I extends Iterable<O?>,
} }
return onError; return onError;
} }
@override
List<Object?> get props => super.props + [allChoices];
@override
String toString() => '${super.toString()}, choices: $allChoices';
} }

View File

@ -42,4 +42,10 @@ abstract class EqualityValidator<O extends Object, E extends ValidationError>
} }
return null; return null;
} }
@override
List<Object?> get props => super.props + [another];
@override
String toString() => '${super.toString()}, another: $another';
} }

View File

@ -107,8 +107,8 @@ abstract class FormInputValidator<Value, Error extends ValidationError>
Error? validator(Value? value); Error? validator(Value? value);
@override @override
bool? get stringify => true; List<Object?> get props => [value, pure];
@override @override
List<Object?> get props => [value, pure]; String toString() => 'value: $value, status: ${status.name}';
} }