[FIX] Node initialization logic for non-dynamic values.
This commit is contained in:
@@ -38,39 +38,6 @@ class AstromicFormController {
|
|||||||
|
|
||||||
/// Retrieves a specific [AstromicFieldNode] by its unique [id], creating it if an [initialValue] is provided.
|
/// Retrieves a specific [AstromicFieldNode] by its unique [id], creating it if an [initialValue] is provided.
|
||||||
AstromicFieldNode<T> node<T>(String id, {T? initialValue}) {
|
AstromicFieldNode<T> node<T>(String id, {T? initialValue}) {
|
||||||
// if (_nodes.containsKey(id)) {
|
|
||||||
// return (_nodes[id] as dynamic) as AstromicFieldNode<T>;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// if (initialValue != null || _isNullable<T>()) {
|
|
||||||
// final newNode = AstromicFieldNode<T>(
|
|
||||||
// initialValue as T,
|
|
||||||
// formatter: (v) => v?.toString() ?? '',
|
|
||||||
// parser: (v) => (T == String ? v : null) as T?,
|
|
||||||
// );
|
|
||||||
// _nodes[id] = newNode;
|
|
||||||
// return newNode;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// T? defaultValue;
|
|
||||||
// if (T == String || T == _typeOf<String?>()) {
|
|
||||||
// defaultValue = '' as T;
|
|
||||||
// } else if (T == int || T == _typeOf<int?>()) {
|
|
||||||
// defaultValue = 0 as T;
|
|
||||||
// } else if (T == bool || T == _typeOf<bool?>()) {
|
|
||||||
// defaultValue = false as T;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// if (defaultValue != null) {
|
|
||||||
// final newNode = AstromicFieldNode<T>(
|
|
||||||
// defaultValue,
|
|
||||||
// formatter: (v) => v.toString(),
|
|
||||||
// parser: (v) => null,
|
|
||||||
// );
|
|
||||||
// _nodes[id] = newNode;
|
|
||||||
// return newNode;
|
|
||||||
// }
|
|
||||||
// 1. Check if it exists
|
|
||||||
if (_nodes.containsKey(id)) {
|
if (_nodes.containsKey(id)) {
|
||||||
final existingNode = _nodes[id]!;
|
final existingNode = _nodes[id]!;
|
||||||
|
|
||||||
@@ -90,7 +57,7 @@ class AstromicFormController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
final replacementNode = AstromicFieldNode<T>(
|
final replacementNode = AstromicFieldNode<T>(
|
||||||
migratedValue as T, // Should be safe now
|
migratedValue as T,
|
||||||
formatter: (v) => v?.toString() ?? '',
|
formatter: (v) => v?.toString() ?? '',
|
||||||
parser: (v) => (T == String ? v : null) as T?,
|
parser: (v) => (T == String ? v : null) as T?,
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user