Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

lodash-es

Package Overview
Dependencies
Maintainers
5
Versions
67
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

lodash-es - npm Package Compare versions

Comparing version 3.8.0 to 3.9.0

internal/arrayExtremum.js

35

array/intersection.js

@@ -5,2 +5,3 @@ import baseIndexOf from '../internal/baseIndexOf';

import isArrayLike from '../internal/isArrayLike';
import restParam from '../function/restParam';

@@ -21,7 +22,6 @@ /**

*/
function intersection() {
var args = [],
argsIndex = -1,
argsLength = arguments.length,
caches = [],
var intersection = restParam(function(arrays) {
var othLength = arrays.length,
othIndex = othLength,
caches = Array(length),
indexOf = baseIndexOf,

@@ -31,14 +31,7 @@ isCommon = true,

while (++argsIndex < argsLength) {
var value = arguments[argsIndex];
if (isArrayLike(value)) {
args.push(value);
caches.push((isCommon && value.length >= 120) ? createCache(argsIndex && value) : null);
}
while (othIndex--) {
var value = arrays[othIndex] = isArrayLike(value = arrays[othIndex]) ? value : [];
caches[othIndex] = (isCommon && value.length >= 120) ? createCache(othIndex && value) : null;
}
argsLength = args.length;
if (argsLength < 2) {
return result;
}
var array = args[0],
var array = arrays[0],
index = -1,

@@ -52,6 +45,6 @@ length = array ? array.length : 0,

if ((seen ? cacheIndexOf(seen, value) : indexOf(result, value, 0)) < 0) {
argsIndex = argsLength;
while (--argsIndex) {
var cache = caches[argsIndex];
if ((cache ? cacheIndexOf(cache, value) : indexOf(args[argsIndex], value, 0)) < 0) {
var othIndex = othLength;
while (--othIndex) {
var cache = caches[othIndex];
if ((cache ? cacheIndexOf(cache, value) : indexOf(arrays[othIndex], value, 0)) < 0) {
continue outer;

@@ -67,4 +60,4 @@ }

return result;
}
});
export default intersection;

4

array/zipWith.js

@@ -23,4 +23,4 @@ import restParam from '../function/restParam';

var length = arrays.length,
iteratee = arrays[length - 2],
thisArg = arrays[length - 1];
iteratee = length > 2 ? arrays[length - 2] : undefined,
thisArg = length > 1 ? arrays[length - 1] : undefined;

@@ -27,0 +27,0 @@ if (length > 2 && typeof iteratee == 'function') {

@@ -53,11 +53,12 @@ import LazyWrapper from '../internal/LazyWrapper';

* `groupBy`, `indexBy`, `initial`, `intersection`, `invert`, `invoke`, `keys`,
* `keysIn`, `map`, `mapValues`, `matches`, `matchesProperty`, `memoize`,
* `merge`, `mixin`, `negate`, `omit`, `once`, `pairs`, `partial`, `partialRight`,
* `partition`, `pick`, `plant`, `pluck`, `property`, `propertyOf`, `pull`,
* `pullAt`, `push`, `range`, `rearg`, `reject`, `remove`, `rest`, `reverse`,
* `shuffle`, `slice`, `sort`, `sortBy`, `sortByAll`, `sortByOrder`, `splice`,
* `spread`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, `tap`,
* `throttle`, `thru`, `times`, `toArray`, `toPlainObject`, `transform`,
* `union`, `uniq`, `unshift`, `unzip`, `values`, `valuesIn`, `where`,
* `without`, `wrap`, `xor`, `zip`, and `zipObject`
* `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,
* `memoize`, `merge`, `method`, `methodOf`, `mixin`, `negate`, `omit`, `once`,
* `pairs`, `partial`, `partialRight`, `partition`, `pick`, `plant`, `pluck`,
* `property`, `propertyOf`, `pull`, `pullAt`, `push`, `range`, `rearg`,
* `reject`, `remove`, `rest`, `restParam`, `reverse`, `set`, `shuffle`,
* `slice`, `sort`, `sortBy`, `sortByAll`, `sortByOrder`, `splice`, `spread`,
* `take`, `takeRight`, `takeRightWhile`, `takeWhile`, `tap`, `throttle`,
* `thru`, `times`, `toArray`, `toPlainObject`, `transform`, `union`, `uniq`,
* `unshift`, `unzip`, `unzipWith`, `values`, `valuesIn`, `where`, `without`,
* `wrap`, `xor`, `zip`, `zipObject`, `zipWith`
*

@@ -67,13 +68,13 @@ * The wrapper methods that are **not** chainable by default are:

* `endsWith`, `escape`, `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`,
* `findLast`, `findLastIndex`, `findLastKey`, `findWhere`, `first`, `has`,
* `identity`, `includes`, `indexOf`, `inRange`, `isArguments`, `isArray`,
* `isBoolean`, `isDate`, `isElement`, `isEmpty`, `isEqual`, `isError`, `isFinite`
* `isFunction`, `isMatch`, `isNative`, `isNaN`, `isNull`, `isNumber`, `isObject`,
* `isPlainObject`, `isRegExp`, `isString`, `isUndefined`, `isTypedArray`,
* `join`, `kebabCase`, `last`, `lastIndexOf`, `max`, `min`, `noConflict`,
* `noop`, `now`, `pad`, `padLeft`, `padRight`, `parseInt`, `pop`, `random`,
* `reduce`, `reduceRight`, `repeat`, `result`, `runInContext`, `shift`, `size`,
* `snakeCase`, `some`, `sortedIndex`, `sortedLastIndex`, `startCase`, `startsWith`,
* `sum`, `template`, `trim`, `trimLeft`, `trimRight`, `trunc`, `unescape`,
* `uniqueId`, `value`, and `words`
* `findLast`, `findLastIndex`, `findLastKey`, `findWhere`, `first`, `get`,
* `gt`, `gte`, `has`, `identity`, `includes`, `indexOf`, `inRange`, `isArguments`,
* `isArray`, `isBoolean`, `isDate`, `isElement`, `isEmpty`, `isEqual`, `isError`,
* `isFinite` `isFunction`, `isMatch`, `isNative`, `isNaN`, `isNull`, `isNumber`,
* `isObject`, `isPlainObject`, `isRegExp`, `isString`, `isUndefined`,
* `isTypedArray`, `join`, `kebabCase`, `last`, `lastIndexOf`, `lt`, `lte`,
* `max`, `min`, `noConflict`, `noop`, `now`, `pad`, `padLeft`, `padRight`,
* `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, `repeat`, `result`,
* `runInContext`, `shift`, `size`, `snakeCase`, `some`, `sortedIndex`,
* `sortedLastIndex`, `startCase`, `startsWith`, `sum`, `template`, `trim`,
* `trimLeft`, `trimRight`, `trunc`, `unescape`, `uniqueId`, `value`, and `words`
*

@@ -80,0 +81,0 @@ * The wrapper method `sample` will return a wrapped value when `n` is provided,

@@ -8,3 +8,3 @@ import baseEach from '../internal/baseEach';

/**
* Invokes the method at `path` on each element in `collection`, returning
* Invokes the method at `path` of each element in `collection`, returning
* an array of the results of each invoked method. Any additional arguments

@@ -37,3 +37,3 @@ * are provided to each invoked method. If `methodName` is a function it is

baseEach(collection, function(value) {
var func = isFunc ? path : (isProp && value != null && value[path]);
var func = isFunc ? path : ((isProp && value != null) ? value[path] : null);
result[++index] = func ? func.apply(value, args) : invokePath(value, path, args);

@@ -40,0 +40,0 @@ });

@@ -22,3 +22,3 @@ import arrayMap from '../internal/arrayMap';

*
* Many lodash methods are guarded to work as interatees for methods like
* Many lodash methods are guarded to work as iteratees for methods like
* `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.

@@ -25,0 +25,0 @@ *

@@ -13,3 +13,3 @@ import arrayReduce from '../internal/arrayReduce';

*
* Many lodash methods are guarded to work as interatees for methods like
* Many lodash methods are guarded to work as iteratees for methods like
* `_.reduce`, `_.reduceRight`, and `_.transform`.

@@ -16,0 +16,0 @@ *

@@ -1,5 +0,5 @@

import isNative from '../lang/isNative';
import getNative from '../internal/getNative';
/* Native method references for those with the same name as other `lodash` methods. */
var nativeNow = isNative(nativeNow = Date.now) && nativeNow;
var nativeNow = getNative(Date, 'now');

@@ -6,0 +6,0 @@ /**

@@ -11,8 +11,9 @@ import isObject from '../lang/isObject';

/**
* Creates a function that delays invoking `func` until after `wait` milliseconds
* have elapsed since the last time it was invoked. The created function comes
* with a `cancel` method to cancel delayed invocations. Provide an options
* object to indicate that `func` should be invoked on the leading and/or
* trailing edge of the `wait` timeout. Subsequent calls to the debounced
* function return the result of the last `func` invocation.
* Creates a debounced function that delays invoking `func` until after `wait`
* milliseconds have elapsed since the last time the debounced function was
* invoked. The debounced function comes with a `cancel` method to cancel
* delayed invocations. Provide an options object to indicate that `func`
* should be invoked on the leading and/or trailing edge of the `wait` timeout.
* Subsequent calls to the debounced function return the result of the last
* `func` invocation.
*

@@ -19,0 +20,0 @@ * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked

@@ -63,4 +63,4 @@ import MapCache from '../internal/MapCache';

var args = arguments,
cache = memoized.cache,
key = resolver ? resolver.apply(this, args) : args[0];
key = resolver ? resolver.apply(this, args) : args[0],
cache = memoized.cache;

@@ -71,3 +71,3 @@ if (cache.has(key)) {

var result = func.apply(this, args);
cache.set(key, result);
memoized.cache = cache.set(key, result);
return result;

@@ -74,0 +74,0 @@ };

@@ -15,8 +15,8 @@ import debounce from './debounce';

/**
* Creates a function that only invokes `func` at most once per every `wait`
* milliseconds. The created function comes with a `cancel` method to cancel
* delayed invocations. Provide an options object to indicate that `func`
* should be invoked on the leading and/or trailing edge of the `wait` timeout.
* Subsequent calls to the throttled function return the result of the last
* `func` call.
* Creates a throttled function that only invokes `func` at most once per
* every `wait` milliseconds. The throttled function comes with a `cancel`
* method to cancel delayed invocations. Provide an options object to indicate
* that `func` should be invoked on the leading and/or trailing edge of the
* `wait` timeout. Subsequent calls to the throttled function return the
* result of the last `func` call.
*

@@ -23,0 +23,0 @@ * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked

@@ -1,10 +0,3 @@

import getSymbols from './getSymbols';
import keys from '../object/keys';
/** Used for native method references. */
var arrayProto = Array.prototype;
/** Native method references. */
var push = arrayProto.push;
/**

@@ -22,6 +15,4 @@ * A specialized version of `_.assign` for customizing assigned values without

function assignWith(object, source, customizer) {
var props = keys(source);
push.apply(props, getSymbols(source));
var index = -1,
props = keys(source),
length = props.length;

@@ -28,0 +19,0 @@

import baseCopy from './baseCopy';
import getSymbols from './getSymbols';
import isNative from '../lang/isNative';
import keys from '../object/keys';
/** Native method references. */
var preventExtensions = isNative(preventExtensions = Object.preventExtensions) && preventExtensions;
/** Used as `baseAssign`. */
var nativeAssign = (function() {
// Avoid `Object.assign` in Firefox 34-37 which have an early implementation
// with a now defunct try/catch behavior. See https://bugzilla.mozilla.org/show_bug.cgi?id=1103344
// for more details.
//
// Use `Object.preventExtensions` on a plain object instead of simply using
// `Object('x')` because Chrome and IE fail to throw an error when attempting
// to assign values to readonly indexes of strings.
var func = preventExtensions && isNative(func = Object.assign) && func;
try {
if (func) {
var object = preventExtensions({ '1': 0 });
object[0] = 1;
}
} catch(e) {
// Only attempt in strict mode.
try { func(object, 'xo'); } catch(e) {}
return !object[1] && func;
}
return false;
}());
/**

@@ -41,8 +13,8 @@ * The base implementation of `_.assign` without support for argument juggling,

*/
var baseAssign = nativeAssign || function(object, source) {
function baseAssign(object, source) {
return source == null
? object
: baseCopy(source, getSymbols(source), baseCopy(source, keys(source), object));
};
: baseCopy(source, keys(source), object);
}
export default baseAssign;

@@ -17,3 +17,3 @@ import isArrayLike from './isArrayLike';

isArr = !isNil && isArrayLike(collection),
length = isArr && collection.length,
length = isArr ? collection.length : 0,
propsLength = props.length,

@@ -20,0 +20,0 @@ result = Array(propsLength);

@@ -6,4 +6,4 @@ /**

* @private
* @param {*} value The value to compare to `other`.
* @param {*} other The value to compare to `value`.
* @param {*} value The value to compare.
* @param {*} other The other value to compare.
* @returns {number} Returns the sort order indicator for `value`.

@@ -13,9 +13,18 @@ */

if (value !== other) {
var valIsReflexive = value === value,
var valIsNull = value === null,
valIsUndef = value === undefined,
valIsReflexive = value === value;
var othIsNull = other === null,
othIsUndef = other === undefined,
othIsReflexive = other === other;
if (value > other || !valIsReflexive || (value === undefined && othIsReflexive)) {
if ((value > other && !othIsNull) || !valIsReflexive ||
(valIsNull && !othIsUndef && othIsReflexive) ||
(valIsUndef && othIsReflexive)) {
return 1;
}
if (value < other || !othIsReflexive || (other === undefined && valIsReflexive)) {
if ((value < other && !valIsNull) || !othIsReflexive ||
(othIsNull && !valIsUndef && valIsReflexive) ||
(othIsUndef && valIsReflexive)) {
return -1;

@@ -22,0 +31,0 @@ }

import isObject from '../lang/isObject';
import root from './root';

@@ -13,10 +12,10 @@ /**

var baseCreate = (function() {
function Object() {}
function object() {}
return function(prototype) {
if (isObject(prototype)) {
Object.prototype = prototype;
var result = new Object;
Object.prototype = null;
object.prototype = prototype;
var result = new object;
object.prototype = null;
}
return result || root.Object();
return result || {};
};

@@ -23,0 +22,0 @@ }());

@@ -20,7 +20,7 @@ import toObject from './toObject';

}
var index = -1,
var index = 0,
length = path.length;
while (object != null && ++index < length) {
object = object[path[index]];
while (object != null && index < length) {
object = object[path[index++]];
}

@@ -27,0 +27,0 @@ return (index && index == length) ? object : undefined;

import baseIsEqualDeep from './baseIsEqualDeep';
import isObject from '../lang/isObject';

@@ -17,13 +18,6 @@ /**

function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
// Exit early for identical values.
if (value === other) {
return true;
}
var valType = typeof value,
othType = typeof other;
// Exit early for unlike primitive values.
if ((valType != 'function' && valType != 'object' && othType != 'function' && othType != 'object') ||
value == null || other == null) {
// Return `false` unless both values are `NaN`.
if (value == null || other == null || (!isObject(value) && !isObject(other))) {
return value !== value && other !== other;

@@ -30,0 +24,0 @@ }

@@ -69,7 +69,7 @@ import equalArrays from './equalArrays';

if (!isLoose) {
var valWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
othWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
if (valWrapped || othWrapped) {
return equalFunc(valWrapped ? object.value() : object, othWrapped ? other.value() : other, customizer, isLoose, stackA, stackB);
if (objIsWrapped || othIsWrapped) {
return equalFunc(objIsWrapped ? object.value() : object, othIsWrapped ? other.value() : other, customizer, isLoose, stackA, stackB);
}

@@ -76,0 +76,0 @@ }

import baseIsEqual from './baseIsEqual';
import toObject from './toObject';

@@ -9,17 +10,20 @@ /**

* @param {Object} object The object to inspect.
* @param {Array} props The source property names to match.
* @param {Array} values The source values to match.
* @param {Array} strictCompareFlags Strict comparison flags for source values.
* @param {Array} matchData The propery names, values, and compare flags to match.
* @param {Function} [customizer] The function to customize comparing objects.
* @returns {boolean} Returns `true` if `object` is a match, else `false`.
*/
function baseIsMatch(object, props, values, strictCompareFlags, customizer) {
var index = -1,
length = props.length,
function baseIsMatch(object, matchData, customizer) {
var index = matchData.length,
length = index,
noCustomizer = !customizer;
while (++index < length) {
if ((noCustomizer && strictCompareFlags[index])
? values[index] !== object[props[index]]
: !(props[index] in object)
if (object == null) {
return !length;
}
object = toObject(object);
while (index--) {
var data = matchData[index];
if ((noCustomizer && data[2])
? data[1] !== object[data[0]]
: !(data[0] in object)
) {

@@ -29,19 +33,18 @@ return false;

}
index = -1;
while (++index < length) {
var key = props[index],
data = matchData[index];
var key = data[0],
objValue = object[key],
srcValue = values[index];
srcValue = data[1];
if (noCustomizer && strictCompareFlags[index]) {
var result = objValue !== undefined || (key in object);
if (noCustomizer && data[2]) {
if (objValue === undefined && !(key in object)) {
return false;
}
} else {
result = customizer ? customizer(objValue, srcValue, key) : undefined;
if (result === undefined) {
result = baseIsEqual(srcValue, objValue, customizer, true);
var result = customizer ? customizer(objValue, srcValue, key) : undefined;
if (!(result === undefined ? baseIsEqual(srcValue, objValue, customizer, true) : result)) {
return false;
}
}
if (!result) {
return false;
}
}

@@ -48,0 +51,0 @@ return true;

import baseIsMatch from './baseIsMatch';
import constant from '../utility/constant';
import isStrictComparable from './isStrictComparable';
import keys from '../object/keys';
import getMatchData from './getMatchData';
import toObject from './toObject';

@@ -15,31 +13,16 @@

function baseMatches(source) {
var props = keys(source),
length = props.length;
var matchData = getMatchData(source);
if (matchData.length == 1 && matchData[0][2]) {
var key = matchData[0][0],
value = matchData[0][1];
if (!length) {
return constant(true);
return function(object) {
if (object == null) {
return false;
}
return object[key] === value && (value !== undefined || (key in toObject(object)));
};
}
if (length == 1) {
var key = props[0],
value = source[key];
if (isStrictComparable(value)) {
return function(object) {
if (object == null) {
return false;
}
return object[key] === value && (value !== undefined || (key in toObject(object)));
};
}
}
var values = Array(length),
strictCompareFlags = Array(length);
while (length--) {
value = source[props[length]];
values[length] = value;
strictCompareFlags[length] = isStrictComparable(value);
}
return function(object) {
return object != null && baseIsMatch(toObject(object), props, values, strictCompareFlags);
return baseIsMatch(object, matchData);
};

@@ -46,0 +29,0 @@ }

@@ -17,8 +17,8 @@ import baseGet from './baseGet';

* @param {string} path The path of the property to get.
* @param {*} value The value to compare.
* @param {*} srcValue The value to compare.
* @returns {Function} Returns the new function.
*/
function baseMatchesProperty(path, value) {
function baseMatchesProperty(path, srcValue) {
var isArr = isArray(path),
isCommon = isKey(path) && isStrictComparable(value),
isCommon = isKey(path) && isStrictComparable(srcValue),
pathKey = (path + '');

@@ -41,5 +41,5 @@

}
return object[key] === value
? (value !== undefined || (key in object))
: baseIsEqual(value, object[key], null, true);
return object[key] === srcValue
? (srcValue !== undefined || (key in object))
: baseIsEqual(srcValue, object[key], undefined, true);
};

@@ -46,0 +46,0 @@ }

import arrayEach from './arrayEach';
import baseMergeDeep from './baseMergeDeep';
import getSymbols from './getSymbols';
import isArray from '../lang/isArray';

@@ -11,8 +10,2 @@ import isArrayLike from './isArrayLike';

/** Used for native method references. */
var arrayProto = Array.prototype;
/** Native method references. */
var push = arrayProto.push;
/**

@@ -34,7 +27,5 @@ * The base implementation of `_.merge` without support for argument juggling,

}
var isSrcArr = isArrayLike(source) && (isArray(source) || isTypedArray(source));
if (!isSrcArr) {
var props = keys(source);
push.apply(props, getSymbols(source));
}
var isSrcArr = isArrayLike(source) && (isArray(source) || isTypedArray(source)),
props = isSrcArr ? null : keys(source);
arrayEach(props || source, function(srcValue, key) {

@@ -58,3 +49,3 @@ if (props) {

}
if ((isSrcArr || result !== undefined) &&
if ((result !== undefined || (isSrcArr && !(key in object))) &&
(isCommon || (result === result ? (result !== value) : (value === value)))) {

@@ -61,0 +52,0 @@ object[key] = result;

@@ -21,3 +21,3 @@ import isIndex from './isIndex';

while (length--) {
var index = parseFloat(indexes[length]);
var index = indexes[length];
if (index != previous && isIndex(index)) {

@@ -24,0 +24,0 @@ var previous = index;

/**
* Converts `value` to a string if it is not one. An empty string is returned
* Converts `value` to a string if it's not one. An empty string is returned
* for `null` or `undefined` values.

@@ -4,0 +4,0 @@ *

@@ -5,3 +5,3 @@ import binaryIndexBy from './binaryIndexBy';

/** Used as references for the maximum length and index of an array. */
var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1,
var MAX_ARRAY_LENGTH = 4294967295,
HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;

@@ -29,3 +29,3 @@

if (retHighest ? (computed <= value) : (computed < value)) {
if ((retHighest ? (computed <= value) : (computed < value)) && computed !== null) {
low = mid + 1;

@@ -32,0 +32,0 @@ } else {

@@ -8,3 +8,3 @@ /** Native method references. */

/** Used as references for the maximum length and index of an array. */
var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1,
var MAX_ARRAY_LENGTH = 4294967295,
MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1;

@@ -31,2 +31,3 @@

valIsNaN = value !== value,
valIsNull = value === null,
valIsUndef = value === undefined;

@@ -37,2 +38,3 @@

computed = iteratee(array[mid]),
isDef = computed !== undefined,
isReflexive = computed === computed;

@@ -42,4 +44,8 @@

var setLow = isReflexive || retHighest;
} else if (valIsNull) {
setLow = isReflexive && isDef && (retHighest || computed != null);
} else if (valIsUndef) {
setLow = isReflexive && (retHighest || computed !== undefined);
setLow = isReflexive && (retHighest || isDef);
} else if (computed == null) {
setLow = false;
} else {

@@ -46,0 +52,0 @@ setLow = retHighest ? (computed <= value) : (computed < value);

import constant from '../utility/constant';
import isNative from '../lang/isNative';
import getNative from './getNative';
import root from './root';
/** Native method references. */
var ArrayBuffer = isNative(ArrayBuffer = root.ArrayBuffer) && ArrayBuffer,
bufferSlice = isNative(bufferSlice = ArrayBuffer && new ArrayBuffer(0).slice) && bufferSlice,
var ArrayBuffer = getNative(root, 'ArrayBuffer'),
bufferSlice = getNative(ArrayBuffer && new ArrayBuffer(0), 'slice'),
floor = Math.floor,
Uint8Array = isNative(Uint8Array = root.Uint8Array) && Uint8Array;
Uint8Array = getNative(root, 'Uint8Array');

@@ -17,6 +17,6 @@ /** Used to clone array buffers. */

try {
var func = isNative(func = root.Float64Array) && func,
var func = getNative(root, 'Float64Array'),
result = new func(new ArrayBuffer(10), 0, 1) && func;
} catch(e) {}
return result;
return result || null;
}());

@@ -23,0 +23,0 @@

@@ -19,5 +19,5 @@ import bindCallback from './bindCallback';

length = object == null ? 0 : sources.length,
customizer = length > 2 && sources[length - 2],
guard = length > 2 && sources[2],
thisArg = length > 1 && sources[length - 1];
customizer = length > 2 ? sources[length - 2] : undefined,
guard = length > 2 ? sources[2] : undefined,
thisArg = length > 1 ? sources[length - 1] : undefined;

@@ -28,7 +28,7 @@ if (typeof customizer == 'function') {

} else {
customizer = typeof thisArg == 'function' ? thisArg : null;
customizer = typeof thisArg == 'function' ? thisArg : undefined;
length -= (customizer ? 1 : 0);
}
if (guard && isIterateeCall(sources[0], sources[1], guard)) {
customizer = length < 3 ? null : customizer;
customizer = length < 3 ? undefined : customizer;
length = 1;

@@ -35,0 +35,0 @@ }

import SetCache from './SetCache';
import constant from '../utility/constant';
import isNative from '../lang/isNative';
import getNative from './getNative';
import root from './root';
/** Native method references. */
var Set = isNative(Set = root.Set) && Set;
var Set = getNative(root, 'Set');
/* Native method references for those with the same name as other `lodash` methods. */
var nativeCreate = isNative(nativeCreate = Object.create) && nativeCreate;
var nativeCreate = getNative(Object, 'create');

@@ -12,0 +12,0 @@ /**

@@ -14,4 +14,16 @@ import baseCreate from './baseCreate';

return function() {
// Use a `switch` statement to work with class constructors.
// See https://people.mozilla.org/~jorendorff/es6-draft.html#sec-ecmascript-function-objects-call-thisargument-argumentslist
// 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]);
}
var thisBinding = baseCreate(Ctor.prototype),
result = Ctor.apply(thisBinding, arguments);
result = Ctor.apply(thisBinding, args);

@@ -18,0 +30,0 @@ // Mimic the constructor's `return` behavior.

@@ -0,7 +1,5 @@

import arrayExtremum from './arrayExtremum';
import baseCallback from './baseCallback';
import charAtCallback from './charAtCallback';
import extremumBy from './extremumBy';
import isArray from '../lang/isArray';
import baseExtremum from './baseExtremum';
import isIterateeCall from './isIterateeCall';
import isString from '../lang/isString';
import toIterable from './toIterable';

@@ -13,8 +11,7 @@

* @private
* @param {Function} arrayFunc The function to get the extremum value from an array.
* @param {boolean} [isMin] Specify returning the minimum, instead of the maximum,
* extremum value.
* @param {Function} comparator The function used to compare values.
* @param {*} exValue The initial extremum value.
* @returns {Function} Returns the new extremum function.
*/
function createExtremum(arrayFunc, isMin) {
function createExtremum(comparator, exValue) {
return function(collection, iteratee, thisArg) {

@@ -24,14 +21,11 @@ if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {

}
var noIteratee = iteratee == null;
iteratee = noIteratee ? iteratee : baseCallback(iteratee, thisArg, 3);
if (noIteratee) {
var isArr = isArray(collection);
if (!isArr && isString(collection)) {
iteratee = charAtCallback;
} else {
return arrayFunc(isArr ? collection : toIterable(collection));
iteratee = baseCallback(iteratee, thisArg, 3);
if (iteratee.length == 1) {
collection = toIterable(collection);
var result = arrayExtremum(collection, iteratee, comparator, exValue);
if (!(collection.length && result === exValue)) {
return result;
}
}
return extremumBy(collection, iteratee, isMin);
return baseExtremum(collection, iteratee, comparator, exValue);
};

@@ -38,0 +32,0 @@ }

@@ -25,7 +25,4 @@ import LodashWrapper from './LodashWrapper';

return function() {
var length = arguments.length;
if (!length) {
return function() { return arguments[0]; };
}
var wrapper,
length = arguments.length,
index = fromRight ? length : -1,

@@ -40,4 +37,5 @@ leftIndex = 0,

}
var funcName = wrapper ? '' : getFuncName(func);
wrapper = funcName == 'wrapper' ? new LodashWrapper([]) : wrapper;
if (!wrapper && LodashWrapper.prototype.thru && getFuncName(func) == 'wrapper') {
wrapper = new LodashWrapper([]);
}
}

@@ -47,5 +45,6 @@ index = wrapper ? -1 : length;

func = funcs[index];
funcName = getFuncName(func);
var data = funcName == 'wrapper' ? getData(func) : null;
var funcName = getFuncName(func),
data = funcName == 'wrapper' ? getData(func) : null;
if (data && isLaziable(data[0]) && data[1] == (ARY_FLAG | CURRY_FLAG | PARTIAL_FLAG | REARG_FLAG) && !data[4].length && data[9] == 1) {

@@ -63,3 +62,3 @@ wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);

var index = 0,
result = funcs[index].apply(this, args);
result = length ? funcs[index].apply(this, args) : args[0];

@@ -66,0 +65,0 @@ while (++index < length) {

@@ -47,7 +47,5 @@ import arrayCopy from './arrayCopy';

isCurryBound = bitmask & CURRY_BOUND_FLAG,
isCurryRight = bitmask & CURRY_RIGHT_FLAG;
isCurryRight = bitmask & CURRY_RIGHT_FLAG,
Ctor = isBindKey ? null : createCtorWrapper(func);
var Ctor = !isBindKey && createCtorWrapper(func),
key = func;
function wrapper() {

@@ -98,6 +96,5 @@ // Avoid `arguments` object use disqualifying optimizations by

}
var thisBinding = isBind ? thisArg : this;
if (isBindKey) {
func = thisBinding[key];
}
var thisBinding = isBind ? thisArg : this,
fn = isBindKey ? thisBinding[func] : func;
if (argPos) {

@@ -109,3 +106,5 @@ args = reorder(args, argPos);

}
var fn = (this && this !== root && this instanceof wrapper) ? (Ctor || createCtorWrapper(func)) : func;
if (this && this !== root && this instanceof wrapper) {
fn = Ctor || createCtorWrapper(func);
}
return fn.apply(thisBinding, args);

@@ -112,0 +111,0 @@ }

@@ -0,1 +1,3 @@

import arraySome from './arraySome';
/**

@@ -18,4 +20,3 @@ * A specialized version of `baseIsEqualDeep` for arrays with support for

arrLength = array.length,
othLength = other.length,
result = true;
othLength = other.length;

@@ -25,32 +26,28 @@ if (arrLength != othLength && !(isLoose && othLength > arrLength)) {

}
// Deep compare the contents, ignoring non-numeric properties.
while (result && ++index < arrLength) {
// Ignore non-index properties.
while (++index < arrLength) {
var arrValue = array[index],
othValue = other[index];
othValue = other[index],
result = customizer ? customizer(isLoose ? othValue : arrValue, isLoose ? arrValue : othValue, index) : undefined;
result = undefined;
if (customizer) {
result = isLoose
? customizer(othValue, arrValue, index)
: customizer(arrValue, othValue, index);
if (result !== undefined) {
if (result) {
continue;
}
return false;
}
if (result === undefined) {
// Recursively compare arrays (susceptible to call stack limits).
if (isLoose) {
var othIndex = othLength;
while (othIndex--) {
othValue = other[othIndex];
result = (arrValue && arrValue === othValue) || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
if (result) {
break;
}
}
} else {
result = (arrValue && arrValue === othValue) || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
// Recursively compare arrays (susceptible to call stack limits).
if (isLoose) {
if (!arraySome(other, function(othValue) {
return arrValue === othValue || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
})) {
return false;
}
} else if (!(arrValue === othValue || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB))) {
return false;
}
}
return !!result;
return true;
}
export default equalArrays;

@@ -32,25 +32,18 @@ import keys from '../object/keys';

}
var skipCtor = isLoose,
index = -1;
var index = objLength;
while (index--) {
var key = objProps[index];
if (!(isLoose ? key in other : hasOwnProperty.call(other, key))) {
return false;
}
}
var skipCtor = isLoose;
while (++index < objLength) {
var key = objProps[index],
result = isLoose ? key in other : hasOwnProperty.call(other, key);
key = objProps[index];
var objValue = object[key],
othValue = other[key],
result = customizer ? customizer(isLoose ? othValue : objValue, isLoose? objValue : othValue, key) : undefined;
if (result) {
var objValue = object[key],
othValue = other[key];
result = undefined;
if (customizer) {
result = isLoose
? customizer(othValue, objValue, key)
: customizer(objValue, othValue, key);
}
if (result === undefined) {
// Recursively compare objects (susceptible to call stack limits).
result = (objValue && objValue === othValue) || equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB);
}
}
if (!result) {
// Recursively compare objects (susceptible to call stack limits).
if (!(result === undefined ? equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB) : result)) {
return false;

@@ -57,0 +50,0 @@ }

@@ -1,5 +0,2 @@

import baseProperty from './baseProperty';
import constant from '../utility/constant';
import realNames from './realNames';
import support from '../support';

@@ -13,26 +10,17 @@ /**

*/
var getFuncName = (function() {
if (!support.funcNames) {
return constant('');
}
if (constant.name == 'constant') {
return baseProperty('name');
}
return function(func) {
var result = func.name,
array = realNames[result],
length = array ? array.length : 0;
function getFuncName(func) {
var result = func.name,
array = realNames[result],
length = array ? array.length : 0;
while (length--) {
var data = array[length],
otherFunc = data.func;
if (otherFunc == null || otherFunc == func) {
return data.name;
}
while (length--) {
var data = array[length],
otherFunc = data.func;
if (otherFunc == null || otherFunc == func) {
return data.name;
}
return result;
};
}());
}
return result;
}
export default getFuncName;

@@ -5,3 +5,3 @@ /**

*/
var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;
var MAX_SAFE_INTEGER = 9007199254740991;

@@ -17,3 +17,3 @@ /**

function isIndex(value, length) {
value = +value;
value = typeof value == 'number' ? value : parseFloat(value);
length = length == null ? MAX_SAFE_INTEGER : length;

@@ -20,0 +20,0 @@ return value > -1 && value % 1 == 0 && value < length;

@@ -5,3 +5,3 @@ /**

*/
var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;
var MAX_SAFE_INTEGER = 9007199254740991;

@@ -8,0 +8,0 @@ /**

@@ -1,6 +0,6 @@

import isNative from '../lang/isNative';
import getNative from './getNative';
import root from './root';
/** Native method references. */
var WeakMap = isNative(WeakMap = root.WeakMap) && WeakMap;
var WeakMap = getNative(root, 'WeakMap');

@@ -7,0 +7,0 @@ /** Used to store function metadata. */

@@ -25,3 +25,3 @@ /** Used to determine if values are of the language type `Object`. */

*
* The `this` value is used if it is the global object to avoid Greasemonkey's
* The `this` value is used if it's the global object to avoid Greasemonkey's
* restricted `window` object, otherwise the `window` object is used.

@@ -28,0 +28,0 @@ */

import cachePush from './cachePush';
import isNative from '../lang/isNative';
import getNative from './getNative';
import root from './root';
/** Native method references. */
var Set = isNative(Set = root.Set) && Set;
var Set = getNative(root, 'Set');
/* Native method references for those with the same name as other `lodash` methods. */
var nativeCreate = isNative(nativeCreate = Object.create) && nativeCreate;
var nativeCreate = getNative(Object, 'create');

@@ -11,0 +11,0 @@ /**

@@ -6,3 +6,2 @@ import isArguments from '../lang/isArguments';

import keysIn from '../object/keysIn';
import support from '../support';

@@ -28,4 +27,4 @@ /** Used for native method references. */

var allowIndexes = length && isLength(length) &&
(isArray(object) || (support.nonEnumArgs && isArguments(object)));
var allowIndexes = !!length && isLength(length) &&
(isArray(object) || isArguments(object));

@@ -32,0 +31,0 @@ var index = -1,

@@ -6,3 +6,3 @@ import isArrayLike from './isArrayLike';

/**
* Converts `value` to an array-like object if it is not one.
* Converts `value` to an array-like object if it's not one.
*

@@ -9,0 +9,0 @@ * @private

import isObject from '../lang/isObject';
/**
* Converts `value` to an object if it is not one.
* Converts `value` to an object if it's not one.
*

@@ -6,0 +6,0 @@ * @private

@@ -11,3 +11,3 @@ import baseToString from './baseToString';

/**
* Converts `value` to property path array if it is not one.
* Converts `value` to property path array if it's not one.
*

@@ -14,0 +14,0 @@ * @private

import clone from './lang/clone';
import cloneDeep from './lang/cloneDeep';
import eq from './lang/eq';
import gt from './lang/gt';
import gte from './lang/gte';
import isArguments from './lang/isArguments';

@@ -24,2 +27,4 @@ import isArray from './lang/isArray';

import isUndefined from './lang/isUndefined';
import lt from './lang/lt';
import lte from './lang/lte';
import toArray from './lang/toArray';

@@ -31,2 +36,5 @@ import toPlainObject from './lang/toPlainObject';

'cloneDeep': cloneDeep,
'eq': eq,
'gt': gt,
'gte': gte,
'isArguments': isArguments,

@@ -53,4 +61,6 @@ 'isArray': isArray,

'isUndefined': isUndefined,
'lt': lt,
'lte': lte,
'toArray': toArray,
'toPlainObject': toPlainObject
};

@@ -65,6 +65,7 @@ import baseClone from '../internal/baseClone';

}
customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 1);
return baseClone(value, isDeep, customizer);
return typeof customizer == 'function'
? baseClone(value, isDeep, bindCallback(customizer, thisArg, 1))
: baseClone(value, isDeep);
}
export default clone;

@@ -50,6 +50,7 @@ import baseClone from '../internal/baseClone';

function cloneDeep(value, customizer, thisArg) {
customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 1);
return baseClone(value, true, customizer);
return typeof customizer == 'function'
? baseClone(value, true, bindCallback(customizer, thisArg, 1))
: baseClone(value, true);
}
export default cloneDeep;

@@ -0,3 +1,3 @@

import getNative from '../internal/getNative';
import isLength from '../internal/isLength';
import isNative from './isNative';
import isObjectLike from '../internal/isObjectLike';

@@ -18,3 +18,3 @@

/* Native method references for those with the same name as other `lodash` methods. */
var nativeIsArray = isNative(nativeIsArray = Array.isArray) && nativeIsArray;
var nativeIsArray = getNative(Array, 'isArray');

@@ -21,0 +21,0 @@ /**

import baseIsEqual from '../internal/baseIsEqual';
import bindCallback from '../internal/bindCallback';
import isStrictComparable from '../internal/isStrictComparable';

@@ -20,2 +19,3 @@ /**

* @memberOf _
* @alias eq
* @category Lang

@@ -50,10 +50,7 @@ * @param {*} value The value to compare.

function isEqual(value, other, customizer, thisArg) {
customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 3);
if (!customizer && isStrictComparable(value) && isStrictComparable(other)) {
return value === other;
}
customizer = typeof customizer == 'function' ? bindCallback(customizer, thisArg, 3) : undefined;
var result = customizer ? customizer(value, other) : undefined;
return result === undefined ? baseIsEqual(value, other, customizer) : !!result;
return result === undefined ? baseIsEqual(value, other, customizer) : !!result;
}
export default isEqual;

@@ -1,2 +0,2 @@

import isNative from './isNative';
import getNative from '../internal/getNative';
import root from '../internal/root';

@@ -6,3 +6,3 @@

var nativeIsFinite = root.isFinite,
nativeNumIsFinite = isNative(nativeNumIsFinite = Number.isFinite) && nativeNumIsFinite;
nativeNumIsFinite = getNative(Number, 'isFinite');

@@ -9,0 +9,0 @@ /**

import baseIsFunction from '../internal/baseIsFunction';
import isNative from './isNative';
import getNative from '../internal/getNative';
import root from '../internal/root';

@@ -18,3 +18,3 @@

/** Native method references. */
var Uint8Array = isNative(Uint8Array = root.Uint8Array) && Uint8Array;
var Uint8Array = getNative(root, 'Uint8Array');

@@ -21,0 +21,0 @@ /**

import baseIsMatch from '../internal/baseIsMatch';
import bindCallback from '../internal/bindCallback';
import isStrictComparable from '../internal/isStrictComparable';
import keys from '../object/keys';
import toObject from '../internal/toObject';
import getMatchData from '../internal/getMatchData';

@@ -47,31 +45,6 @@ /**

function isMatch(object, source, customizer, thisArg) {
var props = keys(source),
length = props.length;
if (!length) {
return true;
}
if (object == null) {
return false;
}
customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 3);
object = toObject(object);
if (!customizer && length == 1) {
var key = props[0],
value = source[key];
if (isStrictComparable(value)) {
return value === object[key] && (value !== undefined || (key in object));
}
}
var values = Array(length),
strictCompareFlags = Array(length);
while (length--) {
value = values[length] = source[props[length]];
strictCompareFlags[length] = isStrictComparable(value);
}
return baseIsMatch(object, props, values, strictCompareFlags, customizer);
customizer = typeof customizer == 'function' ? bindCallback(customizer, thisArg, 3) : undefined;
return baseIsMatch(object, getMatchData(source), customizer);
}
export default isMatch;

@@ -16,2 +16,5 @@ import escapeRegExp from '../string/escapeRegExp';

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;
/**

@@ -25,4 +28,4 @@ * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)

var reIsNative = RegExp('^' +
escapeRegExp(objToString)
.replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
escapeRegExp(fnToString.call(hasOwnProperty))
.replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
);

@@ -29,0 +32,0 @@

@@ -25,5 +25,5 @@ /**

var type = typeof value;
return type == 'function' || (!!value && type == 'object');
return !!value && (type == 'object' || type == 'function');
}
export default isObject;

@@ -1,2 +0,2 @@

import isNative from './isNative';
import getNative from '../internal/getNative';
import shimIsPlainObject from '../internal/shimIsPlainObject';

@@ -17,3 +17,3 @@

/** Native method references. */
var getPrototypeOf = isNative(getPrototypeOf = Object.getPrototypeOf) && getPrototypeOf;
var getPrototypeOf = getNative(Object, 'getPrototypeOf');

@@ -54,4 +54,4 @@ /**

}
var valueOf = value.valueOf,
objProto = isNative(valueOf) && (objProto = getPrototypeOf(valueOf)) && getPrototypeOf(objProto);
var valueOf = getNative(value, 'valueOf'),
objProto = valueOf && (objProto = getPrototypeOf(valueOf)) && getPrototypeOf(objProto);

@@ -58,0 +58,0 @@ return objProto

/**
* @license
* lodash 3.8.0 (Custom Build) <https://lodash.com/>
* lodash 3.9.0 (Custom Build) <https://lodash.com/>
* Build: `lodash modularize modern exports="es" -o ./`

@@ -45,3 +45,3 @@ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>

/** Used as the semantic version number. */
var VERSION = '3.8.0';
var VERSION = '3.9.0';

@@ -232,2 +232,4 @@ /** Used to compose bitmasks for wrapper metadata. */

lodash.get = object.get;
lodash.gt = lang.gt;
lodash.gte = lang.gte;
lodash.has = object.has;

@@ -262,2 +264,4 @@ lodash.identity = identity;

lodash.lastIndexOf = array.lastIndexOf;
lodash.lt = lang.lt;
lodash.lte = lang.lte;
lodash.max = math.max;

@@ -297,2 +301,3 @@ lodash.min = math.min;

lodash.contains = collection.includes;
lodash.eq = lang.isEqual;
lodash.detect = collection.find;

@@ -299,0 +304,0 @@ lodash.foldl = collection.reduce;

@@ -1,3 +0,3 @@

import arrayMax from '../internal/arrayMax';
import createExtremum from '../internal/createExtremum';
import gt from '../lang/gt';

@@ -51,4 +51,4 @@ /**

*/
var max = createExtremum(arrayMax);
var max = createExtremum(gt, -Infinity);
export default max;

@@ -1,3 +0,3 @@

import arrayMin from '../internal/arrayMin';
import createExtremum from '../internal/createExtremum';
import lt from '../lang/lt';

@@ -51,4 +51,4 @@ /**

*/
var min = createExtremum(arrayMin, true);
var min = createExtremum(lt, Infinity);
export default min;

@@ -5,3 +5,3 @@ import baseGet from '../internal/baseGet';

/**
* Gets the property value of `path` on `object`. If the resolved value is
* Gets the property value at `path` of `object`. If the resolved value is
* `undefined` the `defaultValue` is used in its place.

@@ -8,0 +8,0 @@ *

import baseGet from '../internal/baseGet';
import baseSlice from '../internal/baseSlice';
import isArguments from '../lang/isArguments';
import isArray from '../lang/isArray';
import isIndex from '../internal/isIndex';
import isKey from '../internal/isKey';
import isLength from '../internal/isLength';
import last from '../array/last';

@@ -43,8 +47,12 @@ import toPath from '../internal/toPath';

object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
if (object == null) {
return false;
}
path = last(path);
result = object != null && hasOwnProperty.call(object, path);
result = hasOwnProperty.call(object, path);
}
return result;
return result || (isLength(object.length) && isIndex(path, object.length) &&
(isArray(object) || isArguments(object)));
}
export default has;

@@ -0,3 +1,3 @@

import getNative from '../internal/getNative';
import isArrayLike from '../internal/isArrayLike';
import isNative from '../lang/isNative';
import isObject from '../lang/isObject';

@@ -7,3 +7,3 @@ import shimKeys from '../internal/shimKeys';

/* Native method references for those with the same name as other `lodash` methods. */
var nativeKeys = isNative(nativeKeys = Object.keys) && nativeKeys;
var nativeKeys = getNative(Object, 'keys');

@@ -38,3 +38,3 @@ /**

var keys = !nativeKeys ? shimKeys : function(object) {
var Ctor = object != null && object.constructor;
var Ctor = object == null ? null : object.constructor;
if ((typeof Ctor == 'function' && Ctor.prototype === object) ||

@@ -41,0 +41,0 @@ (typeof object != 'function' && isArrayLike(object))) {

@@ -6,3 +6,2 @@ import isArguments from '../lang/isArguments';

import isObject from '../lang/isObject';
import support from '../support';

@@ -46,3 +45,3 @@ /** Used for native method references. */

length = (length && isLength(length) &&
(isArray(object) || (support.nonEnumArgs && isArguments(object))) && length) || 0;
(isArray(object) || isArguments(object)) && length) || 0;

@@ -49,0 +48,0 @@ var Ctor = object.constructor,

import keys from './keys';
import toObject from '../internal/toObject';

@@ -18,2 +19,4 @@ /**

function pairs(object) {
object = toObject(object);
var index = -1,

@@ -20,0 +23,0 @@ props = keys(object),

@@ -49,3 +49,3 @@ import arrayEach from '../internal/arrayEach';

} else {
accumulator = baseCreate(isFunction(Ctor) && Ctor.prototype);
accumulator = baseCreate(isFunction(Ctor) ? Ctor.prototype : null);
}

@@ -52,0 +52,0 @@ } else {

{
"name": "lodash-es",
"version": "3.8.0",
"version": "3.9.0",
"description": "The modern build of lodash exported as ES modules.",

@@ -5,0 +5,0 @@ "homepage": "https://lodash.com/custom-builds",

@@ -1,2 +0,2 @@

# lodash-es v3.8.0
# lodash-es v3.9.0

@@ -10,2 +10,2 @@ The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash](https://lodash.com/) exported as [ES](https://people.mozilla.org/~jorendorff/es6-draft.html) modules.

See the [package source](https://github.com/lodash/lodash/tree/3.8.0-es) for more details.
See the [package source](https://github.com/lodash/lodash/tree/3.9.0-es) for more details.

@@ -16,3 +16,3 @@ import baseToString from '../internal/baseToString';

* Though the ">" character is escaped for symmetry, characters like
* ">" and "/" don't require escaping in HTML and have no special meaning
* ">" and "/" don't need escaping in HTML and have no special meaning
* unless they're part of a tag or unquoted attribute value.

@@ -19,0 +19,0 @@ * See [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)

@@ -13,3 +13,3 @@ import baseToString from '../internal/baseToString';

/**
* Pads `string` on the left and right sides if it is shorter than `length`.
* Pads `string` on the left and right sides if it's shorter than `length`.
* Padding characters are truncated if they can't be evenly divided by `length`.

@@ -16,0 +16,0 @@ *

import createPadDir from '../internal/createPadDir';
/**
* Pads `string` on the left side if it is shorter than `length`. Padding
* Pads `string` on the left side if it's shorter than `length`. Padding
* characters are truncated if they exceed `length`.

@@ -6,0 +6,0 @@ *

import createPadDir from '../internal/createPadDir';
/**
* Pads `string` on the right side if it is shorter than `length`. Padding
* Pads `string` on the right side if it's shorter than `length`. Padding
* characters are truncated if they exceed `length`.

@@ -6,0 +6,0 @@ *

@@ -14,3 +14,3 @@ import baseToString from '../internal/baseToString';

/**
* Truncates `string` if it is longer than the given maximum string length.
* Truncates `string` if it's longer than the given maximum string length.
* The last characters of the truncated string are replaced with the omission

@@ -17,0 +17,0 @@ * string which defaults to "...".

import root from './internal/root';
/** Used for native method references. */
var objectProto = Object.prototype;
/** Used to detect DOM support. */
var document = (document = root.window) && document.document;
var document = (document = root.window) ? document.document : null;
/** Native method references. */
var propertyIsEnumerable = objectProto.propertyIsEnumerable;
/**

@@ -23,3 +17,2 @@ * An object environment feature flags.

var Ctor = function() { this.x = x; },
args = arguments,
object = { '0': x, 'length': x },

@@ -32,20 +25,2 @@ props = [];

/**
* Detect if functions can be decompiled by `Function#toString`
* (all but Firefox OS certified apps, older Opera mobile browsers, and
* the PlayStation 3; forced `false` for Windows 8 apps).
*
* @memberOf _.support
* @type boolean
*/
support.funcDecomp = /\bthis\b/.test(function() { return this; });
/**
* Detect if `Function#name` is supported (all but IE).
*
* @memberOf _.support
* @type boolean
*/
support.funcNames = typeof Function.name == 'string';
/**
* Detect if the DOM is supported.

@@ -61,22 +36,4 @@ *

}
/**
* Detect if `arguments` object indexes are non-enumerable.
*
* In Firefox < 4, IE < 9, PhantomJS, and Safari < 5.1 `arguments` object
* indexes are non-enumerable. Chrome < 25 and Node.js < 0.11.0 treat
* `arguments` object indexes as non-enumerable and fail `hasOwnProperty`
* checks for indexes that exceed the number of function parameters and
* whose associated argument values are `0`.
*
* @memberOf _.support
* @type boolean
*/
try {
support.nonEnumArgs = !propertyIsEnumerable.call(args, 1);
} catch(e) {
support.nonEnumArgs = true;
}
}(1, 0));
export default support;

@@ -16,3 +16,3 @@ import baseClone from '../internal/baseClone';

* @param {Array|string} path The path of the property to get.
* @param {*} value The value to compare.
* @param {*} srcValue The value to match.
* @returns {Function} Returns the new function.

@@ -29,6 +29,6 @@ * @example

*/
function matchesProperty(path, value) {
return baseMatchesProperty(path, baseClone(value, true));
function matchesProperty(path, srcValue) {
return baseMatchesProperty(path, baseClone(srcValue, true));
}
export default matchesProperty;

@@ -38,5 +38,2 @@ import arrayCopy from '../internal/arrayCopy';

*
* // use `_.runInContext` to avoid conflicts (esp. in Node.js)
* var _ = require('lodash').runInContext();
*
* _.mixin({ 'vowels': vowels });

@@ -43,0 +40,0 @@ * _.vowels('fred');

@@ -12,3 +12,3 @@ import bindCallback from '../internal/bindCallback';

/** Used as references for the maximum length and index of an array. */
var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1;
var MAX_ARRAY_LENGTH = 4294967295;

@@ -15,0 +15,0 @@ /**

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc