UNPKG

amos-tool

Version:

amos ui tool

335 lines (315 loc) 11.9 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"), _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")), _typeOfList = require("./_typeOfList"), ObjProto = Object.prototype, toString = ObjProto.toString, hasOwnProperty = ObjProto.hasOwnProperty, nativeIsArray = Array.isArray, nativeKeys = Object.keys, BUILTIN_OBJECT = _typeOfList.BUILTIN_OBJECT, TYPED_ARRAY = _typeOfList.TYPED_ARRAY, property = function(e) { return function(t) { return null == t ? void 0 : t[e]; }; }, MAX_ARRAY_INDEX = Math.pow(2, 53) - 1, getLength = property("length"), isArrayLike = function(e) { var t = getLength(e); return "number" == typeof t && t >= 0 && t <= MAX_ARRAY_INDEX; }, isNumber = function(e) { if (isArray(e)) return !1; if (isObject(e)) return !1; var t = /^(\-|\+)?([0-9]+(\.[0-9]+)?|Infinity)$/.test(e), n = "number" == typeof e && !isNaN(e); return t || n; }, isENumber = function(e) { if ("number" == typeof e) return !0; if (isNumber(e)) return !0; if (isString(e) && (e.indexOf("e") > -1 || e.indexOf("E") > -1)) { var t = Number(e); return isNumber(t); } return !1; }, isFloat = function(e) { return /^-?\d+(\.\d+)?$/.test(e); }, isOpacity = function(e) { return /^-?\d+(\.\d+)?$/.test(e); }, toFloat = function(e) { return isNumber(e) ? Number(e) : Number(0); }, isString = function(e) { return "[object String]" === toString.call(e); }, isArray = nativeIsArray || function(e) { return "[object Array]" === toString.call(e); }, isArguments = function(e) { return "[object Arguments]" === toString.call(e); }, isObject = function(e) { var t = (0, _typeof2.default)(e); return "function" === t || "object" === t && !!e; }, isOnlyObject = function(e) { return "object" === (0, _typeof2.default)(e) && "[object Object]" === toString.call(e) && !!e; }, isBoolean = function(e) { return !0 === e || !1 === e || "[object Boolean]" === toString.call(e); }, isFunction = function(e) { return "[object Function]" === toString.call(e); }, isNull = function(e) { return null === e; }, isUndefined = function(e) { return void 0 === e; }, isNil = function(e) { return null == e; }, isBlank = function(e) { return isNil(e) || "" === e; }; function isNullOrUndefined(e) { return null == e; } var isEmptyObject = function(e) { if (e) for (var t in e) if (hasOwnProperty.call(e, t)) return !1; return !0; }, has = function(e, t) { if (!isArray(t)) return null != e && Object.prototype.hasOwnProperty.call(e, t); for (var n = t.length, r = 0; r < n; r++) { var i = t[r]; if (null == e || !Object.prototype.hasOwnProperty.call(e, i)) return !1; e = e[i]; } return !!n; }, keys = function(e) { if (!isObject(e)) return []; if (nativeKeys) return nativeKeys(e); var t = []; for (var n in e) has(e, n) && t.push(n); return t; }, values = function(e) { for (var t = keys(e), n = t.length, r = Array(n), i = 0; i < n; i++) r[i] = e[t[i]]; return r; }, noop = function() {}, isEmpty = function(e) { return null == e || (isArrayLike(e) && (isArray(e) || isString(e) || isArguments(e)) ? 0 === e.length : 0 === keys(e).length); }, isElement = function(e) { return !(!e || 1 !== e.nodeType); }, isHTMLElement = function(e) { return window.HTMLElement || window.Element ? e instanceof (window.HTMLElement || window.Element) : e && "object" === ("undefined" == typeof n ? "undefined" : (0, _typeof2.default)(n)) && 1 === e.nodeType && "string" == typeof e.nodeName; }, isSVGElement = function(e) { return window.SVGElement && e instanceof window.SVGElement; }; function isDom(e) { return "object" === (0, _typeof2.default)(e) && "number" == typeof e.nodeType && "object" === (0, _typeof2.default)(e.ownerDocument); } function isUrl(e) { return isString(e) && (/^https?:\/\/(?!\-)(?:(([0-9]{1,3}\.){3}[0-9]{1,3}))(:[0-9]{1,4}\/)?/.test(e) || /^https?:\/\/(?!\-)(?:[a-zA-Z\d\-]{0,62}[a-zA-Z\d]\.){1,126}(?!\d+)[a-zA-Z\d]{1,63}/.test(e) || /^https?:\/\/localhost.*/.test(e)); } function isBuiltInObject(e) { return !!BUILTIN_OBJECT[toString.call(e)]; } var null2default = function(e) { return isNull(e) || isUndefined(e) ? "" : e; }, isJson = function(e) { return "object" === (0, _typeof2.default)(e) && "[object object]" === toString.call(e).toLowerCase() && !e.length; }; function isSymbol(e) { return "symbol" === (0, _typeof2.default)(e); } function isDate(e) { return "[object Date]" === toString.call(e); } function _isJSON(e) { return !!isString(e) && (e = e.replace(/\s/g, "").replace(/\n|\r/, ""), /^\{(.*?)\}$/.test(e) ? /"(.*?)":(.*?)/g.test(e) : !!/^\[(.*?)\]$/.test(e) && e.replace(/^\[/, "").replace(/\]$/, "").replace(/},{/g, "}\n{").split(/\n/).map(function(e) { return _isJSON(e); }).reduce(function(e, t) { return !!t; })); } var stringIsJson = function(e) { try { var t = JSON.parse(e); return isString(t) && (t = JSON.parse(t)), !(isNil(t) || !isArray(t) && !isObject(t)); } catch (t) { return _isJSON(e); } }, isKeyInObject = function(e, t) { if (isNil(t) || !isObject(t)) return !1; isString(e) && (e = [ e ]); var n = 0; return e.forEach(function(e) { e in t && n++; }), e.length === n; }, isOwnKeyInObject = function(e, t) { if (isNil(t) || !isObject(t)) return !1; isString(e) && (e = [ e ]); var n = 0; return e.forEach(function(e) { e in t && hasOwnProperty.call(t, e) && n++; }), e.length === n; }, simpleEqual = function(e, t) { if (e === t) return !0; if ("object" !== (0, _typeof2.default)(e) || null === e || "object" !== (0, _typeof2.default)(t) || null === t) return !1; var n = nativeKeys(e), r = nativeKeys(t); if (n.length !== r.length) return !1; for (var i = hasOwnProperty.bind(t), o = 0; o < n.length; o++) if (!i(n[o]) || e[n[o]] !== t[n[o]]) return !1; return !0; }, isImageSrc = function() { var e = /data:image\/(jpe?g|png|gif|bmp|ico|tga|svg(\+xml)?);base64,/i, t = /.(jpe?g|png|gif|bmp|ico|tga|svg)(\?.*)?$/i; return function(n) { return e.test(n) || t.test(n); }; }(), isGIF = function() { var e = /data:image\/(GIF|gif);base64,/i, t = /.(GIF|gif)(\?.*)?$/i; return function(n) { return e.test(n) || t.test(n); }; }(), encodeNumber = function(e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 3, n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 4, r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : "*", i = String(e), o = t + n, s = r.repeat(n); return i.length > o ? i.substr(0, t) + s + i.substr(o) : i.substr(0, t) + s; }, getFileExtension = function(e) { if (e) { var t = e.lastIndexOf("."); return t > 0 ? e.substring(t + 1) : ""; } return ""; }, fileSizeToByte = function(e) { var t = { t: 1099511627776, g: 1073741824, m: 1048576, k: 1024 }; if (!e) return 0; if (!isString(e)) return e; e = e.toLocaleLowerCase().replace(/\s*/g, ""); var n = (e = /^([0-9\.]+)([tgmk]?)b?$/i.exec(e))[2]; return e = +e[1], t.hasOwnProperty(n) && (e *= t[n]), e; }, some = function(e, t) { if (null == e) throw new TypeError; var n = Object(e), r = n.length >>> 0; if ("function" != typeof t) throw new TypeError; for (var i = arguments.length >= 3 ? arguments[2] : void 0, o = 0; o < r; o++) if (o in n && t.call(i, n[o], o, n)) return !0; return !1; }, every = function(e, t, n) { var r, i; if (null == e) throw new TypeError("arr is null or not defined"); var o = Object(e), s = o.length >>> 0; if ("function" != typeof t) throw new TypeError; for (arguments.length > 2 && (r = n), i = 0; i < s; ) { var u; if (i in o) if (u = o[i], !t.call(r, u, i, o)) return !1; i++; } return !0; }, reduce = function(e, t) { if (null === e) throw new TypeError("Array.prototype.reduce called on null or undefined"); if ("function" != typeof t) throw new TypeError(t + " is not a function"); var n, r = Object(e), i = r.length >>> 0, o = 0; if (arguments.length >= 3) n = arguments[2]; else { for (;o < i && !(o in r); ) o++; if (o >= i) throw new TypeError("Reduce of empty array with no initial value"); n = r[o++]; } for (;o < i; ) o in r && (n = t(n, r[o], o, r)), o++; return n; }, parse2string = function(e) { return isEmpty(e) ? "" : JSON.stringify(e); }, parse2object = function(e) { return isEmpty(e) ? null : JSON.parse(e); }, dataToArray = function(e) { return isArray(e) ? e : [ e ]; }; function clone(e) { if (null == e || "object" != (0, _typeof2.default)(e)) return e; var t = e, n = toString.call(e); if ("[object Array]" === n) { t = []; for (var r = 0, i = e.length; r < i; r++) t[r] = clone(e[r]); } else if (TYPED_ARRAY[n]) { var o = e.constructor; if (e.constructor.from) t = o.from(e); else { t = new o(e.length); for (var s = 0, u = e.length; s < u; s++) t[s] = clone(e[s]); } } else if (!BUILTIN_OBJECT[n] && !isDom(e)) for (var l in t = {}, e) e.hasOwnProperty(l) && (t[l] = clone(e[l])); return t; } function merge(e, t, n) { if (!isObject(t) || !isObject(e)) return n ? clone(t) : e; for (var r in t) if (t.hasOwnProperty(r)) { var i = e[r], o = t[r]; !isObject(o) || !isObject(i) || isArray(o) || isArray(i) || isDom(o) || isDom(i) || isBuiltInObject(o) || isBuiltInObject(i) ? !n && r in e || (e[r] = clone(t[r])) : merge(i, o, n); } return e; } function mergeAll(e, t) { for (var n = e[0], r = 1, i = e.length; r < i; r++) n = merge(n, e[r], t); return n; } function subObjectEqual(e, t) { return !(!isEmpty(e) && !isEmpty(t)) || (e === t || !Object.keys(t).some(function(n) { return n in e && t[n] !== e[n]; })); } function isPromise(e) { return !isNull(e) && "object" === (0, _typeof2.default)(e) && (e instanceof Promise || "[object Promise]" === toString.call(e) || e.then && isFunction(e.then)); } function isRegExp(e) { return !isNull(e) && "object" === (0, _typeof2.default)(e) && (e instanceof RegExp || "[object RegExp]" === toString.call(e)); } function slpitArray(e, t) { var n = e.length, r = []; if (t <= n) for (var i = Math.ceil(n / t), o = 0; o < t; o++) { var s = e.slice(o * i, o * i + i); r.push(s); } else r.push(e.slice()); return r; } function checkFileName(e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 259; if (isNil(e)) return !1; if (!isString(e) && !isNumber(e)) return !1; if ((e = String(e)).length > t) return !1; return !/[\\/:\*\?"<>\|]/g.test(e) && (!e.endsWith(" ") && !e.startsWith(" ") && ("." !== e && " " !== e)); } module.exports = { isString: isString, isArray: isArray, isObject: isObject, isOnlyObject: isOnlyObject, isBoolean: isBoolean, isFunction: isFunction, isNumber: isNumber, isENumber: isENumber, isFloat: isFloat, isOpacity: isOpacity, toFloat: toFloat, isNull: isNull, isUndefined: isUndefined, isNil: isNil, isBlank: isBlank, isNullOrUndefined: isNullOrUndefined, has: has, values: values, noop: noop, isEmpty: isEmpty, isEmptyObject: isEmptyObject, isElement: isElement, isHTMLElement: isHTMLElement, isSVGElement: isSVGElement, isDom: isDom, isUrl: isUrl, isBuiltInObject: isBuiltInObject, null2default: null2default, isJson: isJson, isSymbol: isSymbol, isDate: isDate, stringIsJson: stringIsJson, isKeyInObject: isKeyInObject, isOwnKeyInObject: isOwnKeyInObject, simpleEqual: simpleEqual, isImageSrc: isImageSrc, isGIF: isGIF, encodeNumber: encodeNumber, getFileExtension: getFileExtension, fileSizeToByte: fileSizeToByte, some: some, every: every, reduce: reduce, parse2string: parse2string, parse2object: parse2object, dataToArray: dataToArray, clone: clone, merge: merge, mergeAll: mergeAll, subObjectEqual: subObjectEqual, isPromise: isPromise, isRegExp: isRegExp, slpitArray: slpitArray, checkFileName: checkFileName };