UNPKG

micro-ui-y

Version:

223 lines (198 loc) 8.86 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.subVerifyRes = exports.formData = undefined; var _index = require("../constants/index"); var actionTypes = _interopRequireWildcard(_index); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } var dataType = ["default"]; var formData = function formData() { var formData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments[1]; switch (action.type) { case actionTypes.set_form_data: formData = Object.assign({}, formData); dataType = action.dataType; if (!formData[dataType]) { formData[dataType] = {}; } var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = action.data[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var o = _step.value; formData[dataType][o.name] = o; } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } return formData; case actionTypes.del_form_data: formData = Object.assign({}, formData); if (Object.keys(formData).length > 0) { delete formData[action.dataType][action.inputName]; } return formData; case actionTypes.reset_form: formData = Object.assign({}, formData); var keys = Object.keys(formData); var data = typeof action.data == "array" && action.data.length > 0 ? action.data : keys; data.forEach(function (item) { var formDataType = formData[item]; for (var _o in formDataType) { switch (formDataType[_o].type) { case "input": case "textarea": case "date": case "radio": case "select": case "selectLenovo": case "time": formDataType[_o].text = ""; formDataType[_o].value = ""; formDataType[_o].obj = {}; break; case "checkbox": case "selectCheckbox": case "selectLenovoCheckbox": formDataType[_o].text = []; formDataType[_o].value = []; formDataType[_o].obj = { arr: [] }; break; case "dateRange": case "dateWeek": formDataType[_o].text = ""; formDataType[_o].value = { beginDate: "", endDate: "" }; formDataType[_o].obj = { arr: [] }; break; case "dateTime": formDataType[_o].text = ""; formDataType[_o].value = { date: "", time: "" }; formDataType[_o].obj = {}; break; case "organization": formDataType[_o].text = ""; formDataType[_o].value = []; formDataType[_o].obj = {}; break; } } }); return formData; case actionTypes.del_form_store: formData = Object.assign({}, formData); if (action.dataFlag == "all") { formData = {}; } var _iteratorNormalCompletion2 = true; var _didIteratorError2 = false; var _iteratorError2 = undefined; try { for (var _iterator2 = action.dataType[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { var _o2 = _step2.value; delete formData[_o2]; } } catch (err) { _didIteratorError2 = true; _iteratorError2 = err; } finally { try { if (!_iteratorNormalCompletion2 && _iterator2.return) { _iterator2.return(); } } finally { if (_didIteratorError2) { throw _iteratorError2; } } } return formData; default: return formData; } }; var subVerifyRes = function subVerifyRes() { var subVerifyRes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; var action = arguments[1]; switch (action.type) { case actionTypes.submit_verify: var data = action.data; // fail:存在必填校验未填写, success:不存在,便可提交。 var flag = { default: "fail" }; var verifyType = action.verifyType; //verifyType = ["default"] verifyType.forEach(function (item, index) { var formValue = data[item]; if (Object.keys(formValue).length) { flag[item] = "success"; for (var o in formValue) { //input单独的正则校验 有值才校验 if (formValue[o].text && formValue[o].other && formValue[o].other.regex) { if (!formValue[o].other.regex.test(formValue[o].text)) { flag[item] = "fail"; break; } } //如果是必填项 if (formValue[o].other && formValue[o].other.required && (formValue[o].other.required === true || formValue[o].other.required === "true")) { //只要有一个,没有填写,就设置fail,并跳出循环 var type1 = ["number", "input", "textarea", "date", "dateRange", "dateTime", "dateWeek", "organization", "radio", "select", "selectLenovo", "time"]; if (type1.includes(formValue[o].type) && !(formValue[o].text === 0 || formValue[o].text === "0" ? "0" : formValue[o].text)) { flag[item] = "fail"; break; } var type2 = ["checkbox", "selectCheckbox", "selectLenovoCheckbox"]; if (type2.includes(formValue[o].type) && !formValue[o].text.length) { flag[item] = "fail"; break; } } } } }); return flag; case actionTypes.reset_verify: var subVerifyResData = Object.assign({}, subVerifyRes); var acDataType = action.dataType; var acDataFlag = action.dataFlag; if (acDataFlag == "all") { subVerifyResData = ""; } else { for (var o in subVerifyRes) { if (acDataType.includes(o)) { delete subVerifyResData[o]; } } } return subVerifyResData; default: return subVerifyRes; } }; exports.formData = formData; exports.subVerifyRes = subVerifyRes; //# sourceMappingURL=from.js.map