Bump to v4.3.0.

This commit is contained in:
John-David Dalton
2016-05-12 00:07:57 -07:00
parent ecb20e4c11
commit 607a8b4075
489 changed files with 28858 additions and 13157 deletions

View File

@@ -1,4 +1,4 @@
# lodash.property v4.2.1
# lodash.property v4.3.0
The [lodash](https://lodash.com/) method `_.property` exported as a [Node.js](https://nodejs.org/) module.
@@ -15,4 +15,4 @@ In Node.js:
var property = require('lodash.property');
```
See the [documentation](https://lodash.com/docs#property) or [package source](https://github.com/lodash/lodash/blob/4.2.1-npm-packages/lodash.property) for more details.
See the [documentation](https://lodash.com/docs#property) or [package source](https://github.com/lodash/lodash/blob/4.3.0-npm-packages/lodash.property) for more details.

View File

@@ -1,5 +1,5 @@
/**
* lodash 4.2.1 (Custom Build) <https://lodash.com/>
* lodash (Custom Build) <https://lodash.com/>
* Build: `lodash modularize exports="npm" -o ./`
* Copyright jQuery Foundation and other contributors <https://jquery.org/>
* Released under MIT license <https://lodash.com/license>
@@ -8,6 +8,9 @@
*/
var stringToPath = require('lodash._stringtopath');
/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0;
/** `Object#toString` result references. */
var symbolTag = '[object Symbol]';
@@ -40,7 +43,7 @@ function baseGet(object, path) {
length = path.length;
while (object != null && index < length) {
object = object[path[index++]];
object = object[toKey(path[index++])];
}
return (index && index == length) ? object : undefined;
}
@@ -50,7 +53,7 @@ function baseGet(object, path) {
*
* @private
* @param {string} key The key of the property to get.
* @returns {Function} Returns the new function.
* @returns {Function} Returns the new accessor function.
*/
function baseProperty(key) {
return function(object) {
@@ -63,7 +66,7 @@ function baseProperty(key) {
*
* @private
* @param {Array|string} path The path of the property to get.
* @returns {Function} Returns the new function.
* @returns {Function} Returns the new accessor function.
*/
function basePropertyDeep(path) {
return function(object) {
@@ -91,13 +94,31 @@ function castPath(value) {
* @returns {boolean} Returns `true` if `value` is a property name, else `false`.
*/
function isKey(value, object) {
if (isArray(value)) {
return false;
}
var type = typeof value;
if (type == 'number' || type == 'symbol') {
if (type == 'number' || type == 'symbol' || type == 'boolean' ||
value == null || isSymbol(value)) {
return true;
}
return !isArray(value) &&
(isSymbol(value) || reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
(object != null && value in Object(object)));
return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
(object != null && value in Object(object));
}
/**
* Converts `value` to a string key if it's not a string or symbol.
*
* @private
* @param {*} value The value to inspect.
* @returns {string|symbol} Returns the key.
*/
function toKey(value) {
if (typeof value == 'string' || isSymbol(value)) {
return value;
}
var result = (value + '');
return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
}
/**
@@ -186,7 +207,7 @@ function isSymbol(value) {
* @since 2.4.0
* @category Util
* @param {Array|string} path The path of the property to get.
* @returns {Function} Returns the new function.
* @returns {Function} Returns the new accessor function.
* @example
*
* var objects = [
@@ -201,7 +222,7 @@ function isSymbol(value) {
* // => [1, 2]
*/
function property(path) {
return isKey(path) ? baseProperty(path) : basePropertyDeep(path);
return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
}
module.exports = property;

View File

@@ -1,6 +1,6 @@
{
"name": "lodash.property",
"version": "4.2.1",
"version": "4.3.0",
"description": "The lodash method `_.property` exported as a module.",
"homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg",
@@ -15,6 +15,6 @@
"repository": "lodash/lodash",
"scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" },
"dependencies": {
"lodash._stringtopath": "~4.7.0"
"lodash._stringtopath": "~4.8.0"
}
}