UNPKG

qt-public-ui

Version:

新设计规范下业务组件库

108 lines (107 loc) 4.35 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.values2array = exports.toValue = exports.mergeValue = exports.mapPropsToFields = exports.formatFields = exports.fields2Array = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray")); var _antd = require("antd"); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /* eslint-disable no-param-reassign */ var isField = function isField(obj) { if (!(obj instanceof Object)) return false; return Object.keys(obj).length === 1 && 'name' in obj || 'value' in obj; }; var smooth = function smooth(target, source, defaultValue) { var _target = (0, _toConsumableArray2["default"])(target); if (target.length > source.length) { return _target.slice(0, source.length); } else if (target.length === source.length) { return _target; } else { var diff = source.length - target.length; var diffEle = new Array(diff).fill(defaultValue); _target.push.apply(_target, diffEle); return _target; } }; var mapPropsToFields = exports.mapPropsToFields = function mapPropsToFields(value) { return value.reduce(function (flds, val, index) { var keys = Object.keys(val); keys.forEach(function (key) { var _key = "".concat(index, ".").concat(key); var _field = isField(val[key]) ? val[key] : { value: val[key] }; flds[_key] = _antd.Form.createFormField(_field); }); return flds; }, {}); }; var toValue = exports.toValue = function toValue() { var field = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return Object.keys(field).reduce(function (result, key) { var prop = field[key]; if (isField(prop)) { result[key] = field[key].value; } else { result[key] = prop; } return result; }, {}); }; var fields2Array = exports.fields2Array = function fields2Array(fields) { var allKeys = Object.keys(fields).sort(function (a, b) { return Number(a) - Number(b); }); var value = []; allKeys.forEach(function (k) { var field = fields[k]; var keys = Object.keys(field); var _field = {}; keys.forEach(function (key) { delete field[key].name; _field[key] = field[key]; }); value.push(_field); }); return value; }; var formatFields = exports.formatFields = function formatFields(fields) { return fields.map(function (field) { var keys = Object.keys(field); var _field = {}; keys.forEach(function (key) { _field[key] = isField(field[key]) ? field[key].value : field[key]; }); return _field; }); }; var mergeValue = exports.mergeValue = function mergeValue(fields, value) { var initialRow = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; if (!fields) return []; var _fields = smooth(fields, value, initialRow); return _fields.map(function (field, index) { var keys = Object.keys(field); var _field = {}; if (keys.length > 0) { keys.forEach(function (key) { if (isField(field[key])) { _field[key] = _objectSpread(_objectSpread({}, field[key]), {}, { value: value[index][key] }); } else { _field[key] = value[index][key]; } }); } else { _field = value[index]; } return _field; }); }; var values2array = exports.values2array = function values2array(values) { values.length = Object.keys(values).length; return Array.from(values); };