minValueValidator<TEntity extends num> function

ValidatorsFunction<FormControl<TEntity>> minValueValidator<TEntity extends num>({
  1. TEntity? min,
  2. TEntity getterMin()?,
  3. String message = 'Значение слишком маленькое',
  4. dynamic eventType = ValidationEventTypes.Error,
})

Implementation

ValidatorsFunction<FormControl<TEntity>>
    minValueValidator<TEntity extends num>({
  TEntity? min,
  TEntity Function()? getterMin,
  String message = 'Значение слишком маленькое',
  eventType = ValidationEventTypes.Error,
}) {
  assert(
      !(min != null && getterMin != null), "use \"value\" or \"getterValue\"");
  assert(
      !(min == null && getterMin == null), "use \"value\" or \"getterValue\"");
  final getMin = getterMin ?? () => min!;
  return (FormControl<TEntity> control) async {
    if (control.value == null) {
      return [];
    }
    final minValue = getMin();
    final value = control.value;
    // if (typeof value === 'string') {
    //   if (typeof minValue === 'number') {
    //     value = +value;
    //   } else if (minValue instanceof Date) {
    //     value = new Date(value);
    //   }
    // }
    if (value < minValue) {
      return [
        ValidationEvent(
          key: minValueValidatorKey,
          message: message,
          type: eventType,
        )
      ];
    }
    return [];
  };
}