registerLeaf method
void
registerLeaf(
- String name,
- JarSchema schema,
- dynamic value
)
Implementation
void registerLeaf(
String name, JarSchema<dynamic, dynamic> schema, dynamic value) {
final config = JarFieldConfig<dynamic>(
schema: schema as JarSchema<dynamic, JarSchema<dynamic, dynamic>>,
);
_configs[name] = config;
_fields[name] = JarFieldState<dynamic>(
value: value,
error: value == null
? null
: config.schema.validate(value, _contextFor(name, value)).error,
name: name,
onChange: (newValue) => setValue(name, newValue),
markAsTouched: () => markAsTouched(name),
);
_controllers[name] ??= StreamController<JarFieldState<dynamic>>.broadcast();
_watchers[name] ??= [];
_notifyField(name);
}