assign-deep
Advanced tools
Comparing version 1.0.0 to 1.0.1
17
index.js
@@ -10,4 +10,9 @@ /*! | ||
const toString = Object.prototype.toString; | ||
const assignSymbols = require('assign-symbols'); | ||
const toString = Object.prototype.toString; | ||
const isValidKey = key => { | ||
return key !== '__proto__' && key !== 'constructor' && key !== 'prototype'; | ||
}; | ||
const assign = module.exports = (target, ...args) => { | ||
@@ -20,6 +25,8 @@ let i = 0; | ||
for (const key of Object.keys(args[i])) { | ||
if (isObject(target[key]) && isObject(args[i][key])) { | ||
assign(target[key], args[i][key]); | ||
} else { | ||
target[key] = args[i][key]; | ||
if (isValidKey(key)) { | ||
if (isObject(target[key]) && isObject(args[i][key])) { | ||
assign(target[key], args[i][key]); | ||
} else { | ||
target[key] = args[i][key]; | ||
} | ||
} | ||
@@ -26,0 +33,0 @@ } |
{ | ||
"name": "assign-deep", | ||
"description": "Deeply assign the values of all enumerable-own-properties and symbols from one or more source objects to a target object. Returns the target object.", | ||
"version": "1.0.0", | ||
"version": "1.0.1", | ||
"homepage": "https://github.com/jonschlinkert/assign-deep", | ||
@@ -30,4 +30,4 @@ "author": "Jon Schlinkert (https://github.com/jonschlinkert)", | ||
"devDependencies": { | ||
"gulp-format-md": "^1.0.0", | ||
"mocha": "^5.2.0" | ||
"gulp-format-md": "^2.0.0", | ||
"mocha": "^6.1.4" | ||
}, | ||
@@ -34,0 +34,0 @@ "keywords": [ |
@@ -1,2 +0,2 @@ | ||
# assign-deep [![NPM version](https://img.shields.io/npm/v/assign-deep.svg?style=flat)](https://www.npmjs.com/package/assign-deep) [![NPM monthly downloads](https://img.shields.io/npm/dm/assign-deep.svg?style=flat)](https://npmjs.org/package/assign-deep) [![NPM total downloads](https://img.shields.io/npm/dt/assign-deep.svg?style=flat)](https://npmjs.org/package/assign-deep) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/assign-deep.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/assign-deep) | ||
# assign-deep [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=W8YFZ425KND68) [![NPM version](https://img.shields.io/npm/v/assign-deep.svg?style=flat)](https://www.npmjs.com/package/assign-deep) [![NPM monthly downloads](https://img.shields.io/npm/dm/assign-deep.svg?style=flat)](https://npmjs.org/package/assign-deep) [![NPM total downloads](https://img.shields.io/npm/dt/assign-deep.svg?style=flat)](https://npmjs.org/package/assign-deep) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/assign-deep.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/assign-deep) | ||
@@ -15,2 +15,6 @@ > Deeply assign the values of all enumerable-own-properties and symbols from one or more source objects to a target object. Returns the target object. | ||
## Heads up! | ||
[Please update](https://github.com/update/update) to version 1.0.1 or later, a critical bug was fixed in that version. | ||
## Behavior | ||
@@ -95,3 +99,3 @@ | ||
* [assign-symbols](https://www.npmjs.com/package/assign-symbols): Assign the enumerable es6 Symbol properties from an object (or objects) to the first object… [more](https://github.com/jonschlinkert/assign-symbols) | [homepage](https://github.com/jonschlinkert/assign-symbols "Assign the enumerable es6 Symbol properties from an object (or objects) to the first object passed on the arguments. Can be used as a supplement to other extend, assign or merge methods as a polyfill for the Symbols part of the es6 Object.assign method.") | ||
* [assign-symbols](https://www.npmjs.com/package/assign-symbols): Assign the enumerable es6 Symbol properties from one or more objects to the first object… [more](https://github.com/jonschlinkert/assign-symbols) | [homepage](https://github.com/jonschlinkert/assign-symbols "Assign the enumerable es6 Symbol properties from one or more objects to the first object passed on the arguments. Can be used as a supplement to other extend, assign or merge methods as a polyfill for the Symbols part of the es6 Object.assign method.") | ||
* [extend-shallow](https://www.npmjs.com/package/extend-shallow): Extend an object with the properties of additional objects. node.js/javascript util. | [homepage](https://github.com/jonschlinkert/extend-shallow "Extend an object with the properties of additional objects. node.js/javascript util.") | ||
@@ -103,6 +107,6 @@ * [merge-deep](https://www.npmjs.com/package/merge-deep): Recursively merge values in a javascript object. | [homepage](https://github.com/jonschlinkert/merge-deep "Recursively merge values in a javascript object.") | ||
| **Commits** | **Contributor** | | ||
| --- | --- | | ||
| 27 | [jonschlinkert](https://github.com/jonschlinkert) | | ||
| 14 | [doowb](https://github.com/doowb) | | ||
| **Commits** | **Contributor** | | ||
| --- | --- | | ||
| 31 | [jonschlinkert](https://github.com/jonschlinkert) | | ||
| 14 | [doowb](https://github.com/doowb) | | ||
@@ -113,9 +117,9 @@ ### Author | ||
* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) | ||
* [GitHub Profile](https://github.com/jonschlinkert) | ||
* [Twitter Profile](https://twitter.com/jonschlinkert) | ||
* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) | ||
### License | ||
Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert). | ||
Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). | ||
Released under the [MIT License](LICENSE). | ||
@@ -125,2 +129,2 @@ | ||
_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on August 07, 2018._ | ||
_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on June 19, 2019._ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Deprecated
MaintenanceThe maintainer of the package marked it as deprecated. This could indicate that a single version should not be used, or that the package is no longer maintained and any new vulnerabilities will not be fixed.
Found 1 instance in 1 package
9895
38
0
125