UNPKG

amos-tool

Version:

amos ui tool

130 lines (126 loc) 5.01 kB
"use strict"; var builtinIteratee, _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"), _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")), ObjProto = Object.prototype, toString = ObjProto.toString, nativeIsArray = Array.isArray, nativeKeys = Object.keys, hasEnumBug = !{ toString: null }.propertyIsEnumerable("toString"), nonEnumerableProps = [ "valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString" ], isNumber = function(r) { return /^(\-|\+)?([0-9]+(\.[0-9]+)?|Infinity)$/.test(r); }, _isNaN = function(r) { return isNumber(r) && isNaN(r); }, isFunction = function(r) { return "function" == typeof r || !1; }, isObject = function(r) { var e = (0, _typeof2.default)(r); return "function" === e || "object" === e && !!r; }, keys = function(r) { if (!isObject(r)) return []; if (nativeKeys) return nativeKeys(r); var e = []; for (var t in r) has(r, t) && e.push(t); return hasEnumBug && collectNonEnumProps(r, e), e; }, allKeys = function(r) { if (!isObject(r)) return []; var e = []; for (var t in r) e.push(t); return hasEnumBug && collectNonEnumProps(r, e), e; }, isArray = nativeIsArray || function(r) { return "[object Array]" === toString.call(r); }, has = function(r, e) { if (!isArray(e)) return null != r && Object.prototype.hasOwnProperty.call(r, e); for (var t = e.length, n = 0; n < t; n++) { var i = e[n]; if (null == r || !Object.prototype.hasOwnProperty.call(r, i)) return !1; r = r[i]; } return !!t; }, property = function(r) { return function(e) { return null == e ? void 0 : e[r]; }; }, values = function(r) { for (var e = keys(r), t = e.length, n = Array(t), i = 0; i < t; i++) n[i] = r[e[i]]; return n; }, MAX_ARRAY_INDEX = Math.pow(2, 53) - 1, getLength = property("length"), isArrayLike = function(r) { var e = getLength(r); return "number" == typeof e && e >= 0 && e <= MAX_ARRAY_INDEX; }, optimizeCb = function(r, e, t) { if (void 0 === e) return r; switch (t) { case 1: return function(t) { return r.call(e, t); }; case null: case 3: return function(t, n, i) { return r.call(e, t, n, i); }; case 4: return function(t, n, i, u) { return r.call(e, t, n, i, u); }; } return function() { return r.apply(e, arguments); }; }, createAssigner = function(r, e) { return function(t) { var n = arguments.length; if (e && (t = Object(t)), n < 2 || null == t) return t; for (var i = 1; i < n; i++) for (var u = arguments[i], o = r(u), a = o.length, c = 0; c < a; c++) { var s = o[c]; e && void 0 !== t[s] || (t[s] = u[s]); } return t; }; }, extendOwn = createAssigner(keys), isMatch = function(r, e) { var t = keys(e), n = t.length; if (null == r) return !n; for (var i = Object(r), u = 0; u < n; u++) { var o = t[u]; if (e[o] !== i[o] || !(o in i)) return !1; } return !0; }, matcher = function(r) { return r = extendOwn({}, r), function(e) { return isMatch(e, r); }; }, slice = Array.prototype.slice, createIndexFinder = function(r, e, t) { return function(n, i, u) { var o = 0, a = getLength(n); if ("number" == typeof u) r > 0 ? o = u >= 0 ? u : Math.max(u + a, o) : a = u >= 0 ? Math.min(u + 1, a) : u + a + 1; else if (t && u && a) return n[u = t(n, i)] === i ? u : -1; if (i != i) return (u = e(slice.call(n, o, a), _isNaN)) >= 0 ? u + o : -1; for (u = r > 0 ? o : a - 1; u >= 0 && u < a; u += r) if (n[u] === i) return u; return -1; }; }, iteratee = builtinIteratee = function(r, e) { return cb(r, e, 1 / 0); }, identity = function(r) { return r; }, cb = function(r, e, t) { return iteratee !== builtinIteratee ? iteratee(r, e) : null == r ? identity : isFunction(r) ? optimizeCb(r, e, t) : isObject(r) && !isArray(r) ? matcher(r) : property(r); }, createPredicateIndexFinder = function(r) { return function(e, t, n) { t = cb(t, n); for (var i = getLength(e), u = r > 0 ? 0 : i - 1; u >= 0 && u < i; u += r) if (t(e[u], u, e)) return u; return -1; }; }, findIndex = createPredicateIndexFinder(1), sortedIndex = function(r, e, t, n) { for (var i = (t = cb(t, n, 1))(e), u = 0, o = getLength(r); u < o; ) { var a = Math.floor((u + o) / 2); t(r[a]) < i ? u = a + 1 : o = a; } return u; }, indexOf = createIndexFinder(1, findIndex, sortedIndex), contains = function(r, e, t, n) { return isArrayLike(r) || (r = values(r)), ("number" != typeof t || n) && (t = 0), indexOf(r, e, t) >= 0; }, collectNonEnumProps = function(r, e) { var t = nonEnumerableProps.length, n = r.constructor, i = isFunction(n) && n.prototype || ObjProto, u = "constructor"; for (has(r, u) && !contains(e, u) && e.push(u); t--; ) (u = nonEnumerableProps[t]) in r && r[u] !== i[u] && !contains(e, u) && e.push(u); }; module.exports = { keys: keys, allKeys: allKeys, cb: cb, isArrayLike: isArrayLike, property: property, findIndex: findIndex };