getFieldStream<T> method

Stream<JarFieldState<T>>? getFieldStream<T>(
  1. String name
)

Implementation

Stream<JarFieldState<T>>? getFieldStream<T>(String name) {
  final stream = _controllers[name]?.stream;
  if (stream == null) return null;

  return stream.map((dynamic state) {
    if (state is JarFieldState) {
      return JarFieldState<T>(
        value: state.value is T ? state.value as T? : null,
        error: state.error,
        isDirty: state.isDirty,
        isTouched: state.isTouched,
        isValidating: state.isValidating,
        isDisabled: state.isDisabled,
        name: state.name,
        onChange: (value) => setValue<T>(name, value),
        markAsTouched: () => markAsTouched(name),
      );
    }
    throw StateError('Invalid state type in stream');
  });
}