[0.1.2]
This commit is contained in:
@@ -80,13 +80,17 @@ class AstromicFormController extends FormController {
|
||||
return true;
|
||||
}
|
||||
|
||||
/// Prepare a hosted value.
|
||||
void prepareValue<T>(String id, bool isRequired) {
|
||||
return _hostedValues.addEntries(<MapEntry<String, (dynamic, bool)>>[MapEntry<String, (dynamic, bool)>(id, (null, isRequired))]);
|
||||
}
|
||||
|
||||
/// Set the value of a hosted state variable using it's ID.
|
||||
void setValue<T>(String id, T data, {bool isRequired = false}) {
|
||||
if (_hostedValues.keys.toList().contains(id)) {
|
||||
_hostedValues[id] = (data, isRequired);
|
||||
} else {
|
||||
_hostedValues.addEntries(<MapEntry<String, (dynamic, bool)>>[MapEntry<String, (dynamic, bool)>(id, (data, isRequired))]);
|
||||
if (!_hostedValues.keys.toList().contains(id)) {
|
||||
prepareValue(id, isRequired);
|
||||
}
|
||||
_hostedValues[id] = (data, isRequired);
|
||||
_hostedValueValidationStreamController.add((id, false));
|
||||
}
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ class FormValueWrapper<T extends Object?> extends StatefulWidget {
|
||||
//SECTION - Widget Arguments
|
||||
final AstromicFormController controller;
|
||||
final String id;
|
||||
final bool isRequired;
|
||||
final Widget Function(T? value, bool isErroredForValidation, void Function(T value, bool isRequired) valueSetter) builder;
|
||||
//!SECTION
|
||||
//
|
||||
@@ -29,6 +30,7 @@ class FormValueWrapper<T extends Object?> extends StatefulWidget {
|
||||
super.key,
|
||||
required this.controller,
|
||||
required this.id,
|
||||
required this.isRequired,
|
||||
required this.builder,
|
||||
});
|
||||
|
||||
@@ -59,7 +61,7 @@ class _FormValueWrapperState<T> extends State<FormValueWrapper<T>> {
|
||||
//s1 --State
|
||||
//
|
||||
//s1 --Controllers & Listeners
|
||||
// _formController = widget.controller;
|
||||
widget.controller.prepareValue(widget.id, widget.isRequired);
|
||||
//s1 --Controllers & Listeners
|
||||
//
|
||||
//s1 --Late & Async Initializers
|
||||
|
||||
Reference in New Issue
Block a user