UNPKG

mobile-more

Version:

基于 antd-mobile v5 扩展移动端 UI 组件

82 lines (78 loc) 2.89 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.InvalidFormValue = void 0; exports.transformBankCard = transformBankCard; exports.transformFormValues = transformFormValues; exports.transformValueToNames = void 0; var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")); var _ut = require("ut2"); // 转换 // 标识无效表单值 var InvalidFormValue = exports.InvalidFormValue = "_invalid_".concat(Math.random(), "_"); // 转换银行卡号 function transformBankCard(val) { var char = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ' '; if (typeof val !== 'string') { return val; } var ret = val.replace(/\s/g, ''); if (char) { var reg = new RegExp("\\".concat(char), 'g'); ret = val.replace(reg, ''); } return ret; } // 转换表单值 function transformFormValues(values, transforms, currentLevelValues) { if ((0, _ut.isArray)(values) && values.length <= 0 || (0, _ut.isArray)(transforms) && transforms.length <= 0 || !transforms) { return values; } var ret; if ((0, _ut.isArray)(values) && (0, _ut.isArray)(transforms)) { ret = values.map(function (item, index) { if ((0, _typeof2.default)(item) === 'object' || (0, _ut.isArray)(item)) { return transformFormValues(item, transforms[index]); } if (typeof transforms[index] === 'function') { return transforms[index](item); } return item; }); } else if ((0, _typeof2.default)(values) === 'object' && (0, _typeof2.default)(transforms) === 'object') { ret = {}; for (var key in values) { if ((0, _typeof2.default)(values[key]) === 'object' || (0, _ut.isArray)(values[key])) { ret[key] = transformFormValues(values[key], transforms[key], ret); } else if (typeof transforms[key] === 'function') { ret[key] = transforms[key](values[key], ret); } else { ret[key] = values[key]; } if (ret[key] === InvalidFormValue) { delete ret[key]; } } } else if (typeof transforms === 'function') { ret = transforms(values, currentLevelValues); } else { ret = values; } return ret; } var transformValueToNames = exports.transformValueToNames = function transformValueToNames(value, currentLevelValues, names) { if ((0, _ut.isArray)(names) && names.length > 0) { names.forEach(function (item, index) { var currentValue = (0, _ut.isArray)(value) && value.length > 0 ? value[index] : undefined; if ((0, _ut.isArray)(item) && item.length > 0) { (0, _ut.set)(currentLevelValues, item, currentValue); } else if ((0, _ut.isString)(item)) { currentLevelValues[item] = currentValue; } }); return InvalidFormValue; } return value; };