UNPKG

choerodon-ui

Version:

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

60 lines (45 loc) 1.92 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = rangeUnderflow; var _moment = require("moment"); var _isNil = _interopRequireDefault(require("lodash/isNil")); var _isEmpty = _interopRequireDefault(require("../../_util/isEmpty")); var _ValidationResult = _interopRequireDefault(require("../ValidationResult")); var _localeContext = require("../../locale-context"); var _formatReactTemplate = require("../../formatter/formatReactTemplate"); var _utils = require("../../field/utils"); var isUnderflow = function isUnderflow(value, min, range) { if (range) { return (0, _utils.toRangeValue)(value, range).some(function (item) { return !(0, _isEmpty["default"])(item) && Number(item) < Number(min); }); } return !(0, _isEmpty["default"])(value) && Number(value) < Number(min); }; function rangeUnderflow(value, props) { var min = props.min, label = props.label, format = props.format, defaultValidationMessages = props.defaultValidationMessages, range = props.range; if (!(0, _isNil["default"])(min) && isUnderflow(value, min, range)) { var injectionOptions = { min: (0, _moment.isMoment)(min) ? min.format(format) : min, label: label }; var ruleName = 'rangeUnderflow'; var _defaultValidationMes = defaultValidationMessages[ruleName], validationMessage = _defaultValidationMes === void 0 ? (0, _localeContext.$l)('Validator', 'range_underflow') : _defaultValidationMes; return new _ValidationResult["default"]({ validationMessage: (0, _formatReactTemplate.formatReactTemplate)(validationMessage, injectionOptions), injectionOptions: injectionOptions, value: value, ruleName: ruleName }); } return true; } //# sourceMappingURL=rangeUnderflow.js.map