UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

45 lines (39 loc) 1.5 kB
import { isMoment } from 'moment'; import isNil from 'lodash/isNil'; import isEmpty from '../../_util/isEmpty'; import ValidationResult from '../ValidationResult'; import { $l } from '../../locale-context'; import { formatReactTemplate } from '../../formatter/formatReactTemplate'; import { toRangeValue } from '../../field/utils'; var isUnderflow = function isUnderflow(value, min, range) { if (range) { return toRangeValue(value, range).some(function (item) { return !isEmpty(item) && Number(item) < Number(min); }); } return !isEmpty(value) && Number(value) < Number(min); }; export default function rangeUnderflow(value, props) { var min = props.min, label = props.label, format = props.format, defaultValidationMessages = props.defaultValidationMessages, range = props.range; if (!isNil(min) && isUnderflow(value, min, range)) { var injectionOptions = { min: isMoment(min) ? min.format(format) : min, label: label }; var ruleName = 'rangeUnderflow'; var _defaultValidationMes = defaultValidationMessages[ruleName], validationMessage = _defaultValidationMes === void 0 ? $l('Validator', 'range_underflow') : _defaultValidationMes; return new ValidationResult({ validationMessage: formatReactTemplate(validationMessage, injectionOptions), injectionOptions: injectionOptions, value: value, ruleName: ruleName }); } return true; } //# sourceMappingURL=rangeUnderflow.js.map