Bump to v4.4.1.

This commit is contained in:
John-David Dalton
2016-03-01 21:08:54 -08:00
parent fb1f99d9d9
commit 7059f72e9c
95 changed files with 394 additions and 5947 deletions

View File

@@ -57,7 +57,8 @@ var arrayBufferTag = '[object ArrayBuffer]',
/** Used to match property names within property paths. */
var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
reIsPlainProp = /^\w*$/,
rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(\.|\[\])(?:\4|$))/g;
reLeadingDot = /^\./,
rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
/**
* Used to match `RegExp`
@@ -100,10 +101,10 @@ var freeSelf = typeof self == 'object' && self && self.Object === Object && self
var root = freeGlobal || freeSelf || Function('return this')();
/** Detect free variable `exports`. */
var freeExports = freeGlobal && typeof exports == 'object' && exports;
var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module;
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;
@@ -1384,6 +1385,7 @@ function equalArrays(array, other, equalFunc, customizer, bitmask, stack) {
}
}
stack['delete'](array);
stack['delete'](other);
return result;
}
@@ -1544,6 +1546,7 @@ function equalObjects(object, other, equalFunc, customizer, bitmask, stack) {
}
}
stack['delete'](object);
stack['delete'](other);
return result;
}
@@ -1708,7 +1711,7 @@ function indexKeys(object) {
*/
function isFlattenable(value) {
return isArray(value) || isArguments(value) ||
!!(spreadableSymbol && value && value[spreadableSymbol])
!!(spreadableSymbol && value && value[spreadableSymbol]);
}
/**
@@ -1825,8 +1828,13 @@ function matchesStrictComparable(key, srcValue) {
* @returns {Array} Returns the property path array.
*/
var stringToPath = memoize(function(string) {
string = toString(string);
var result = [];
toString(string).replace(rePropName, function(match, number, quote, string) {
if (reLeadingDot.test(string)) {
result.push('');
}
string.replace(rePropName, function(match, number, quote, string) {
result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
});
return result;