UNPKG

choerodon-ui

Version:

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

41 lines (36 loc) 1.44 kB
import { isArrayLike } from 'mobx'; import isEmpty from '../../_util/isEmpty'; import ValidationResult from '../ValidationResult'; import { $l } from '../../locale-context'; import formatReactTemplate from '../../formatter/formatReactTemplate'; function isEmptyArray(value) { return isEmpty(value) || isArrayLike(value) && (value.length === 0 || value.every(function (item) { return isEmptyArray(item); })); } export default function valueMissing(value, props) { var required = props.required, label = props.label, multiple = props.multiple, range = props.range, defaultValidationMessages = props.defaultValidationMessages; if (required && (isEmptyArray(value) || multiple && range && value.every(function (item) { return isEmptyArray(item); }))) { var injectionOptions = { label: label }; var key = label ? 'value_missing' : 'value_missing_no_label'; var ruleName = label ? 'valueMissing' : 'valueMissingNoLabel'; var _defaultValidationMes = defaultValidationMessages[ruleName], validationMessage = _defaultValidationMes === void 0 ? $l('Validator', key) : _defaultValidationMes; return new ValidationResult({ validationMessage: formatReactTemplate(validationMessage, injectionOptions), injectionOptions: injectionOptions, value: value, ruleName: ruleName }); } return true; } //# sourceMappingURL=valueMissing.js.map