@jannie-shao/components-antd4
Version:
132 lines (131 loc) • 5.49 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.timestamp = exports.randomString = exports.makeNode = exports.getNodeType = exports.filterEmptyString = exports.filterEmptyObj = exports.cloneElement = exports.callFun = void 0;
var _react = _interopRequireDefault(require("react"));
var _moment = _interopRequireDefault(require("moment"));
function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var EMPTY_FUN = function EMPTY_FUN() {};
var callFun = function callFun(fun, resolve, reject) {
if (fun === void 0) {
fun = EMPTY_FUN;
}
if (resolve === void 0) {
resolve = EMPTY_FUN;
}
if (reject === void 0) {
reject = EMPTY_FUN;
}
var res = fun();
if (res && res.then && typeof res.then === 'function') {
res.then(resolve, reject);
return;
}
resolve(res);
};
exports.callFun = callFun;
var getNodeType = function getNodeType(node) {
var _node$name;
// 列表节点
if (Array.isArray(node)) {
for (var _iterator = _createForOfIteratorHelperLoose(node), _step; !(_step = _iterator()).done;) {
var n = _step.value;
var type = getNodeType(n);
if (type !== '_') {
return 'arrayElement';
}
}
return '_';
}
// function 组件
if (typeof node === 'function' && !/[A-Z]/.test((_node$name = node.name) === null || _node$name === void 0 ? void 0 : _node$name[0])) {
return 'functionElement';
}
// React 单节点
if (typeof node === 'object' && node.type) {
return 'reactElement';
}
return '_';
};
exports.getNodeType = getNodeType;
var makeNode = function makeNode(node) {
var nodeType = getNodeType(node);
if (['arrayElement'].includes(nodeType)) {
return /*#__PURE__*/_react["default"].createElement("div", {
className: "__element_maker__"
}, node);
}
if (['functionElement', 'reactElement'].includes(nodeType)) {
return node;
}
return /*#__PURE__*/_react["default"].createElement("span", null, node);
};
exports.makeNode = makeNode;
var cloneElement = function cloneElement(node) {
if (!node) return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null);
for (var _len = arguments.length, other = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
other[_key - 1] = arguments[_key];
}
return /*#__PURE__*/_react["default"].cloneElement.apply(_react["default"], [makeNode(node)].concat(other));
};
exports.cloneElement = cloneElement;
var filterEmptyString = function filterEmptyString(values) {
return (values || []).map(function (v) {
return String(v || '').trim();
}).filter(Boolean);
};
exports.filterEmptyString = filterEmptyString;
var filterEmptyObj = function filterEmptyObj(obj) {
if (Object.prototype.toString.call(obj) === '[object Object]') {
if (obj._isAMomentObject) {
return obj;
}
var keys = Object.keys(obj);
if (keys.length === 0) return undefined;
var newObj = {};
keys.forEach(function (k) {
var v = filterEmptyObj(obj[k]);
if (v !== undefined) {
newObj[k] = v;
}
});
return newObj;
}
if (Object.prototype.toString.call(obj) === '[object Array]') {
return obj.map(function (o) {
return filterEmptyObj(o);
});
}
if (Object.prototype.toString.call(obj) === '[object String]') {
var v = obj.trim();
if (v) return v;
return undefined;
}
return obj;
};
exports.filterEmptyObj = filterEmptyObj;
var timestamp = function timestamp(time, format) {
if (format === void 0) {
format = '';
}
if (format === 'startOfDay') return (0, _moment["default"])(time).startOf('day').valueOf();
if (format === 'endOfDay') return (0, _moment["default"])(time).endOf('day').valueOf();
if (format === 'endOfDaySecond') return parseInt((0, _moment["default"])(time).endOf('day').valueOf() / 1000, 10) * 1000;
return (0, _moment["default"])(time).valueOf();
};
exports.timestamp = timestamp;
var randomString = function randomString(len) {
if (len === void 0) {
len = 32;
}
var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
var maxPos = chars.length;
var pwd = '';
for (var i = 0; i < len; i++) {
pwd += chars.charAt(Math.floor(Math.random() * maxPos));
}
return pwd;
};
exports.randomString = randomString;