feat(form): add metadata tag to bypass validation #29

This commit is contained in:
2022-11-15 18:48:02 -05:00
parent cecbc94a95
commit 6eb40de72c
3 changed files with 161 additions and 5 deletions
@@ -18,38 +18,44 @@
import 'package:equatable/equatable.dart';
import 'package:wyatt_architecture/wyatt_architecture.dart';
class FormInputMetadata<Extra> extends Equatable
implements Entity {
class FormInputMetadata<Extra> extends Equatable implements Entity {
final bool export;
final bool isRequired;
final String? name;
final Extra? extra;
const FormInputMetadata({
this.export = true,
this.isRequired = true,
this.name,
this.extra,
});
FormInputMetadata<Extra> copyWith({
bool? export,
bool? isRequired,
String? name,
Extra? extra,
}) =>
FormInputMetadata<Extra>(
export: export ?? this.export,
isRequired: isRequired ?? this.isRequired,
name: name ?? this.name,
extra: extra ?? this.extra,
);
FormInputMetadata<Extra> clone() => copyWith(
export: export,
isRequired: isRequired,
name: name,
extra: extra,
);
@override
bool? get stringify => true;
List<Object?> get props => [export, isRequired, name, extra];
@override
List<Object?> get props => [export, name, extra];
String toString() =>
'FormInputMetada(name: $name, export: $export, isRequired: $isRequired, '
'${(extra != null) ? "extra(${extra.runtimeType}): $extra" : ""})';
}