UNPKG

@aliretail/react-materials-components

Version:
38 lines (30 loc) 1.8 kB
import OriginLogicalEditor from "./LogicalEditor"; import { registerConditionComponent } from "./map"; import Single from "./Single"; import { validate, pass } from "../FormError"; var LogicalEditor = OriginLogicalEditor; LogicalEditor.registerConditionComponent = registerConditionComponent; LogicalEditor.validator = function (rule, value, required) { var _ref2; var _ref = rule || {}, requiredFromRule = _ref.required; var realRequired = (_ref2 = requiredFromRule !== null && requiredFromRule !== void 0 ? requiredFromRule : required) !== null && _ref2 !== void 0 ? _ref2 : false; // 如果必选,校验全部 if (realRequired) { return validate('LogicalEditor'); } else { var _value$conditionGroup, _value$conditionGroup2, _value$conditionGroup3, _value$conditionGroup4; // 如果非必填,则判断只有一条的未填的时候就通过 if (value === undefined) { return pass('LogicalEditor'); } if (((_value$conditionGroup = value.conditionGroups) === null || _value$conditionGroup === void 0 ? void 0 : _value$conditionGroup.length) === 1 && // 只有一个条件组 ((_value$conditionGroup2 = value.conditionGroups[0].conditions) === null || _value$conditionGroup2 === void 0 ? void 0 : _value$conditionGroup2.length) === 1 && // 条件组中只有一个条件 ((_value$conditionGroup3 = value.conditionGroups[0].conditions) === null || _value$conditionGroup3 === void 0 ? void 0 : (_value$conditionGroup4 = _value$conditionGroup3[0]) === null || _value$conditionGroup4 === void 0 ? void 0 : _value$conditionGroup4.key) === undefined // 这个条件没有选关系类型 ) { return pass('LogicalEditor'); } return validate('LogicalEditor'); } }; LogicalEditor.Single = Single; export default LogicalEditor;