Bump to v3.0.7.

This commit is contained in:
jdalton
2015-05-01 07:56:10 -07:00
committed by John-David Dalton
parent cfca777a28
commit a0c2bf6074
32 changed files with 229 additions and 199 deletions

View File

@@ -1,4 +1,4 @@
# lodash v3.0.6 # lodash v3.0.7
The [lodash](https://lodash.com/) library exported as [npm packages](https://www.npmjs.com/browse/keyword/lodash-modularized) per method. The [lodash](https://lodash.com/) library exported as [npm packages](https://www.npmjs.com/browse/keyword/lodash-modularized) per method.

View File

@@ -1,4 +1,4 @@
# lodash._baseisequal v3.0.6 # lodash._baseisequal v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) internal `baseIsEqual` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) internal `baseIsEqual` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var baseIsEqual = require('lodash._baseisequal'); var baseIsEqual = require('lodash._baseisequal');
``` ```
See the [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash._baseisequal) for more details. See the [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash._baseisequal) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -21,6 +21,17 @@ var argsTag = '[object Arguments]',
regexpTag = '[object RegExp]', regexpTag = '[object RegExp]',
stringTag = '[object String]'; stringTag = '[object String]';
/**
* Checks if `value` is object-like.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is object-like, else `false`.
*/
function isObjectLike(value) {
return !!value && typeof value == 'object';
}
/** Used for native method references. */ /** Used for native method references. */
var objectProto = Object.prototype; var objectProto = Object.prototype;
@@ -28,7 +39,7 @@ var objectProto = Object.prototype;
var hasOwnProperty = objectProto.hasOwnProperty; var hasOwnProperty = objectProto.hasOwnProperty;
/** /**
* Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring) * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
* of values. * of values.
*/ */
var objToString = objectProto.toString; var objToString = objectProto.toString;
@@ -72,7 +83,7 @@ function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
if (value === other) { if (value === other) {
return true; return true;
} }
if (value == null || other == null || (!isObject(value) && !isObject(other))) { if (value == null || other == null || (!isObject(value) && !isObjectLike(other))) {
return value !== value && other !== other; return value !== value && other !== other;
} }
return baseIsEqualDeep(value, other, baseIsEqual, customizer, isLoose, stackA, stackB); return baseIsEqualDeep(value, other, baseIsEqual, customizer, isLoose, stackA, stackB);
@@ -212,7 +223,7 @@ function equalArrays(array, other, equalFunc, customizer, isLoose, stackA, stack
* `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
* *
* @private * @private
* @param {Object} value The object to compare. * @param {Object} object The object to compare.
* @param {Object} other The other object to compare. * @param {Object} other The other object to compare.
* @param {string} tag The `toStringTag` of the objects to compare. * @param {string} tag The `toStringTag` of the objects to compare.
* @returns {boolean} Returns `true` if the objects are equivalent, else `false`. * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash._baseisequal", "name": "lodash._baseisequal",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs internal `baseIsEqual` as a module.", "description": "The modern build of lodashs internal `baseIsEqual` as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",

View File

@@ -1,4 +1,4 @@
# lodash._createwrapper v3.0.6 # lodash._createwrapper v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) internal `createWrapper` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) internal `createWrapper` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var createWrapper = require('lodash._createwrapper'); var createWrapper = require('lodash._createwrapper');
``` ```
See the [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash._createwrapper) for more details. See the [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash._createwrapper) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -31,7 +31,7 @@ var nativeMax = Math.max,
nativeMin = Math.min; nativeMin = Math.min;
/** /**
* Used as the [maximum length](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer) * Used as the [maximum length](http://ecma-international.org/ecma-262/6.0/#sec-number.max_safe_integer)
* of an array-like value. * of an array-like value.
*/ */
var MAX_SAFE_INTEGER = 9007199254740991; var MAX_SAFE_INTEGER = 9007199254740991;
@@ -52,7 +52,7 @@ function composeArgs(args, partials, holders) {
argsLength = nativeMax(args.length - holdersLength, 0), argsLength = nativeMax(args.length - holdersLength, 0),
leftIndex = -1, leftIndex = -1,
leftLength = partials.length, leftLength = partials.length,
result = Array(argsLength + leftLength); result = Array(leftLength + argsLength);
while (++leftIndex < leftLength) { while (++leftIndex < leftLength) {
result[leftIndex] = partials[leftIndex]; result[leftIndex] = partials[leftIndex];
@@ -128,7 +128,7 @@ function createBindWrapper(func, thisArg) {
function createCtorWrapper(Ctor) { function createCtorWrapper(Ctor) {
return function() { return function() {
// Use a `switch` statement to work with class constructors. // 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 // See http://ecma-international.org/ecma-262/6.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist
// for more details. // for more details.
var args = arguments; var args = arguments;
switch (args.length) { switch (args.length) {
@@ -138,6 +138,8 @@ function createCtorWrapper(Ctor) {
case 3: return new Ctor(args[0], args[1], args[2]); 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 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 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), var thisBinding = baseCreate(Ctor.prototype),
result = Ctor.apply(thisBinding, args); result = Ctor.apply(thisBinding, args);
@@ -172,7 +174,7 @@ function createHybridWrapper(func, bitmask, thisArg, partials, holders, partials
isCurry = bitmask & CURRY_FLAG, isCurry = bitmask & CURRY_FLAG,
isCurryBound = bitmask & CURRY_BOUND_FLAG, isCurryBound = bitmask & CURRY_BOUND_FLAG,
isCurryRight = bitmask & CURRY_RIGHT_FLAG, isCurryRight = bitmask & CURRY_RIGHT_FLAG,
Ctor = isBindKey ? null : createCtorWrapper(func); Ctor = isBindKey ? undefined : createCtorWrapper(func);
function wrapper() { function wrapper() {
// Avoid `arguments` object use disqualifying optimizations by // Avoid `arguments` object use disqualifying optimizations by
@@ -196,12 +198,12 @@ function createHybridWrapper(func, bitmask, thisArg, partials, holders, partials
length -= argsHolders.length; length -= argsHolders.length;
if (length < arity) { if (length < arity) {
var newArgPos = argPos ? arrayCopy(argPos) : null, var newArgPos = argPos ? arrayCopy(argPos) : undefined,
newArity = nativeMax(arity - length, 0), newArity = nativeMax(arity - length, 0),
newsHolders = isCurry ? argsHolders : null, newsHolders = isCurry ? argsHolders : undefined,
newHoldersRight = isCurry ? null : argsHolders, newHoldersRight = isCurry ? undefined : argsHolders,
newPartials = isCurry ? args : null, newPartials = isCurry ? args : undefined,
newPartialsRight = isCurry ? null : args; newPartialsRight = isCurry ? undefined : args;
bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG); bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG);
bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG); bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG);
@@ -255,7 +257,7 @@ function createPartialWrapper(func, bitmask, thisArg, partials) {
argsLength = arguments.length, argsLength = arguments.length,
leftIndex = -1, leftIndex = -1,
leftLength = partials.length, leftLength = partials.length,
args = Array(argsLength + leftLength); args = Array(leftLength + argsLength);
while (++leftIndex < leftLength) { while (++leftIndex < leftLength) {
args[leftIndex] = partials[leftIndex]; args[leftIndex] = partials[leftIndex];
@@ -302,14 +304,14 @@ function createWrapper(func, bitmask, thisArg, partials, holders, argPos, ary, a
var length = partials ? partials.length : 0; var length = partials ? partials.length : 0;
if (!length) { if (!length) {
bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG); bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG);
partials = holders = null; partials = holders = undefined;
} }
length -= (holders ? holders.length : 0); length -= (holders ? holders.length : 0);
if (bitmask & PARTIAL_RIGHT_FLAG) { if (bitmask & PARTIAL_RIGHT_FLAG) {
var partialsRight = partials, var partialsRight = partials,
holdersRight = holders; holdersRight = holders;
partials = holders = null; partials = holders = undefined;
} }
var newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity]; var newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity];

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash._createwrapper", "name": "lodash._createwrapper",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs internal `createWrapper` as a module.", "description": "The modern build of lodashs internal `createWrapper` as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",

View File

@@ -1,4 +1,4 @@
# lodash._isiterateecall v3.0.6 # lodash._isiterateecall v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) internal `isIterateeCall` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) internal `isIterateeCall` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var isIterateeCall = require('lodash._isiterateecall'); var isIterateeCall = require('lodash._isiterateecall');
``` ```
See the [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash._isiterateecall) for more details. See the [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash._isiterateecall) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -30,7 +30,7 @@ function baseProperty(key) {
* Gets the "length" property value of `object`. * Gets the "length" property value of `object`.
* *
* **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792) * **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792)
* in Safari on iOS 8.1 ARM64. * that affects Safari on at least iOS 8.1-8.3 ARM64.
* *
* @private * @private
* @param {Object} object The object to query. * @param {Object} object The object to query.
@@ -38,6 +38,17 @@ function baseProperty(key) {
*/ */
var getLength = baseProperty('length'); var getLength = baseProperty('length');
/**
* Checks if `value` is array-like.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is array-like, else `false`.
*/
function isArrayLike(value) {
return value != null && isLength(getLength(value));
}
/** /**
* Checks if `value` is a valid array-like index. * Checks if `value` is a valid array-like index.
* *
@@ -66,13 +77,9 @@ function isIterateeCall(value, index, object) {
return false; return false;
} }
var type = typeof index; var type = typeof index;
if (type == 'number') { if (type == 'number'
var length = getLength(object), ? (isArrayLike(object) && isIndex(index, object.length))
prereq = isLength(length) && isIndex(index, length); : (type == 'string' && index in object)) {
} else {
prereq = type == 'string' && index in object;
}
if (prereq) {
var other = object[index]; var other = object[index];
return value === value ? (value === other) : (other !== other); return value === value ? (value === other) : (other !== other);
} }

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash._isiterateecall", "name": "lodash._isiterateecall",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs internal `isIterateeCall` as a module.", "description": "The modern build of lodashs internal `isIterateeCall` as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",

View File

@@ -1,22 +1,23 @@
The MIT License (MIT)
Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/> Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>
Based on Underscore.js, copyright 2009-2016 Jeremy Ashkenas, Based on Underscore.js, copyright 2009-2016 Jeremy Ashkenas,
DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/> DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
Permission is hereby granted, free of charge, to any person obtaining Permission is hereby granted, free of charge, to any person obtaining a copy
a copy of this software and associated documentation files (the of this software and associated documentation files (the "Software"), to deal
"Software"), to deal in the Software without restriction, including in the Software without restriction, including without limitation the rights
without limitation the rights to use, copy, modify, merge, publish, to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
distribute, sublicense, and/or sell copies of the Software, and to copies of the Software, and to permit persons to whom the Software is
permit persons to whom the Software is furnished to do so, subject to furnished to do so, subject to the following conditions:
the following conditions:
The above copyright notice and this permission notice shall be The above copyright notice and this permission notice shall be included in all
included in all copies or substantial portions of the Software. copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. SOFTWARE.

View File

@@ -1,4 +1,4 @@
# lodash.isarguments v3.0.6 # lodash.isarguments v3.0.7
The [lodash](https://lodash.com/) method `_.isArguments` exported as a [Node.js](https://nodejs.org/) module. The [lodash](https://lodash.com/) method `_.isArguments` exported as a [Node.js](https://nodejs.org/) module.
@@ -15,4 +15,4 @@ In Node.js:
var isArguments = require('lodash.isarguments'); var isArguments = require('lodash.isarguments');
``` ```
See the [documentation](https://lodash.com/docs#isArguments) or [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash.isarguments) for more details. See the [documentation](https://lodash.com/docs#isArguments) or [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash.isarguments) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modularize exports="npm" -o ./` * Build: `lodash modularize exports="npm" -o ./`
* Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -84,7 +84,6 @@ function isArguments(value) {
* *
* @static * @static
* @memberOf _ * @memberOf _
* @type Function
* @category Lang * @category Lang
* @param {*} value The value to check. * @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is array-like, else `false`. * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
@@ -113,7 +112,6 @@ function isArrayLike(value) {
* *
* @static * @static
* @memberOf _ * @memberOf _
* @type Function
* @category Lang * @category Lang
* @param {*} value The value to check. * @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is an array-like object, else `false`. * @returns {boolean} Returns `true` if `value` is an array-like object, else `false`.
@@ -184,7 +182,8 @@ function isFunction(value) {
* // => false * // => false
*/ */
function isLength(value) { function isLength(value) {
return typeof value == 'number' && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; return typeof value == 'number' &&
value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
} }
/** /**

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash.isarguments", "name": "lodash.isarguments",
"version": "3.0.6", "version": "3.0.7",
"description": "The lodash method `_.isArguments` exported as a module.", "description": "The lodash method `_.isArguments` exported as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",

View File

@@ -1,4 +1,4 @@
# lodash.iselement v3.0.6 # lodash.iselement v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.isElement` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.isElement` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var isElement = require('lodash.iselement'); var isElement = require('lodash.iselement');
``` ```
See the [documentation](https://lodash.com/docs#isElement) or [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash.iselement) for more details. See the [documentation](https://lodash.com/docs#isElement) or [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash.iselement) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -23,7 +23,7 @@ function isObjectLike(value) {
var objectProto = Object.prototype; var objectProto = Object.prototype;
/** Used to detect DOM support. */ /** Used to detect DOM support. */
var document = (document = global.window) && document.document; var document = (document = global.window) ? document.document : null;
/** /**
* Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring) * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
@@ -42,7 +42,6 @@ var support = {};
(function(x) { (function(x) {
var Ctor = function() { this.x = x; }, var Ctor = function() { this.x = x; },
args = arguments,
object = { '0': x, 'length': x }, object = { '0': x, 'length': x },
props = []; props = [];

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash.iselement", "name": "lodash.iselement",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs `_.isElement` as a module.", "description": "The modern build of lodashs `_.isElement` as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",

View File

@@ -1,5 +1,5 @@
Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>
Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas, Based on Underscore.js, copyright 2009-2016 Jeremy Ashkenas,
DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/> DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
Permission is hereby granted, free of charge, to any person obtaining Permission is hereby granted, free of charge, to any person obtaining

View File

@@ -1,20 +1,18 @@
# lodash.isfunction v3.0.6 # lodash.isfunction v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.isFunction` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [lodash](https://lodash.com/) method `_.isFunction` exported as a [Node.js](https://nodejs.org/) module.
## Installation ## Installation
Using npm: Using npm:
```bash ```bash
$ {sudo -H} npm i -g npm $ {sudo -H} npm i -g npm
$ npm i --save lodash.isfunction $ npm i --save lodash.isfunction
``` ```
In Node.js/io.js: In Node.js:
```js ```js
var isFunction = require('lodash.isfunction'); var isFunction = require('lodash.isfunction');
``` ```
See the [documentation](https://lodash.com/docs#isFunction) or [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash.isfunction) for more details. See the [documentation](https://lodash.com/docs#isFunction) or [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash.isfunction) for more details.

View File

@@ -1,23 +1,24 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors * Copyright 2009-2016 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Available under MIT license <https://lodash.com/license> * Available under MIT license <https://lodash.com/license>
*/ */
/** `Object#toString` result references. */ /** `Object#toString` result references. */
var funcTag = '[object Function]'; var funcTag = '[object Function]',
genTag = '[object GeneratorFunction]';
/** Used for native method references. */ /** Used for built-in method references. */
var objectProto = Object.prototype; var objectProto = global.Object.prototype;
/** /**
* Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring) * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
* of values. * of values.
*/ */
var objToString = objectProto.toString; var objectToString = objectProto.toString;
/** /**
* Checks if `value` is classified as a `Function` object. * Checks if `value` is classified as a `Function` object.
@@ -37,9 +38,10 @@ var objToString = objectProto.toString;
*/ */
function isFunction(value) { function isFunction(value) {
// The use of `Object#toString` avoids issues with the `typeof` operator // The use of `Object#toString` avoids issues with the `typeof` operator
// in older versions of Chrome and Safari which return 'function' for regexes // in Safari 8 which returns 'object' for typed array constructors, and
// and Safari 8 which returns 'object' for typed array constructors. // PhantomJS 1.9 which returns 'function' for `NodeList` instances.
return isObject(value) && objToString.call(value) == funcTag; var tag = isObject(value) ? objectToString.call(value) : '';
return tag == funcTag || tag == genTag;
} }
/** /**
@@ -59,12 +61,13 @@ function isFunction(value) {
* _.isObject([1, 2, 3]); * _.isObject([1, 2, 3]);
* // => true * // => true
* *
* _.isObject(1); * _.isObject(_.noop);
* // => true
*
* _.isObject(null);
* // => false * // => false
*/ */
function isObject(value) { function isObject(value) {
// Avoid a V8 JIT bug in Chrome 19-20.
// See https://code.google.com/p/v8/issues/detail?id=2291 for more details.
var type = typeof value; var type = typeof value;
return !!value && (type == 'object' || type == 'function'); return !!value && (type == 'object' || type == 'function');
} }

View File

@@ -1,17 +1,15 @@
{ {
"name": "lodash.isfunction", "name": "lodash.isfunction",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs `_.isFunction` as a module.", "description": "The lodash method `_.isFunction` exported as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",
"license": "MIT", "license": "MIT",
"keywords": "lodash, lodash-modularized, stdlib, util", "keywords": "lodash, lodash-modularized, stdlib, util, isfunction",
"author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)", "author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
"contributors": [ "contributors": [
"John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)", "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
"Benjamin Tan <demoneaux@gmail.com> (https://d10.github.io/)", "Blaine Bublitz <blaine@iceddev.com> (https://github.com/phated)",
"Blaine Bublitz <blaine@iceddev.com> (http://www.iceddev.com/)",
"Kit Cambridge <github@kitcambridge.be> (http://kitcambridge.be/)",
"Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)" "Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)"
], ],
"repository": "lodash/lodash", "repository": "lodash/lodash",

View File

@@ -1,7 +1,17 @@
Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/> Copyright jQuery Foundation and other contributors <https://jquery.org/>
Based on Underscore.js, copyright 2009-2016 Jeremy Ashkenas,
Based on Underscore.js, copyright Jeremy Ashkenas,
DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/> DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
This software consists of voluntary contributions made by many
individuals. For exact contribution history, see the revision history
available at https://github.com/lodash/lodash
The following license applies to all parts of this software except as
documented below:
====
Permission is hereby granted, free of charge, to any person obtaining Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including "Software"), to deal in the Software without restriction, including
@@ -20,3 +30,18 @@ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
====
Copyright and related rights for sample code are waived via CC0. Sample
code is defined as all source code displayed within the prose of the
documentation.
CC0: http://creativecommons.org/publicdomain/zero/1.0/
====
Files located in the node_modules and vendor directories are externally
maintained libraries used by this software which have their own
licenses; we recommend you read them, as their terms may differ from the
terms above.

View File

@@ -1,4 +1,4 @@
# lodash.isnative v3.0.6 # lodash.isnative v3.0.7
The [lodash](https://lodash.com/) method `_.isNative` exported as a [Node.js](https://nodejs.org/) module. The [lodash](https://lodash.com/) method `_.isNative` exported as a [Node.js](https://nodejs.org/) module.
@@ -15,4 +15,4 @@ In Node.js:
var isNative = require('lodash.isnative'); var isNative = require('lodash.isnative');
``` ```
See the [documentation](https://lodash.com/docs#isNative) or [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash.isnative) for more details. See the [documentation](https://lodash.com/docs#isNative) or [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash.isnative) for more details.

View File

@@ -1,17 +1,20 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modularize exports="npm" -o ./` * Build: `lodash modularize exports="npm" -o ./`
* Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/> * Copyright jQuery Foundation and other contributors <https://jquery.org/>
* Released under MIT license <https://lodash.com/license>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright 2009-2016 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Available under MIT license <https://lodash.com/license>
*/ */
/** `Object#toString` result references. */ /** `Object#toString` result references. */
var funcTag = '[object Function]', var funcTag = '[object Function]',
genTag = '[object GeneratorFunction]'; genTag = '[object GeneratorFunction]';
/** Used to match `RegExp` [syntax characters](http://ecma-international.org/ecma-262/6.0/#sec-patterns). */ /**
* Used to match `RegExp`
* [syntax characters](http://ecma-international.org/ecma-262/6.0/#sec-patterns).
*/
var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
/** Used to detect host constructors (Safari). */ /** Used to detect host constructors (Safari). */
@@ -46,7 +49,8 @@ var funcToString = Function.prototype.toString;
var hasOwnProperty = objectProto.hasOwnProperty; var hasOwnProperty = objectProto.hasOwnProperty;
/** /**
* Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring) * Used to resolve the
* [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
* of values. * of values.
*/ */
var objectToString = objectProto.toString; var objectToString = objectProto.toString;
@@ -57,6 +61,25 @@ var reIsNative = RegExp('^' +
.replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
); );
/**
* Converts `func` to its source code.
*
* @private
* @param {Function} func The function to process.
* @returns {string} Returns the source code.
*/
function toSource(func) {
if (func != null) {
try {
return funcToString.call(func);
} catch (e) {}
try {
return (func + '');
} catch (e) {}
}
return '';
}
/** /**
* Checks if `value` is classified as a `Function` object. * Checks if `value` is classified as a `Function` object.
* *
@@ -84,8 +107,9 @@ function isFunction(value) {
} }
/** /**
* Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`. * Checks if `value` is the
* (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) * [language type](http://www.ecma-international.org/ecma-262/6.0/#sec-ecmascript-language-types)
* of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
* *
* @static * @static
* @memberOf _ * @memberOf _
@@ -112,34 +136,6 @@ function isObject(value) {
return !!value && (type == 'object' || type == 'function'); return !!value && (type == 'object' || type == 'function');
} }
/**
* Checks if `value` is object-like. A value is object-like if it's not `null`
* and has a `typeof` result of "object".
*
* @static
* @memberOf _
* @since 4.0.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is object-like, else `false`.
* @example
*
* _.isObjectLike({});
* // => true
*
* _.isObjectLike([1, 2, 3]);
* // => true
*
* _.isObjectLike(_.noop);
* // => false
*
* _.isObjectLike(null);
* // => false
*/
function isObjectLike(value) {
return !!value && typeof value == 'object';
}
/** /**
* Checks if `value` is a native function. * Checks if `value` is a native function.
* *
@@ -159,14 +155,11 @@ function isObjectLike(value) {
* // => false * // => false
*/ */
function isNative(value) { function isNative(value) {
if (value == null) { if (!isObject(value)) {
return false; return false;
} }
if (isFunction(value)) { var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;
return reIsNative.test(funcToString.call(value)); return pattern.test(toSource(value));
}
return isObjectLike(value) &&
(isHostObject(value) ? reIsNative : reIsHostCtor).test(value);
} }
module.exports = isNative; module.exports = isNative;

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash.isnative", "name": "lodash.isnative",
"version": "3.0.6", "version": "3.0.7",
"description": "The lodash method `_.isNative` exported as a module.", "description": "The lodash method `_.isNative` exported as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",
@@ -9,7 +9,7 @@
"author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)", "author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
"contributors": [ "contributors": [
"John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)", "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
"Blaine Bublitz <blaine@iceddev.com> (https://github.com/phated)", "Blaine Bublitz <blaine.bublitz@gmail.com> (https://github.com/phated)",
"Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)" "Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)"
], ],
"repository": "lodash/lodash", "repository": "lodash/lodash",

View File

@@ -1,4 +1,4 @@
# lodash.keys v3.0.6 # lodash.keys v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.keys` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.keys` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var keys = require('lodash.keys'); var keys = require('lodash.keys');
``` ```
See the [documentation](https://lodash.com/docs#keys) or [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash.keys) for more details. See the [documentation](https://lodash.com/docs#keys) or [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash.keys) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -39,6 +39,7 @@ var support = {};
(function(x) { (function(x) {
var Ctor = function() { this.x = x; }, var Ctor = function() { this.x = x; },
args = arguments,
object = { '0': x, 'length': x }, object = { '0': x, 'length': x },
props = []; props = [];
@@ -58,12 +59,48 @@ var support = {};
* @type boolean * @type boolean
*/ */
try { try {
support.nonEnumArgs = !propertyIsEnumerable.call(arguments, 1); support.nonEnumArgs = !propertyIsEnumerable.call(args, 1);
} catch(e) { } catch(e) {
support.nonEnumArgs = true; support.nonEnumArgs = true;
} }
}(1, 0)); }(1, 0));
/**
* The base implementation of `_.property` without support for deep paths.
*
* @private
* @param {string} key The key of the property to get.
* @returns {Function} Returns the new function.
*/
function baseProperty(key) {
return function(object) {
return object == null ? undefined : object[key];
};
}
/**
* Gets the "length" property value of `object`.
*
* **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792)
* that affects Safari on at least iOS 8.1-8.3 ARM64.
*
* @private
* @param {Object} object The object to query.
* @returns {*} Returns the "length" value.
*/
var getLength = baseProperty('length');
/**
* Checks if `value` is array-like.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is array-like, else `false`.
*/
function isArrayLike(value) {
return value != null && isLength(getLength(value));
}
/** /**
* Checks if `value` is a valid array-like index. * Checks if `value` is a valid array-like index.
* *
@@ -174,12 +211,9 @@ function isObject(value) {
* // => ['0', '1'] * // => ['0', '1']
*/ */
var keys = !nativeKeys ? shimKeys : function(object) { var keys = !nativeKeys ? shimKeys : function(object) {
if (object) { var Ctor = object != null && object.constructor;
var Ctor = object.constructor,
length = object.length;
}
if ((typeof Ctor == 'function' && Ctor.prototype === object) || if ((typeof Ctor == 'function' && Ctor.prototype === object) ||
(typeof object != 'function' && isLength(length))) { (typeof object != 'function' && isArrayLike(object))) {
return shimKeys(object); return shimKeys(object);
} }
return isObject(object) ? nativeKeys(object) : []; return isObject(object) ? nativeKeys(object) : [];

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash.keys", "name": "lodash.keys",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs `_.keys` as a module.", "description": "The modern build of lodashs `_.keys` as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",

View File

@@ -1,4 +1,4 @@
# lodash.keysin v3.0.6 # lodash.keysin v3.0.7
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.keysIn` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodashs](https://lodash.com/) `_.keysIn` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var keysIn = require('lodash.keysin'); var keysIn = require('lodash.keysin');
``` ```
See the [documentation](https://lodash.com/docs#keysIn) or [package source](https://github.com/lodash/lodash/blob/3.0.6-npm-packages/lodash.keysin) for more details. See the [documentation](https://lodash.com/docs#keysIn) or [package source](https://github.com/lodash/lodash/blob/3.0.7-npm-packages/lodash.keysin) for more details.

View File

@@ -1,5 +1,5 @@
/** /**
* lodash 3.0.6 (Custom Build) <https://lodash.com/> * lodash 3.0.7 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./` * Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
@@ -15,51 +15,11 @@ var objectProto = Object.prototype;
/** Used to check objects for own properties. */ /** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty; var hasOwnProperty = objectProto.hasOwnProperty;
/** Native method references. */
var propertyIsEnumerable = objectProto.propertyIsEnumerable;
/** /**
* Used as the [maximum length](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer) * Used as the [maximum length](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer)
* of an array-like value. * of an array-like value.
*/ */
var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1; var MAX_SAFE_INTEGER = 9007199254740991;
/**
* An object environment feature flags.
*
* @static
* @memberOf _
* @type Object
*/
var support = {};
(function(x) {
var Ctor = function() { this.x = x; },
args = arguments,
object = { '0': x, 'length': x },
props = [];
Ctor.prototype = { 'valueOf': x, 'y': x };
for (var key in new Ctor) { props.push(key); }
/**
* 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));
/** /**
* Checks if `value` is a valid array-like index. * Checks if `value` is a valid array-like index.
@@ -70,7 +30,7 @@ var support = {};
* @returns {boolean} Returns `true` if `value` is a valid index, else `false`. * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
*/ */
function isIndex(value, length) { function isIndex(value, length) {
value = +value; value = typeof value == 'number' ? value : parseFloat(value);
length = length == null ? MAX_SAFE_INTEGER : length; length = length == null ? MAX_SAFE_INTEGER : length;
return value > -1 && value % 1 == 0 && value < length; return value > -1 && value % 1 == 0 && value < length;
} }
@@ -112,7 +72,7 @@ function isObject(value) {
// Avoid a V8 JIT bug in Chrome 19-20. // Avoid a V8 JIT bug in Chrome 19-20.
// See https://code.google.com/p/v8/issues/detail?id=2291 for more details. // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.
var type = typeof value; var type = typeof value;
return type == 'function' || (!!value && type == 'object'); return !!value && (type == 'object' || type == 'function');
} }
/** /**
@@ -146,7 +106,7 @@ function keysIn(object) {
} }
var length = object.length; var length = object.length;
length = (length && isLength(length) && length = (length && isLength(length) &&
(isArray(object) || (support.nonEnumArgs && isArguments(object))) && length) || 0; (isArray(object) || isArguments(object)) && length) || 0;
var Ctor = object.constructor, var Ctor = object.constructor,
index = -1, index = -1,

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash.keysin", "name": "lodash.keysin",
"version": "3.0.6", "version": "3.0.7",
"description": "The modern build of lodashs `_.keysIn` as a module.", "description": "The modern build of lodashs `_.keysIn` as a module.",
"homepage": "https://lodash.com/", "homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg", "icon": "https://lodash.com/icon.svg",