|
|
|
@ -1,7 +1,7 @@
|
|
|
|
|
/** |
|
|
|
|
* @license |
|
|
|
|
* Lodash (Custom Build) <https://lodash.com/>
|
|
|
|
|
* Build: `lodash core plus="debounce,throttle,get,set,findIndex,findLastIndex,findKey,findLastKey,isArrayLike,invert,invertBy,uniq,uniqBy,omit,omitBy,zip,unzip,rest,range,random,reject,intersection,drop,countBy,union,zipObject,initial,cloneDeep,clamp,isPlainObject,take,takeRight,without,difference,defaultsDeep,trim,merge,groupBy,uniqBy,before,after,unescape,chunk"` |
|
|
|
|
* Build: `lodash core plus="debounce,throttle,get,set,findIndex,findLastIndex,findKey,findLastKey,isArrayLike,invert,invertBy,uniq,uniqBy,omit,omitBy,zip,unzip,rest,range,random,reject,intersection,drop,countBy,union,zipObject,initial,cloneDeep,clamp,isPlainObject,take,takeRight,without,difference,defaultsDeep,trim,merge,groupBy,uniqBy,before,after,unescape,chunk,pick,pickBy,identity"` |
|
|
|
|
* Copyright JS Foundation and other contributors <https://js.foundation/>
|
|
|
|
|
* Released under MIT license <https://lodash.com/license>
|
|
|
|
|
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
|
|
|
@ -272,8 +272,7 @@
|
|
|
|
|
var nodeUtil = (function() { |
|
|
|
|
try { |
|
|
|
|
return freeProcess && freeProcess.binding && freeProcess.binding('util'); |
|
|
|
|
} catch (e) { |
|
|
|
|
} |
|
|
|
|
} catch (e) {} |
|
|
|
|
}()); |
|
|
|
|
|
|
|
|
|
/* Node.js helper references. */ |
|
|
|
@ -297,14 +296,10 @@
|
|
|
|
|
*/ |
|
|
|
|
function apply(func, thisArg, args) { |
|
|
|
|
switch (args.length) { |
|
|
|
|
case 0: |
|
|
|
|
return func.call(thisArg); |
|
|
|
|
case 1: |
|
|
|
|
return func.call(thisArg, args[0]); |
|
|
|
|
case 2: |
|
|
|
|
return func.call(thisArg, args[0], args[1]); |
|
|
|
|
case 3: |
|
|
|
|
return func.call(thisArg, args[0], args[1], args[2]); |
|
|
|
|
case 0: return func.call(thisArg); |
|
|
|
|
case 1: return func.call(thisArg, args[0]); |
|
|
|
|
case 2: return func.call(thisArg, args[0], args[1]); |
|
|
|
|
case 3: return func.call(thisArg, args[0], args[1], args[2]); |
|
|
|
|
} |
|
|
|
|
return func.apply(thisArg, args); |
|
|
|
|
} |
|
|
|
@ -750,8 +745,7 @@
|
|
|
|
|
var index = -1, |
|
|
|
|
length = strSymbols.length; |
|
|
|
|
|
|
|
|
|
while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { |
|
|
|
|
} |
|
|
|
|
while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} |
|
|
|
|
return index; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -767,8 +761,7 @@
|
|
|
|
|
function charsEndIndex(strSymbols, chrSymbols) { |
|
|
|
|
var index = strSymbols.length; |
|
|
|
|
|
|
|
|
|
while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { |
|
|
|
|
} |
|
|
|
|
while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} |
|
|
|
|
return index; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -1073,8 +1066,7 @@
|
|
|
|
|
var func = getNative(Object, 'defineProperty'); |
|
|
|
|
func({}, '', {}); |
|
|
|
|
return func; |
|
|
|
|
} catch (e) { |
|
|
|
|
} |
|
|
|
|
} catch (e) {} |
|
|
|
|
}()); |
|
|
|
|
|
|
|
|
|
/* Built-in method references for those with the same name as other `lodash` methods. */ |
|
|
|
@ -1256,9 +1248,7 @@
|
|
|
|
|
* @returns {Object} Returns the new object. |
|
|
|
|
*/ |
|
|
|
|
var baseCreate = (function() { |
|
|
|
|
function object() { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function object() {} |
|
|
|
|
return function(proto) { |
|
|
|
|
if (!isObject(proto)) { |
|
|
|
|
return {}; |
|
|
|
@ -2209,9 +2199,7 @@
|
|
|
|
|
if (typeof func != 'function') { |
|
|
|
|
throw new TypeError(FUNC_ERROR_TEXT); |
|
|
|
|
} |
|
|
|
|
return setTimeout(function () { |
|
|
|
|
func.apply(undefined, args); |
|
|
|
|
}, wait); |
|
|
|
|
return setTimeout(function() { func.apply(undefined, args); }, wait); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ -2242,7 +2230,8 @@
|
|
|
|
|
if (comparator) { |
|
|
|
|
includes = arrayIncludesWith; |
|
|
|
|
isCommon = false; |
|
|
|
|
} else if (values.length >= LARGE_ARRAY_SIZE) { |
|
|
|
|
} |
|
|
|
|
else if (values.length >= LARGE_ARRAY_SIZE) { |
|
|
|
|
includes = cacheHas; |
|
|
|
|
isCommon = false; |
|
|
|
|
values = new SetCache(values); |
|
|
|
@ -2261,7 +2250,8 @@
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
result.push(value); |
|
|
|
|
} else if (!includes(values, computed, comparator)) { |
|
|
|
|
} |
|
|
|
|
else if (!includes(values, computed, comparator)) { |
|
|
|
|
result.push(value); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -3001,7 +2991,8 @@
|
|
|
|
|
if (isObject(srcValue)) { |
|
|
|
|
stack || (stack = new Stack); |
|
|
|
|
baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
var newValue = customizer |
|
|
|
|
? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) |
|
|
|
|
: undefined; |
|
|
|
@ -3053,25 +3044,32 @@
|
|
|
|
|
if (isArr || isBuff || isTyped) { |
|
|
|
|
if (isArray(objValue)) { |
|
|
|
|
newValue = objValue; |
|
|
|
|
} else if (isArrayLikeObject(objValue)) { |
|
|
|
|
} |
|
|
|
|
else if (isArrayLikeObject(objValue)) { |
|
|
|
|
newValue = copyArray(objValue); |
|
|
|
|
} else if (isBuff) { |
|
|
|
|
} |
|
|
|
|
else if (isBuff) { |
|
|
|
|
isCommon = false; |
|
|
|
|
newValue = cloneBuffer(srcValue, true); |
|
|
|
|
} else if (isTyped) { |
|
|
|
|
} |
|
|
|
|
else if (isTyped) { |
|
|
|
|
isCommon = false; |
|
|
|
|
newValue = cloneTypedArray(srcValue, true); |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
newValue = []; |
|
|
|
|
} |
|
|
|
|
} else if (isPlainObject(srcValue) || isArguments(srcValue)) { |
|
|
|
|
} |
|
|
|
|
else if (isPlainObject(srcValue) || isArguments(srcValue)) { |
|
|
|
|
newValue = objValue; |
|
|
|
|
if (isArguments(objValue)) { |
|
|
|
|
newValue = toPlainObject(objValue); |
|
|
|
|
} else if (!isObject(objValue) || (srcIndex && isFunction(objValue))) { |
|
|
|
|
} |
|
|
|
|
else if (!isObject(objValue) || (srcIndex && isFunction(objValue))) { |
|
|
|
|
newValue = initCloneObject(srcValue); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
isCommon = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -3373,7 +3371,8 @@
|
|
|
|
|
if (comparator) { |
|
|
|
|
isCommon = false; |
|
|
|
|
includes = arrayIncludesWith; |
|
|
|
|
} else if (length >= LARGE_ARRAY_SIZE) { |
|
|
|
|
} |
|
|
|
|
else if (length >= LARGE_ARRAY_SIZE) { |
|
|
|
|
var set = iteratee ? null : createSet(array); |
|
|
|
|
if (set) { |
|
|
|
|
return setToArray(set); |
|
|
|
@ -3381,7 +3380,8 @@
|
|
|
|
|
isCommon = false; |
|
|
|
|
includes = cacheHas; |
|
|
|
|
seen = new SetCache; |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
seen = iteratee ? [] : result; |
|
|
|
|
} |
|
|
|
|
outer: |
|
|
|
@ -3401,7 +3401,8 @@
|
|
|
|
|
seen.push(computed); |
|
|
|
|
} |
|
|
|
|
result.push(value); |
|
|
|
|
} else if (!includes(seen, computed, comparator)) { |
|
|
|
|
} |
|
|
|
|
else if (!includes(seen, computed, comparator)) { |
|
|
|
|
if (seen !== result) { |
|
|
|
|
seen.push(computed); |
|
|
|
|
} |
|
|
|
@ -3941,7 +3942,6 @@
|
|
|
|
|
var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; |
|
|
|
|
return fn.apply(isBind ? thisArg : this, arguments); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return wrapper; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -3960,22 +3960,14 @@
|
|
|
|
|
// for more details.
|
|
|
|
|
var args = arguments; |
|
|
|
|
switch (args.length) { |
|
|
|
|
case 0: |
|
|
|
|
return new Ctor; |
|
|
|
|
case 1: |
|
|
|
|
return new Ctor(args[0]); |
|
|
|
|
case 2: |
|
|
|
|
return new Ctor(args[0], args[1]); |
|
|
|
|
case 3: |
|
|
|
|
return new Ctor(args[0], args[1], args[2]); |
|
|
|
|
case 4: |
|
|
|
|
return new Ctor(args[0], args[1], args[2], args[3]); |
|
|
|
|
case 5: |
|
|
|
|
return new Ctor(args[0], args[1], args[2], args[3], args[4]); |
|
|
|
|
case 6: |
|
|
|
|
return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); |
|
|
|
|
case 7: |
|
|
|
|
return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); |
|
|
|
|
case 0: return new Ctor; |
|
|
|
|
case 1: return new Ctor(args[0]); |
|
|
|
|
case 2: return new Ctor(args[0], args[1]); |
|
|
|
|
case 3: return new Ctor(args[0], args[1], args[2]); |
|
|
|
|
case 4: return new Ctor(args[0], args[1], args[2], args[3]); |
|
|
|
|
case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); |
|
|
|
|
case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); |
|
|
|
|
case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); |
|
|
|
|
} |
|
|
|
|
var thisBinding = baseCreate(Ctor.prototype), |
|
|
|
|
result = Ctor.apply(thisBinding, args); |
|
|
|
@ -4020,7 +4012,6 @@
|
|
|
|
|
var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; |
|
|
|
|
return apply(fn, this, args); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return wrapper; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -4037,9 +4028,7 @@
|
|
|
|
|
if (!isArrayLike(collection)) { |
|
|
|
|
var iteratee = baseIteratee(predicate, 3); |
|
|
|
|
collection = keys(collection); |
|
|
|
|
predicate = function (key) { |
|
|
|
|
return iteratee(iterable[key], key, iterable); |
|
|
|
|
}; |
|
|
|
|
predicate = function(key) { return iteratee(iterable[key], key, iterable); }; |
|
|
|
|
} |
|
|
|
|
var index = findIndexFunc(collection, predicate, fromIndex); |
|
|
|
|
return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; |
|
|
|
@ -4116,7 +4105,6 @@
|
|
|
|
|
} |
|
|
|
|
return fn.apply(thisBinding, args); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return wrapper; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -4166,7 +4154,6 @@
|
|
|
|
|
} |
|
|
|
|
return apply(fn, isBind ? thisArg : this, args); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return wrapper; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -4740,8 +4727,7 @@
|
|
|
|
|
try { |
|
|
|
|
value[symToStringTag] = undefined; |
|
|
|
|
var unmasked = true; |
|
|
|
|
} catch (e) { |
|
|
|
|
} |
|
|
|
|
} catch (e) {} |
|
|
|
|
|
|
|
|
|
var result = nativeObjectToString.call(value); |
|
|
|
|
if (unmasked) { |
|
|
|
@ -4809,16 +4795,11 @@
|
|
|
|
|
|
|
|
|
|
if (ctorString) { |
|
|
|
|
switch (ctorString) { |
|
|
|
|
case dataViewCtorString: |
|
|
|
|
return dataViewTag; |
|
|
|
|
case mapCtorString: |
|
|
|
|
return mapTag; |
|
|
|
|
case promiseCtorString: |
|
|
|
|
return promiseTag; |
|
|
|
|
case setCtorString: |
|
|
|
|
return setTag; |
|
|
|
|
case weakMapCtorString: |
|
|
|
|
return weakMapTag; |
|
|
|
|
case dataViewCtorString: return dataViewTag; |
|
|
|
|
case mapCtorString: return mapTag; |
|
|
|
|
case promiseCtorString: return promiseTag; |
|
|
|
|
case setCtorString: return setTag; |
|
|
|
|
case weakMapCtorString: return weakMapTag; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return result; |
|
|
|
@ -4844,18 +4825,10 @@
|
|
|
|
|
size = data.size; |
|
|
|
|
|
|
|
|
|
switch (data.type) { |
|
|
|
|
case 'drop': |
|
|
|
|
start += size; |
|
|
|
|
break; |
|
|
|
|
case 'dropRight': |
|
|
|
|
end -= size; |
|
|
|
|
break; |
|
|
|
|
case 'take': |
|
|
|
|
end = nativeMin(end, start + size); |
|
|
|
|
break; |
|
|
|
|
case 'takeRight': |
|
|
|
|
start = nativeMax(start, end - size); |
|
|
|
|
break; |
|
|
|
|
case 'drop': start += size; break; |
|
|
|
|
case 'dropRight': end -= size; break; |
|
|
|
|
case 'take': end = nativeMin(end, start + size); break; |
|
|
|
|
case 'takeRight': start = nativeMax(start, end - size); break; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return { 'start': start, 'end': end }; |
|
|
|
@ -4961,15 +4934,9 @@
|
|
|
|
|
case dataViewTag: |
|
|
|
|
return cloneDataView(object, isDeep); |
|
|
|
|
|
|
|
|
|
case float32Tag: |
|
|
|
|
case float64Tag: |
|
|
|
|
case int8Tag: |
|
|
|
|
case int16Tag: |
|
|
|
|
case int32Tag: |
|
|
|
|
case uint8Tag: |
|
|
|
|
case uint8ClampedTag: |
|
|
|
|
case uint16Tag: |
|
|
|
|
case uint32Tag: |
|
|
|
|
case float32Tag: case float64Tag: |
|
|
|
|
case int8Tag: case int16Tag: case int32Tag: |
|
|
|
|
case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: |
|
|
|
|
return cloneTypedArray(object, isDeep); |
|
|
|
|
|
|
|
|
|
case mapTag: |
|
|
|
@ -5475,12 +5442,10 @@
|
|
|
|
|
if (func != null) { |
|
|
|
|
try { |
|
|
|
|
return funcToString.call(func); |
|
|
|
|
} catch (e) { |
|
|
|
|
} |
|
|
|
|
} catch (e) {} |
|
|
|
|
try { |
|
|
|
|
return (func + ''); |
|
|
|
|
} catch (e) { |
|
|
|
|
} |
|
|
|
|
} catch (e) {} |
|
|
|
|
} |
|
|
|
|
return ''; |
|
|
|
|
} |
|
|
|
@ -5997,7 +5962,8 @@
|
|
|
|
|
if (end && typeof end != 'number' && isIterateeCall(array, start, end)) { |
|
|
|
|
start = 0; |
|
|
|
|
end = length; |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
start = start == null ? 0 : toInteger(start); |
|
|
|
|
end = end === undefined ? length : toInteger(end); |
|
|
|
|
} |
|
|
|
@ -6352,9 +6318,7 @@
|
|
|
|
|
var length = paths.length, |
|
|
|
|
start = length ? paths[0] : 0, |
|
|
|
|
value = this.__wrapped__, |
|
|
|
|
interceptor = function (object) { |
|
|
|
|
return baseAt(object, paths); |
|
|
|
|
}; |
|
|
|
|
interceptor = function(object) { return baseAt(object, paths); }; |
|
|
|
|
|
|
|
|
|
if (length > 1 || this.__actions__.length || |
|
|
|
|
!(value instanceof LazyWrapper) || !isIndex(start)) { |
|
|
|
@ -7378,7 +7342,6 @@
|
|
|
|
|
} |
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
debounced.cancel = cancel; |
|
|
|
|
debounced.flush = flush; |
|
|
|
|
return debounced; |
|
|
|
@ -7523,14 +7486,10 @@
|
|
|
|
|
return function() { |
|
|
|
|
var args = arguments; |
|
|
|
|
switch (args.length) { |
|
|
|
|
case 0: |
|
|
|
|
return !predicate.call(this); |
|
|
|
|
case 1: |
|
|
|
|
return !predicate.call(this, args[0]); |
|
|
|
|
case 2: |
|
|
|
|
return !predicate.call(this, args[0], args[1]); |
|
|
|
|
case 3: |
|
|
|
|
return !predicate.call(this, args[0], args[1], args[2]); |
|
|
|
|
case 0: return !predicate.call(this); |
|
|
|
|
case 1: return !predicate.call(this, args[0]); |
|
|
|
|
case 2: return !predicate.call(this, args[0], args[1]); |
|
|
|
|
case 3: return !predicate.call(this, args[0], args[1], args[2]); |
|
|
|
|
} |
|
|
|
|
return !predicate.apply(this, args); |
|
|
|
|
}; |
|
|
|
@ -7761,9 +7720,7 @@
|
|
|
|
|
* _.isArguments([1, 2, 3]); |
|
|
|
|
* // => false
|
|
|
|
|
*/ |
|
|
|
|
var isArguments = baseIsArguments(function () { |
|
|
|
|
return arguments; |
|
|
|
|
}()) ? baseIsArguments : function (value) { |
|
|
|
|
var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { |
|
|
|
|
return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && |
|
|
|
|
!propertyIsEnumerable.call(value, 'callee'); |
|
|
|
|
}; |
|
|
|
@ -9442,7 +9399,8 @@
|
|
|
|
|
if (typeof upper == 'boolean') { |
|
|
|
|
floating = upper; |
|
|
|
|
upper = undefined; |
|
|
|
|
} else if (typeof lower == 'boolean') { |
|
|
|
|
} |
|
|
|
|
else if (typeof lower == 'boolean') { |
|
|
|
|
floating = lower; |
|
|
|
|
lower = undefined; |
|
|
|
|
} |
|
|
|
@ -9450,7 +9408,8 @@
|
|
|
|
|
if (lower === undefined && upper === undefined) { |
|
|
|
|
lower = 0; |
|
|
|
|
upper = 1; |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
lower = toFinite(lower); |
|
|
|
|
if (upper === undefined) { |
|
|
|
|
upper = lower; |
|
|
|
@ -10024,6 +9983,7 @@
|
|
|
|
|
lodash.omitBy = omitBy; |
|
|
|
|
lodash.once = once; |
|
|
|
|
lodash.pick = pick; |
|
|
|
|
lodash.pickBy = pickBy; |
|
|
|
|
lodash.range = range; |
|
|
|
|
lodash.reject = reject; |
|
|
|
|
lodash.rest = rest; |
|
|
|
@ -10336,7 +10296,7 @@
|
|
|
|
|
// loaded by a script tag in the presence of an AMD loader.
|
|
|
|
|
// See http://requirejs.org/docs/errors.html#mismatch for more details.
|
|
|
|
|
// Use `_.noConflict` to remove Lodash from the global object.
|
|
|
|
|
BI._ = lodash; |
|
|
|
|
root._ = lodash; |
|
|
|
|
|
|
|
|
|
// Define as an anonymous module so, through path mapping, it can be
|
|
|
|
|
// referenced as the "underscore" module.
|
|
|
|
@ -10350,7 +10310,8 @@
|
|
|
|
|
(freeModule.exports = lodash)._ = lodash; |
|
|
|
|
// Export for CommonJS support.
|
|
|
|
|
freeExports._ = lodash; |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
// Export to the global object.
|
|
|
|
|
BI._ = lodash; |
|
|
|
|
} |
|
|
|
|