validate method

bool validate([
  1. bool isFromSubmission = false
])
inherited

Validate the input text by invoking its validator.

Implementation

bool validate([bool isFromSubmission = false]) {
  if (!isFromSubmission &&
      _inj.hasError &&
      _inj.oldSnapState?.data == _inj.snapValue.data) {
    return false;
  }
  _inj.snapValue = _inj.snapValue.copyToHasData(value);

  if (_validator != null) {
    for (var e in _validator!) {
      final error = e.call(value);
      if (error != null) {
        _inj.snapValue = _inj.snapValue.copyWith(
          status: StateStatus.hasError,
          error: SnapError(error: error, refresher: () {}),
          data: value,
        );
        break;
      }
    }
  }
  if (form != null) {
    form?.notify();
  } else {
    _inj.notify();
  }
  return isValid;
}