{"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"keywords":["extend","merge","mixin","deep","shallow","clone"],"dist-tags":{"latest":"1.0.0"},"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"description":"extend and merge objects, deep or shallow","readme":"[![Build Status](https://travis-ci.org/selfcontained/deap.svg?branch=master)](https://travis-ci.org/selfcontained/deap)\n[![Coverage Status](https://img.shields.io/coveralls/selfcontained/deap.svg)](https://coveralls.io/r/selfcontained/deap?branch=master)\n\n===\n\n[![browser support](https://ci.testling.com/selfcontained/deap.png)](http://ci.testling.com/selfcontained/deap)\n\ndeap\n====\n\nextend and merge objects, deep or shallow, in javascript\n\n\n### installation\n\n```bash\nnpm install deap\n```\n\n```javascript\nvar deap = require('deap');\n```\n\n### browser usage\n\n**deap** assumes es5, so we recommend using an es5 shim for older browsers.  [Browserify](https://github.com/substack/node-browserify) is also recommended as a means to use this module client-side, but other module loaders for browsers will work with **deap** as well if you shim it.\n\n### available functions\n\n+ deap() and deap.extend() - **deep extend**\n+ deap.merge() - **deep merge**\n+ deap.update() - **deep update**\n+ deap.extendShallow() - **shallow extend**\n+ deap.mergeShallow() - **shallow merge**\n+ deap.updateShallow() - **shallow update**\n+ deap.clone() - **deep clone**\n\n---\n\n### deap() and deap.extend()\n\nDeep extend.  Copy all the properties from one object onto another, cloning objects deeply.\n\nTakes *n* number of arguments, modifies the first argument and returns it.\n\n```javascript\nvar a = { name: 'Joe' };\n\ndeap.extend(a, { age: 26 }); // returns: a => { name: 'Joe', age: 26 }\ndeap.extend({}, someObj); // clone someObj\n```\n\n### deap.merge()\n\nDeep merge.  Copy properties from one object to another, not replacing existing properties.\n\nTakes *n* number of arguments, modifies the first argument and returns it.\n\n```javascript\nvar a = { name: 'Joe', address: { number: 1234 };\ndeap.merge(a, { name: 'Jack', age: 26, phone: '555-555-5555', address: { number: 4321, street: 'University Blvd' });\n// returns: a => { name: 'Joe', age: 26, phone: '555-555-5555', address: { number: 1234, street: 'University Blvd' }}\n```\n\n### deap.update()\n\nDeep update.  Fill an object's existing properties from another object.\n\nTakes *n* number of arguments, modifies the first argument and returns it.\n\n```javascript\nvar a = { name: 'Joe', phone: '' };\ndeap.update(a, { age: 26, phone: '555-555-5555' }); // returns: a => { name: 'Joe', phone: '555-555-5555' }\n```\n\n---\n\n## shallow only\n\nIf you prefer a shallow-only instance of **deap** you can require it specifically\n\n```javascript\nvar deap = require('deap/shallow');\n\ndeap() && deap.extend(); // shallow extend\ndeap.merge(); //shallow merge\ndeap.update(); //shallow update\ndeap.clone(); // deep clone\n```\n\n... the end\n","repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"users":{"ricardobeat":true,"bmharris":true,"schnittstabil":true},"bugs":{"url":"https://github.com/selfcontained/deap/issues"},"license":"MIT","versions":{"0.1.0":{"name":"deap","version":"0.1.0","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"./node_modules/.bin/mocha test/*.test.js"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"BSD","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0"},"_id":"deap@0.1.0","dist":{"shasum":"1b9dd754845f82c19f73eaca60811de8bb2b6795","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-0.1.0.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"}],"directories":{}},"0.1.1":{"name":"deap","version":"0.1.1","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"./node_modules/.bin/mocha test/*.test.js"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"BSD","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0"},"_id":"deap@0.1.1","dist":{"shasum":"4b3f13658e8376af559fedf722aff9820f592e0b","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-0.1.1.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"directories":{}},"0.1.2":{"name":"deap","version":"0.1.2","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"./node_modules/.bin/mocha test/*.test.js"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow","clone"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"BSD","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0"},"testling":{"browsers":["ie/8..latest","firefox/19..latest","chrome/25..latest","safari/latest","iphone/6","ipad/6"],"harness":"mocha-tdd","files":"test/*.test.js"},"_id":"deap@0.1.2","dist":{"shasum":"e3461b3936d4fb28c96c08f984836f790d60e3f2","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-0.1.2.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"directories":{}},"0.2.0":{"name":"deap","version":"0.2.0","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"./node_modules/.bin/mocha test/*.test.js"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow","clone"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"BSD","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0"},"testling":{"browsers":["ie/9..latest","firefox/19..latest","chrome/25..latest","safari/latest","iphone/6","ipad/6","android-browser/latest"],"harness":"mocha-tdd","files":"test/*.test.js"},"_id":"deap@0.2.0","dist":{"shasum":"99baeaa4e33985b1599e5f550a0892927075c948","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-0.2.0.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"directories":{}},"0.2.1":{"name":"deap","version":"0.2.1","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"./node_modules/.bin/mocha test/*.test.js"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow","clone"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"MIT","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0"},"testling":{"browsers":["ie/9..latest","firefox/19..latest","chrome/25..latest","iphone/latest","ipad/latest","android-browser/latest"],"harness":"mocha-tdd","files":"test/*.test.js"},"bugs":{"url":"https://github.com/selfcontained/deap/issues"},"_id":"deap@0.2.1","dist":{"shasum":"22eb51526f41d332f90f198534376396531e9f0b","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-0.2.1.tgz"},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"directories":{}},"0.2.2":{"name":"deap","version":"0.2.2","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"./node_modules/.bin/mocha test/*.test.js"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow","clone"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"MIT","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0"},"testling":{"browsers":["ie/9..latest","firefox/19..latest","chrome/25..latest","iphone/latest","ipad/latest","android-browser/latest"],"harness":"mocha-tdd","files":"test/*.test.js"},"bugs":{"url":"https://github.com/selfcontained/deap/issues"},"_id":"deap@0.2.2","dist":{"shasum":"4eebde1a8adda5baf242613332887ebe5f5b81d9","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-0.2.2.tgz"},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"directories":{}},"1.0.0":{"name":"deap","version":"1.0.0","description":"extend and merge objects, deep or shallow","main":"index.js","scripts":{"test":"mocha test/*.test.js","coverage":"istanbul cover --report html node_modules/.bin/_mocha","coveralls":"istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- && cat ./coverage/lcov.info | coveralls"},"repository":{"type":"git","url":"git://github.com/selfcontained/deap.git"},"keywords":["extend","merge","mixin","deep","shallow","clone"],"author":{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},"contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"license":"MIT","devDependencies":{"mocha":"~1.9.0","chai":"~1.6.0","istanbul":"^0.2.8","coveralls":"^2.10.0"},"testling":{"browsers":["ie/9..latest","firefox/19..latest","chrome/25..latest","iphone/latest","ipad/latest","android-browser/latest"],"harness":"mocha-tdd","files":"test/*.test.js"},"bugs":{"url":"https://github.com/selfcontained/deap/issues"},"homepage":"https://github.com/selfcontained/deap","_id":"deap@1.0.0","dist":{"shasum":"b148bf82430a27699b7483a03eb6b67585bfc888","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/deap/-/deap-1.0.0.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"bmharris","email":"bmharris@gmail.com"},"maintainers":[{"name":"bmharris","email":"bmharris@gmail.com"},{"name":"prestaul","email":"npm.prestaul@spamgourmet.com"}],"directories":{}}},"name":"deap","contributors":[{"name":"Brad Harris","email":"bmharris@gmail.com","url":"http://selfcontained.us"},{"name":"Matt Dunlap","url":"http://github.com/prestaul"}],"time":{"modified":"2014-06-18T19:05:57.418Z","created":"2013-05-08T00:16:35.212Z","0.1.0":"2013-05-08T00:16:36.154Z","0.1.1":"2013-05-08T22:06:04.430Z","0.1.2":"2013-05-10T02:45:01.103Z","0.2.0":"2013-07-25T20:23:41.637Z","0.2.1":"2014-03-21T03:08:24.500Z","0.2.2":"2014-03-21T03:56:11.743Z","1.0.0":"2014-06-18T19:05:57.418Z"},"readmeFilename":"README.md","homepage":"https://github.com/selfcontained/deap"}