{"_id":"getsetdeep","_rev":"103-6af8f644d41227089e5633eefd8f4d62","name":"getsetdeep","description":"Get and set nested variables of an object, includes support for Backbone Models","dist-tags":{"latest":"5.6.0","next":"5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a"},"versions":{"2.0.0":{"name":"getsetdeep","version":"2.0.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"http://github.com/bevry/getsetdeep.git"},"engines":{"node":">=0.4"},"dependencies":{"typechecker":"~2.0.1"},"devDependencies":{"coffee-script":"~1.6.2","joe":"~1.1.2"},"directories":{"lib":"./out/lib"},"scripts":{"test":"node ./out/test/getsetdeep-test.js"},"main":"./out/lib/getsetdeep.js","_id":"getsetdeep@2.0.0","dist":{"shasum":"f13384fe656d0a3f41c214cbdf31001a57c12492","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-2.0.0.tgz","integrity":"sha512-tC4ROuyPTxnO8UALLADoDTWQMP4XbIeIUjVw0KmbuUlL8WjUeyDvGPnKFKyz1r4hw3JymD9dSc/gTdc0vLZs3w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEEwzvKBzBYPY7OQ8ssQmcQHQz2XXuziwq+CPoUkJRc+AiBqe1iLa9fKYha+6mSf6LAcnVr8o6HHXFK5uE5UHIuOPA=="}]},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"balupton","email":"b@lupton.cc"}},"2.1.0":{"name":"getsetdeep","version":"2.1.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"http://github.com/bevry/getsetdeep.git"},"engines":{"node":">=0.4"},"dependencies":{"typechecker":"~2.0.1"},"devDependencies":{"backbone":"~1.0.0","chai":"~1.5.0","coffee-script":"~1.6.2","joe":"~1.2.0","joe-reporter-console":"~1.2.1"},"directories":{"lib":"./out/lib"},"scripts":{"test":"node ./out/test/getsetdeep-test.js"},"main":"./out/lib/getsetdeep.js","_id":"getsetdeep@2.1.0","dist":{"shasum":"2bb36502fcce860c7b89bf0f1d612027d47c1116","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-2.1.0.tgz","integrity":"sha512-GdtnqKba6angC7Lyjbr88H1eKj8CFBtip+lY2ZmyKSCk6TYqFmx6UxKMupN4VpEhrs7On6yQzpYJlYXcp0vcBA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6hLzkzGN9a2fbNjWSmgem3r2xAIaC74jGyrM42qRCjwIhAKBw2axfSkKH41fcvm2V27o2MMFvTt1ucfj/VfqohK0a"}]},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"balupton","email":"b@lupton.cc"}},"3.0.0":{"name":"getsetdeep","version":"3.0.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","opencollective","gratipay","flattr","paypal","bitcoin","wishlist","---","slackin"],"config":{"patreonUsername":"bevry","opencollectiveUsername":"bevry","gratipayUsername":"bevry","flattrUsername":"balupton","paypalURL":"https://bevry.me/paypal","bitcoinURL":"https://bevry.me/bitcoin","wishlistURL":"https://bevry.me/wishlist","slackinURL":"https://slack.bevry.me"}},"author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"us@bevry.me","name":"bevryme"},{"email":"b@lupton.cc","name":"balupton"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=0.8"},"editions":[{"description":"Source + ESNext + Require","directory":"source","entry":"index.js","syntaxes":["javascript","esnext","require"]},{"description":"Babel Compiled + ES2015 + Require","directory":"es2015","entry":"index.js","syntaxes":["javascript","es2015","require"]}],"main":"index.js","browser":"es2015/index.js","dependencies":{"editions":"^1.3.3","typechecker":"~2.0.1"},"devDependencies":{"assert-helpers":"^4.5.0","babel-cli":"^6.26.0","babel-preset-es2015":"^6.24.1","backbone":"~1.0.0","eslint":"^4.16.0","joe":"^2.0.2","joe-reporter-console":"^2.0.1","projectz":"^1.4.0"},"scripts":{"our:setup":"npm run our:setup:npm","our:setup:npm":"npm install","our:clean":"rm -Rf ./docs ./es2015 ./es5 ./out","our:compile":"npm run our:compile:es2015","our:compile:es2015":"babel ./source --out-dir ./es2015 --presets es2015","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:verify":"npm run our:verify:eslint","our:verify:eslint":"eslint --fix ./source","our:test":"npm run our:verify && npm test","our:release":"npm run our:release:prepare && npm run our:release:check && npm run our:release:tag && npm run our:release:push","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:check":"npm run our:release:check:changelog && npm run our:release:check:dirty","our:release:check:changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check:dirty":"git diff --exit-code","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:release:push":"git push origin master && git push origin --tags","test":"node --harmony ./test.js --joe-reporter=console"},"gitHead":"0cb82ef4fda63008cd16db9dc4474e1022c4b458","_id":"getsetdeep@3.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"bevryme","email":"us@bevry.me"},"dist":{"integrity":"sha512-8A8FcesPTeSBGDSdjxlPwzyom+q/8LQrtKAapURWNZyFN33lY+Hox3vPWyKh+WbQquj0/GNXFI9SNpaloGnSIA==","shasum":"faf78e21dc7f280114f34cf66871c660c772702f","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHGFuEXc2CmoMGLvDUWOnTuwlGca9ZZ19BL3KcYhJCB3AiBQu10bqM7nfThQt50zw0MTcMRj6UPv45CkAXI1wozNkA=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep-3.0.0.tgz_1516950075402_0.7212710410822183"},"directories":{}},"3.1.0":{"name":"getsetdeep","version":"3.1.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","thanksapp","boostlab","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist"}},"author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 11 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.7.0"},"devDependencies":{"@babel/cli":"^7.6.0","@babel/core":"^7.6.0","@babel/plugin-proposal-object-rest-spread":"^7.5.5","@babel/preset-env":"^7.6.0","assert-helpers":"^4.9.6","backbone":"~1.4.0","eslint":"^6.3.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.2.0","eslint-plugin-prettier":"^3.1.0","kava":"^3.1.0","prettier":"^1.18.2","projectz":"^1.7.4","valid-directory":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"287a8ee8a5eaeed217641b88966f3ccc8209dcc1","_id":"getsetdeep@3.1.0","_nodeVersion":"12.10.0","_npmVersion":"6.10.3","dist":{"integrity":"sha512-uS7VvBgy/3fl1H8GJPjBt6nmv4kFfXbnuA5daBPldlIpfXI3wtDJnnaVup9taGdzH7OkfsBkMfEa7pdnTYZWiA==","shasum":"13484d9f5822ad0283f7a2a167bc93c776ebe64e","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.1.0.tgz","fileCount":6,"unpackedSize":21199,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdd6uaCRA9TVsSAnZWagAA1LYP/0noNIkc0CY6AqgSdq2E\n1xwisaE/VLKOwbdaftUtPkqXTxNspOP2zXXIhKARsF4xTEKYH+elyyisIXvw\nBaHfZJ3IxN0TjqWgdfhCUVsd1xgm5t6y8V2g2c1Lt6u7M8HGvw86bsHznK3T\ne5fji4wA1WPMbfPMV6ir3fPUyd3IS7dPwE97xI0IPHQLtdYiBP1xsfSgdEd5\nvbE6CpsbWRUopq8Swqn+d0kUA6a0ikJzkwls3F3ztLYgVYL5wsFWe3yUP8Od\n23y9TC2c2EtbmOPn7pgnGJUS2fIPpgsb4HAbvFUvVbKlqk9oNFS6QYKkCbyQ\nlF1pVoP3PcsZlqzO0ibnDIrsVV68eoZ3ogbJGwbr4rNq7fp1OyFlLFO7wxwu\nQPwmrUFClZn7S4Ps6dqXyotKXttbAz43S9RVv5oXNE/7rvy4CchNIexYlAPE\ngODybMPRRuknQfqTYeaEsgnSVLc2qd760B11rvZ5H7jkunJWDdaBQur3hMYC\n7JyvWr/tfheZTAqRuord261QH9R+itcXFS8sb69hnQ2ecPsHGEGWNnvBBXQR\nUz5PB/RC08P6jsiobDxgt/rL8q468C2/tQBM+mzg6kj6VfaJKF2jE+gLJEUQ\nH/x1I5ChDkgvViu5lvQBwBfv+eNUWhE8V6bOIRBMzbdoRGBcagd+8O2j+TKR\nrF01\r\n=CTyu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICvp4nPiEwO/Y/lPHNTIPbPUYgKx7E7TVh0OnkfPyWPWAiAQ1uDZLxY7c1t920QdydGRaY9t5CgjQn076YJOA9/xvg=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.1.0_1568123801554_0.11011793894600519"},"_hasShrinkwrap":false},"3.2.0":{"name":"getsetdeep","version":"3.2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12 || 13","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.9.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"^5.2.1","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.5.0","eslint-plugin-prettier":"^3.1.1","kava":"^3.2.0","prettier":"^1.19.1","projectz":"^1.9.0","valid-directory":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"83d8cb707f6a370bd44935df0113821b7a320b8b","_id":"getsetdeep@3.2.0","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-Lqq+5mCoJvr9N7IqEi/4Nm5G7dhnS1/KIJjfkYGVJGV0Peb7VWMYO8GHZAusBcDBVWeDPr60+3by0CHKVMYfxA==","shasum":"0de60547c92232208a65e3971b5bee8032817998","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.2.0.tgz","fileCount":8,"unpackedSize":20818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdy1VRCRA9TVsSAnZWagAAu5kP+wZqFKmW4QD3ydFxpJfs\nA946OraolCjl32DfQNyOYHw/rTT0lYYwwkYHSR4Nf/94gR6wg6MxiOHN8Gkd\nt4JDnQnY3kcd8HERRcmoA3YtBz+0QqkJHjQwHobODDZi6sMZQQHJMnBJdYWv\naec83dDp8EKgaEIVk3v+aMAHuMzb3KJPG5F5wp+MeBZ3yZP1zJ2lBqZf8scp\ngNkeiRJrQoiPtiUNLTOsH6iROXdC+00MMBCWtSiMfTp/79hb9XkddjqxKWpL\nAkOJvuHQGjelsuL+cU2dujmd+euxyq7U5ylbCA15e3ZUGYsdDAzBEFAefVGh\nvy+k3puuEUSqevLbeiZO3T2oe3KiJMWT1N0yWwzL15OwXmMZpUHALNgiXoU2\nOMjDqZfwtmQtl6cOfnt1UFWFzvrAL8jD2dPQRMzFvcKvpX+572nSIvnHBx2C\nIkzeGL5Y1+7pmGWfGyVPYsu4MI4CA+ej7Z7+AWfP0rVwBV67i1hjnB8IVSUX\nydT4LdtevnmOkk8sACVNtXmKIUYtKZikfFrN3GY/ZfS3m9KiSDX1f6vCVsXv\n6bmVS/jO5vAERtQgD93aHbf2OCukgDRsR+0nBprJvMjdhbnFiCoC4S4LVc4M\npEJgjhOQX8RHXbYd+6VsyziAeOF51wsoqFcsgQwv+UMiFurx5e3PW0nBmkti\nZ9ji\r\n=ELPJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHljoQ/ibq6kQaoe/rJeP2Vm5LqiiIo+qmvQo1d10c4MAiEAsM5FsK7O8UycJEzIIqebcXfnDBC0G6B6vL3Uum9h/oo="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.2.0_1573606736668_0.4419828110945869"},"_hasShrinkwrap":false},"3.2.0-next.1573610869.45439ac111ad6971d702f22530258c20ef509216":{"name":"getsetdeep","version":"3.2.0-next.1573610869.45439ac111ad6971d702f22530258c20ef509216","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12 || 13","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.9.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"^5.2.1","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.5.0","eslint-plugin-prettier":"^3.1.1","kava":"^3.2.0","prettier":"^1.19.1","projectz":"^1.9.0","valid-directory":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"45439ac111ad6971d702f22530258c20ef509216","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.2.0-next.1573610869.45439ac111ad6971d702f22530258c20ef509216","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-pL5YQEriIYwxnf6QhTiA7rxnFUla2hZSf2txXfn232UCJShVcppTOZObA5Sc9/X+rSzPvJ2T0mKuYZOq0Dfs9w==","shasum":"9f77e20c6108ef43f2cd8a7fad18a9b7f5d27876","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.2.0-next.1573610869.45439ac111ad6971d702f22530258c20ef509216.tgz","fileCount":8,"unpackedSize":20875,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdy2V3CRA9TVsSAnZWagAAiUEP/iBoeqNk7pN8RhKES5m5\n7e2f2zqg2lqCFlB25th24fOhf2p3m9xVc8zWOIMbKTSpgLE8gaTTs87o5ptS\nUTCLR+EdcpGSyrXDz5uLYLaBiDLbKI+iwu6a3BLopgrtQH5Qo2fyoyC+aC5Y\nvdlTaWD+yGOJAfODHrvJMg07IfId/PbdpMbCUllMeujxd/pgFlKDsmVk6tOG\noZCe7CqGPHwW2ri6rmy22pFpHvQL+2TsUjqqvEmUJkWiuz+I8tew0UQfJaUg\nfXj8v34oUT6897FmDW5Nih4hULPyfOYEXoM420J5O5Ymgt5ymj0yKklhswG8\n0guBTGH/UdQBuBy3I5NfmeDQG1xGbV7cHoRPzcIRX52EMLrdl/AjRGKml77i\n9QWseWr75Fl+toxkC6DUUHA+jvYfJIuZT9mrDQzzN1oVH4Re3gBNS5QEO78V\nJOTwbXC1WbbOCqbGBOkHP7fz5DF/a6N0cSd4QbDhdtOvzQuBpnjszyItQ2KQ\n+DARUVrmaBYKT0FN7qxY5MOnF1i+0Iae2mgfJz1PFesvS9KopjI0TS+3AERP\nEsuHalJDNEvbJVZ4IJOYZKV5AiCTy9mieOIEjpk39pxHZpGCy8gpWVmkQ0N+\n+GXJncpkiAx0602b/yDjMS/pTGli77W5N7MJ1H427oB9E+/B/pbAQ7Vxogd+\nX32I\r\n=81kv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPMzdqbLMWw5zoMsf4yUIX8Fl6ayfSFfjzsXFJZdcgDQIgHBufIhu0jP8NL0QeJLEg9pXPqQheValQvTsQjnJ0zRk="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.2.0-next.1573610869.45439ac111ad6971d702f22530258c20ef509216_1573610871473_0.6066056859935192"},"_hasShrinkwrap":false},"3.2.0-next.1573687530.b46c5ba4eefd0756c6589badf681369f74db0e21":{"name":"getsetdeep","version":"3.2.0-next.1573687530.b46c5ba4eefd0756c6589badf681369f74db0e21","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12 || 13","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.9.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"^5.2.1","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.5.0","eslint-plugin-prettier":"^3.1.1","kava":"^3.2.0","prettier":"^1.19.1","projectz":"^1.9.0","valid-directory":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"b46c5ba4eefd0756c6589badf681369f74db0e21","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.2.0-next.1573687530.b46c5ba4eefd0756c6589badf681369f74db0e21","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-DnPclpi5lwo5f+yoOfE/jY7YwElqGj/7Qlzl3GV60I6O3hEWzCa6cfkVGjgBUEmKq0bdv6a5yxmezWWL04NBSg==","shasum":"6c790ba2eb0af5ad133ff87b9f475b1e2d5fb254","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.2.0-next.1573687530.b46c5ba4eefd0756c6589badf681369f74db0e21.tgz","fileCount":8,"unpackedSize":20875,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzJDsCRA9TVsSAnZWagAAYwsP/3Mz0RLHv9vgbcunBAnr\nQv0poLX7hY5RwXKg2wr8q9t3zugRtWQWpcmJdz5ltNDaBi38eMs1/nV+CzL/\nni75SF/QzGd4kNJpKOPUdf8Z10OGP30In4udnjj21uyLC5t+8rIJZ9C2lZ7j\nB+DU0Jch+w8BO9M06Fc2eVGFBJ0lceMPfmRyNDLaoQW0vlQYYk1aCL92cSIf\n2s0ef9vfjVfqMD6T7U8AXjXLJDWM7++fOXunhxRZJHFWmIOavJAGYSpYdzpv\ngLCRj8m9Os4zYxOsAwzvtxm5+UIECurMOqf0UIABg6xcoIlW4gznTkCaCFft\nDOqbhwV4h+n/1NeuMXCuc4tpYiYa9qdzPvfo6sehU3eA4pQ/oek4hhGFTwdP\nj5Tqfntn/YisQdPKVz2EAWQKidcFBKIzi71m5JDrhsN3rEEU7FaYr8gIogyV\nuEnJ0D/HageNymZYQf7CGXXp5EXCNxnIw2JqbEnMJrwl5LCWbuFYW0R+VeBX\njwlvr1zA4tTxY0AK+GyeI9llIqFjcQMtA1RNK2arQA8iWDN7YpkQHQyhyWlB\nnHdkWWeYHEeWwHTP1t2yNZC0Tlj7000RSsLs/xlTGu33f3wlktfSNI9Nzdyf\ngUgshK3OKH1AkjvZCNNlKKstrew+uHpbPbu9a3/G7CvNz+BDp4KBO12lcZYl\nMqFM\r\n=aOEs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNtbYTCeZ/peAQjTz7yO1+CcUGJHnVgczn7Jb6qusv9gIgDCD+VQuPqPYiydmoDoMzJxxYETzFXgepNB1yvjy4aN8="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.2.0-next.1573687530.b46c5ba4eefd0756c6589badf681369f74db0e21_1573687531811_0.8619977790419908"},"_hasShrinkwrap":false},"3.2.0-next.1573739143.86daf3605958ff3b50f3ce7658d52f7186f6d97d":{"name":"getsetdeep","version":"3.2.0-next.1573739143.86daf3605958ff3b50f3ce7658d52f7186f6d97d","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12 || 13","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.9.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"^5.2.1","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.5.0","eslint-plugin-prettier":"^3.1.1","kava":"^3.2.0","prettier":"^1.19.1","projectz":"^1.9.0","valid-directory":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"86daf3605958ff3b50f3ce7658d52f7186f6d97d","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.2.0-next.1573739143.86daf3605958ff3b50f3ce7658d52f7186f6d97d","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-tDPl83DrpPXRg1p329UwzfHejl8CZ/LteY0GLIfRuXCvE3nN5ZFo/yACns7a7+ifmj0ByRkLENmt5z5jf47oEQ==","shasum":"fbbf85d8a05a0595252ba5e5c65e3da479c8d3ff","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.2.0-next.1573739143.86daf3605958ff3b50f3ce7658d52f7186f6d97d.tgz","fileCount":8,"unpackedSize":20875,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzVqJCRA9TVsSAnZWagAA0LMP/1125TH5m6QkXZbUIqog\nS+SkdvS7LOvtS1RIOn0arQDhoSzSIjv1T1l9/Zn5thBNIZvvRxbRk/3Wd1Qv\nb0nToW/kwJIQSohiA8aD8pDcxY1DbB5uQ6L5/cRRg0X9QdoVaLaHIkiBPhr1\naPb4Eo132zzsDuVF5Qhe0aBgBAlQb5gZ5faSwm2J8JO7RRUrLv9C8YdrHNEC\nKKzUmCzMdLs859SOELwsADWey6QN0zcUDDjULg11Zvlo98g5S6TuMKbo4CuD\n+QUCDtLAn841Zp8qNx4KtZI5dD7P+d3LAu0Vxr9yFZ4dcmPWw1mkvv0QXp6u\n3VV8/A8p54V8mNElQBD5ZtHTWham8aIU2hJ0DWRyp7IzoLqEGXCtQeSQ2X1I\nxO5zz4JUP1a+bgEdIeGPLgq0dlTSshjstBpCgIrNsDqt089/tXVFIH5KlTJn\nrbXSqgs3I0Dz2qRjFStfcnbLNTfvQ8RgIAz7W9y5u1ueTd9hnPle5ZLLx7xJ\ne+2YWSlHBAlIRfSxs8OGXy2FYa2GOOXp47Zmf8jMnJdoGZa8CvY72HZnQlHh\nBPr2iow4i1euZZaW3VaFPeWoPBSd+dI2OASg39eJRyxyAkAs5cJ1MRtFY1i6\ndOeiFN4m7Ke3hMuNnoGEPGEXCv/R+dibWdcXFBf5ZV2N/HPiq0sDUGi5qX3o\nGRd5\r\n=Tux6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCc40Y/FJiqCcLUAkiIxZxIpBLnKmAEBQoNjA3nHSwoXgIhAPxEHuJMCUHie66qebvZPxU3KFJ2DL0W5vYw/Rq6tEra"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.2.0-next.1573739143.86daf3605958ff3b50f3ce7658d52f7186f6d97d_1573739144811_0.5133800598808531"},"_hasShrinkwrap":false},"3.3.0-next.1574051324.db8d4573c96195db03a46275dc893679c4b5375e":{"name":"getsetdeep","version":"3.3.0-next.1574051324.db8d4573c96195db03a46275dc893679c4b5375e","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.10.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"5.4.0","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.6.0","eslint-plugin-prettier":"^3.1.1","kava":"4.0.0","prettier":"^1.19.1","projectz":"^1.10.0","valid-directory":"^1.1.1"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"db8d4573c96195db03a46275dc893679c4b5375e","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.3.0-next.1574051324.db8d4573c96195db03a46275dc893679c4b5375e","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-WIVDgxDq6Fw5qaf/4HCTkN8Dad86RTxzXZnq5Z+SZ0JxVtnNbEeA8dUHQeIv5GyjC7L8ldYigIr5wMTHu4S8Qg==","shasum":"598180bf5f67518ee4dad64e6e69d67cdc2cd2fa","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.3.0-next.1574051324.db8d4573c96195db03a46275dc893679c4b5375e.tgz","fileCount":8,"unpackedSize":21440,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0h3+CRA9TVsSAnZWagAAJ3UP/1r+qkHgOzag12Hr9rfj\n9l/5a1srb0DkDpBspPkffcXBbw5/nYIsHlsKWsjQlVEGUnHGV9JqrTAo+7p4\nAgXfv9XrX/y+XLY7BVuBbMT1MYkefFSi3FEttJwc6B68oKOlv9z3qL+IwagL\n70BkfcTVjPU0Bc5At7PfnUF4FbDGQXOvxXINxYjqawfxSNZizcGmQ3JImNKj\nM9/st5w8xTT9d28VxLMkQ3t5jM3jYLiRNx58IBISw00TpoN79NpHJV16si6T\nt/xH3aDkFezvAAE8NE5kOqMrOmPyB6fykF9hEZdQ+lXAbS76fmEsQTC6zaWc\nycgAdDOU4tBmkc5WCysAGLe3UylVcVouEhWoWvoY0k+/6agkEWR4gR6SrmdC\nPaGSh9kQdpd881/GhsU7npCQrkymkleRoqi9CiJLoiiBAsok3tUWnhLNGuW0\nj5mEjiiXXwC3p5Ncsy/0Y3PL8GgeJo8NgnsEMDIzXPr04ZZfhmwKmeyaO22g\nkN+dnmQsDtuXfv1esEaAgQHaKr57ZkKhK8P878j4ZWFeYaCf35D0evacS081\ndSJhSfSsacQL9Ed9b58X778X+HZffwo2HQlYohlV0DunxfORLmV1ANJlvACv\nJQsVCccVF6+gKmgW+MLFC49yKoSSiUEW9y561Wu4/RuUBvJoN1HpiDNPXUZa\nz5Gh\r\n=2NWg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGJHboiwnl4yeKFOggMYyJmDybIottwKQAgD2vFofxzDAiEAkoALa0Gj07QqjxhZ3etwymUY8Be6rJaITRAbrcQoIiE="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.3.0-next.1574051324.db8d4573c96195db03a46275dc893679c4b5375e_1574051326495_0.7325989428084017"},"_hasShrinkwrap":false},"3.3.0":{"name":"getsetdeep","version":"3.3.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~4.10.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"5.4.0","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.6.0","eslint-plugin-prettier":"^3.1.1","kava":"4.0.0","prettier":"^1.19.1","projectz":"^1.10.0","valid-directory":"^1.1.1"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"db8d4573c96195db03a46275dc893679c4b5375e","_id":"getsetdeep@3.3.0","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-iG4LjXEXlHYINayW20XW9PpAYi3oOW8X1YCws2saRhcVEgeDKd7Yj2mZBQ9TyUN/WNgkMU5SGrxrKyloTiAJgA==","shasum":"7d2b476946726dfc60ed9b41a539e5e237791aa7","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.3.0.tgz","fileCount":8,"unpackedSize":21383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0h4ZCRA9TVsSAnZWagAAKgUP+wQ4Y8Bj+OAnYwYKNOdV\nntYxFHgEhJN71bpHZZgsXH8YD/jFqLh1EPplmawXgjCsSCE4kJm/qRtugj2T\n5WOg+xgf+HklJ/umQfcACU5OZu8mvmCZkViI+V3KrQZwkPYyx/EyVnOufXf6\nfXFOAmePREjOFr9WpP8UFztBvybRkUt1NNm8+Yop41NOgUfdYoX3Eg7bPbU1\nOV47hQ6z5/1D0BMeRFxOMInkNKigw32BAnu2FsXCBgLuZdJAubCvmjbiwn5h\nz/pASC2fiL9Je8j/i8iu/OupoHF3ysK+LzUoliB+azXcrpRhDqP3FNS2w2sy\ni6t8annYe7T3jd6fh61B+UO395diFXUJH0UBkYk/TEbaQ+oERzOZ6X8ESp5B\nEQ5aiiM1dFGEm+Acg6Ztv+s/lop4FObekmRqUiU0Eqc3tSOhjdM0yqeQyFlR\ngMNqAFS+rISfN4eazYV00kfZ+agMu4+vlmFl6+Vdq0CTIxRW2bT6pUwYDclu\nrxq1KZf0jDgvNodQeTbA23+N5egP3r9mP1fjRl/Z1XZUUM0QCxzfERtsfrbi\npiH1NlNehUWz92gVkT3E6WChKJ0VPDcMkTAdZbfJvnqCpNrsSZUxIEEKfgJS\n5o8hNsuvI5b3XhDB5+QRaus7oAPCLAsuAK1/SLCik6D95qbvO5kwJj+pGmW8\nsTXj\r\n=SDli\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDF0d0TcF6etj8c2wLM0QrbnwMd/sFtALC9Opy2hbv/9gIgEj9VcA+Y3q0LbihucK8Ye3iS4KKHHfqcGLyRPq6u7Vk="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.3.0_1574051353516_0.8317012107330473"},"_hasShrinkwrap":false},"3.3.0-next.1574650550.552efa10749615ac128715b9f149d9f4d4efc8f1":{"name":"getsetdeep","version":"3.3.0-next.1574650550.552efa10749615ac128715b9f149d9f4d4efc8f1","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~5.0.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"5.4.0","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.6.0","eslint-plugin-prettier":"^3.1.1","kava":"4.1.0","prettier":"^1.19.1","projectz":"^1.10.0","valid-directory":"^1.1.1"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"552efa10749615ac128715b9f149d9f4d4efc8f1","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.3.0-next.1574650550.552efa10749615ac128715b9f149d9f4d4efc8f1","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-ELkj3wCjVt7ASGqbjYO5FEt1mrzy8MUQlQq7TuOOOIGvbCQ93i9eM3tQZbuEejs8+F5VgTepmVKHZ99Xt3EQzg==","shasum":"20a35ca10b993866415cc003e239d27a5a7e4b41","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.3.0-next.1574650550.552efa10749615ac128715b9f149d9f4d4efc8f1.tgz","fileCount":8,"unpackedSize":21439,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd20LBCRA9TVsSAnZWagAAPv8P/RRTFKKgCzp6x36LTTd9\nkaPLE/zD4IXzFivbsCYtsmV9n7kL5g8bsS3sewlvmsBqMs1ZluotfrESW3o/\nHDO0Wphx704TunV4Dw2a50pK93rjxTjqp0j5EHUM2aNombSciC+yeWc0m+5m\njRLPzntZrCGmaCCA1eBHF0VcOnDgOohFhvZd+wQ3ngX952uQJPLT9aXui39C\nVN/Qw8mrHwsoaBcd2VKhD9WxJNnmRUTWde49PnFo580nvfY9eP+1uKhMU6Ow\n93Hk4mE369SvQgrhKc9PyfhW+bjWPtv+FfiJ7nfqdlreMufUsSohssDjW0Wm\njyrL7B+Hnl8TYSXLc17oQCzq+REBz2iVEyEh5SgRmQ1SbkZ3Eo7IE0spfbNy\nJOqbIXNxwrdWV53L6jeoRnDEqzJ82eBgTKnMJsiUzNR94friJsVKimIGR6dq\nL5LyuQE6MgOWzjnrpgYm0MmpFPu9qMlJygafSFbTVcBlxL3MncSDN8atyly/\nm9M9tyhVcUmKECkP9iaBX75gS+Cb+UagyovyPfW385TpxxvWCFuMddN3BNzM\njQK6pSGCtpc4o4sQ8CfwkjoVVdXiKt/b2Mf1fIwjtYidpC//aAN811uMshqX\nnn81WNbMMa2Y5Oa2QVJJVJ0SnEWXFKavRa7S/IQ6kR4VgvHMJp94fDKiEPIQ\nWkBM\r\n=3wrQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCx+kAmfy+MNvm7JjfPCZTgZ7TwG4H6w82ePNcmS9wgwAIhAPsXj+pSs6jmN0d3SBuaU4vao/VrFIYQb0FsyE/fZSgK"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.3.0-next.1574650550.552efa10749615ac128715b9f149d9f4d4efc8f1_1574650561263_0.8437779391690072"},"_hasShrinkwrap":false},"3.3.0-next.1574658406.8386684d3007d0385dc38d1992bf4068cfe64eb0":{"name":"getsetdeep","version":"3.3.0-next.1574658406.8386684d3007d0385dc38d1992bf4068cfe64eb0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~5.0.0"},"devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.7.2","@babel/plugin-proposal-object-rest-spread":"^7.6.2","@babel/preset-env":"^7.7.1","assert-helpers":"5.4.0","backbone":"~1.4.0","eslint":"^6.6.0","eslint-config-bevry":"^1.2.1","eslint-config-prettier":"^6.6.0","eslint-plugin-prettier":"^3.1.1","kava":"4.1.0","prettier":"^1.19.1","projectz":"^1.10.0","valid-directory":"^1.1.1"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"8386684d3007d0385dc38d1992bf4068cfe64eb0","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.3.0-next.1574658406.8386684d3007d0385dc38d1992bf4068cfe64eb0","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-WAVkJv916qOFkh8NblDiLKrfNHWH840IL2h1ek9YXig8TgHptPbTCn8ihsj30Gs2BP02NVr9JnLbiZqzrfjLOw==","shasum":"967ba5f75929e73df66dc59ce0fa67613e104bba","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.3.0-next.1574658406.8386684d3007d0385dc38d1992bf4068cfe64eb0.tgz","fileCount":8,"unpackedSize":21439,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd22F5CRA9TVsSAnZWagAAoBkP/RuNtgeibjVsoBpLxSmD\n/PK8NF3oNikZH9CrLtVuREpNQdqtldtItzJPwUlbtL3BVIgta5lR//qDExCL\nOp5ehntd+LJ2XB2KzS0jOqvjfCXgSCiFUGpM6ieZ+yJZ7/f/JYAC1n8p3xUT\na0DanZWzavhvWyLaI53dGxBYLYb12rMpTATcWKRpg58l7poU00eYH9KOOUwu\nlzhm0fx5MvrW9+jekcmBix29qFWjO8Xv1YRRWY7iBc8fNLGEnL/Fe9JqUjc6\n6nl6VtiLjwpGS/UA2yc7oKlJFn21sLbK1p67CUgmLW45X2CMy8FIY0WKKo7w\nw3bQ2O4pbiJ9Bfhn7+OmzByW02UYRxg8GD+zfOqbQR3rIIN/BP+DK8GhOf9C\n5QfuFIXdomjg3myqHhJmhl9acYfepbGyU4Rf95AFhStVQ3oOZNjSdTOhct3+\nUN7qsSLW45gpyYJB/iE16Mrd1dmFXKMZUSGP+PN3ERcpR3/LQUsQNE1FXry7\nTuGaEMMUc6e6sogTwQ60S0xXRjur0C8gWvAz4iMjyRzaoTxtKOvjP+gGfB80\nFIfJagI2GbMultbYNw32j0BGX4NFFoCf9PamNA4umMpJb7zdk78j3ZlQpFMX\nCiWI0bhO6EXHV5EcXnAbNKLFOfVa5ru3fepMCDjZLGwJOtA2E7ghYNRY6Kph\nzlQl\r\n=ibto\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClfEU9Y1awkK/Kokl9vOh2LYaqilwY7q21L4evCvRBXQIhAKc66V6aAA0NGZYE8WgNMdMl4xQ5wGp2zkfFwkDfnNC1"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.3.0-next.1574658406.8386684d3007d0385dc38d1992bf4068cfe64eb0_1574658424956_0.7159987585087995"},"_hasShrinkwrap":false},"3.4.0-next.1575149098.ccce6358cd4dab945424c3b0bec293cc4613b917":{"name":"getsetdeep","version":"3.4.0-next.1575149098.ccce6358cd4dab945424c3b0bec293cc4613b917","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~5.0.0"},"devDependencies":{"@babel/cli":"^7.7.4","@babel/core":"^7.7.4","@babel/plugin-proposal-object-rest-spread":"^7.7.4","@babel/preset-env":"^7.7.4","assert-helpers":"^5.6.0","backbone":"~1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.1.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","kava":"^4.1.0","prettier":"^1.19.1","projectz":"^1.12.0","valid-directory":"^1.3.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"ccce6358cd4dab945424c3b0bec293cc4613b917","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.4.0-next.1575149098.ccce6358cd4dab945424c3b0bec293cc4613b917","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-pz7q6QN6UfeHUGwYYlY/+s3lZ1BllCsr6hNyIwKcQaqxvzwvJP+pOQt0rx234mcN7CD4NeXOJVm0u9gjQXGO9Q==","shasum":"b0c8c49d7ef115fbe1b177d8bb0a0a61745127e8","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.4.0-next.1575149098.ccce6358cd4dab945424c3b0bec293cc4613b917.tgz","fileCount":8,"unpackedSize":21643,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4t4sCRA9TVsSAnZWagAAXYcP/ikUBj2XVW7NVeS8w+cH\nipc1odZs+ryy/5v65l133dHStHMpl2vg50rZJcYoIqApj8H2f1qbeFJito5P\nEt5708SRFRlV/FCdL5f1Af9F0dKK7QTKZV20tH0yvS7oSOz82iQnYOMJ4ju0\nIm5sQxZ3AZwz6QibIwyx3n9n9YBDgjSE7IRI3kWa4vLuPSTj9tgE+Egf8S8d\nD2bxPjE1COgQWK7aYBOWCrwVmy0uhqf2W5Kvc1BCy6TUSpoWY3TiB/x3b3hy\nE6w4/erx5PFME+F1Swl3bgQa0d20q6SI1RpGXkH9RLBPt5woTPlsyk5zYWpv\nHyR7ZTK3qWjIYPVS6VKoYVjNFJiEZlMLJNLccScf11XGbdjZP+RtfEigiQ+6\nnAMjhYxJuQk+GaGhhLrQgAnLRdQdVgM7Yc9eCstN0eMrMzAWGdkCIhtg5TcA\nb8+ACRLOZoXJHTc4LTPWUs7I9dijZrNUR1CowcpDQQ6oVrI8syedwtjWuQzC\nv8lg5QXtYmLwkM2CdZWt/Mb2aMZSyXXc4k3PUvwOAoMrfmNEqx+rA+MfEUBg\nvDQYk6TTzBybhoxiq8obGPyRQW5FLi7y1Q9qeyGk46caAR7aAIurzA841KV+\nf0+tsvAfvVvnvPPtRIlTgJeZPct5MWUU8uka58LRcG9wVRfBbCjfuFF76cUk\nG1cq\r\n=RsdK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCy4AP99mCB+Er+W42CQbUa5hVGr1VW1HbRcMY9K86rOgIhAKq1vGlSsYhKTFayBFWUSTKndoVbuG0UQBlk34Hn86lP"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.4.0-next.1575149098.ccce6358cd4dab945424c3b0bec293cc4613b917_1575149100224_0.8678568030837599"},"_hasShrinkwrap":false},"3.4.0":{"name":"getsetdeep","version":"3.4.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~5.0.0"},"devDependencies":{"@babel/cli":"^7.7.4","@babel/core":"^7.7.4","@babel/plugin-proposal-object-rest-spread":"^7.7.4","@babel/preset-env":"^7.7.4","assert-helpers":"^5.6.0","backbone":"~1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.1.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","kava":"^4.1.0","prettier":"^1.19.1","projectz":"^1.12.0","valid-directory":"^1.3.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"ccce6358cd4dab945424c3b0bec293cc4613b917","_id":"getsetdeep@3.4.0","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-mu7WZUjL8Qw3LzF1V0guhPyGbD+4beel8+Z03/VOUeAeNvboDwfWI93F3xLDn+pYLJRuT7i81vPiRx++tyJWHQ==","shasum":"e8f2293897f5b308092b9a0da0b8d27d82c15eca","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.4.0.tgz","fileCount":8,"unpackedSize":21586,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4t5wCRA9TVsSAnZWagAAA80P/AslTKsO9P68RtPGgyi/\nM0iHu/sL3ErvRLc4BSGp9SN8eUmInUd+lBKpqg+zV9Jy62sH1C8Yu/86n2kb\nneitvYvc77fFUYpHXxi7vfE2cS8xbEkdOVvB/ORgh3wUK2OtYcdf56h0Gy3J\n0GycLM/QEhNMwyCT9E8qq8wOldvijjyGPJzUdburg9oWUyYddEkA/BBUo7t1\nWNXQGnxoB5/41Mcjzj+RTBn7WASpu+qBuybE8V6lx1nWqwyAPhiU5plumhLd\nKjL2yddQob0tB6QHcHOEwQ577SGE198Hz9qzDPMxx1Hi/LotgLjU2Fi9jGbU\nFA2cISwDeeC3CZAcTNLnPqmrAMxaBbnEPhAB5HianP6tFInZSunHgT4oFVXe\nsxpJSHB+AkAKc4gPpqsoHbx0UGIbOXvfwTzRhc+355nJj+RaroCoEKBZ0OZY\n6ADmPRoMDS9qLqN3UDCPVwmgP7DAzREye/1c2xASJMazrorVOKcx2/YFzzIq\n9ZsZzH9ntD4QQrVPOlA9tvbZgwe/lBL4fIcYwPdh4lW8kRyHZa1pX1fPzTyN\nbVcIJz54aB8Y7yb0+FTrNOP6q773JF+GJ87uptAYdPJ7VZLu3VuW5f8P38iY\n2VDRUqbI8w0hb3a0S6IuVymVERzizoVWHTWcQqkgRpYK9MDtlq4BicT1HsWY\n7brH\r\n=7NZ+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHvHc4wfGylGOHgnTeR92I6tisPLl/F9i2I+ehQmviNtAiEArCtMeEo+NZ/AIbPskELSb9yoAxo1WODBU/WMNHgb87A="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.4.0_1575149167672_0.4213948599450341"},"_hasShrinkwrap":false},"3.5.0-next.1575176034.e0480089976bc92e70f8d5cb7c6c7155de85c829":{"name":"getsetdeep","version":"3.5.0-next.1575176034.e0480089976bc92e70f8d5cb7c6c7155de85c829","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~5.1.0"},"devDependencies":{"@babel/cli":"^7.7.4","@babel/core":"^7.7.4","@babel/plugin-proposal-object-rest-spread":"^7.7.4","@babel/preset-env":"^7.7.4","assert-helpers":"^5.7.0","backbone":"~1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.2.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","kava":"^4.2.0","prettier":"^1.19.1","projectz":"^1.13.0","valid-directory":"^1.4.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"e0480089976bc92e70f8d5cb7c6c7155de85c829","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.5.0-next.1575176034.e0480089976bc92e70f8d5cb7c6c7155de85c829","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-mW+a0+DtS1zytbwK5LMBcYDEd4Do46ulocb0q5UerZsl7NF43lKAVCKLLwimElheXFaV0In2kaqsJ46DLGLWEA==","shasum":"5fb957c2acd59e7df5606a25b9ce3db74ef57bd8","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.5.0-next.1575176034.e0480089976bc92e70f8d5cb7c6c7155de85c829.tgz","fileCount":8,"unpackedSize":21848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd40dkCRA9TVsSAnZWagAAiWsP/RgXnMfCm8WoEon5yZbb\nFQSa4kzxMsK/zB+uFTGAyfgfYVPPrey8uwq0Icz8ufQ29Btf5J9uUEuI4VDW\nF3a7ij32Lii5z+PyWHIMb+n/YvWdEpU92Rq85snu03U/h1lZxnaAESbhcPVj\nVYk9aIhZGIxxM9hgTrvjfyMd3S4jj24TuDao+oFE5Qo70U00gD26Zj3FAEWf\n7WuoH6vqUUVNjmqMoXtnMDa7BnRtZfGcwm6UwLH6nutnBaLYfCUMDKUooSJQ\n8Ts/S2UR9xq5mHhohD/3WcE10zxDZtC4M5dkeWDsl6vo2Xj6VCS4Gd8j67cb\nHjEufC+7rhw8iK/nhkubDKESxowtvK9Cj/0tfCBtTEXYLQfs7ulY35pjSs67\n0ZnX47R5wm0wCoEhsKrjQPDIGvT7edaVZjMtDSyakYSkWCytptQTckVKZ9Am\nId5wee7uuJ27eZueWzTMjQC6GhUQJ/wBqPJpIM4AW7KtogjSZI6CWRkeoyUL\nM6dd/3BvTCa7jsbxg2xCiMy0By3zAD5sZH81gbnXbkuuLbF3afeBxMmu8TnJ\n/xpIw/Mvj0b1gy+jzwYArh/apyu7Gt5Zgnzq8WGhUYEhvXmVZdBXcgUnWtyd\nWoOb69IXUkc4aXo1H+4oFoHkIMlvF0rHuW8Sm8tWe0wezXERscypI74zTpCU\ndZ0L\r\n=SSw7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD94SO6jzeRTTKSK6AMps2cJ8vzOhzsVR0/tMO8SxCsiAIgeKEiZRnnz9Fa+Znu5sepAr7rfo8NG6dGbgt3jpV8D48="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.5.0-next.1575176034.e0480089976bc92e70f8d5cb7c6c7155de85c829_1575176035738_0.633289402296384"},"_hasShrinkwrap":false},"3.5.0":{"name":"getsetdeep","version":"3.5.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~5.1.0"},"devDependencies":{"@babel/cli":"^7.7.4","@babel/core":"^7.7.4","@babel/plugin-proposal-object-rest-spread":"^7.7.4","@babel/preset-env":"^7.7.4","assert-helpers":"^5.7.0","backbone":"~1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.2.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","kava":"^4.2.0","prettier":"^1.19.1","projectz":"^1.13.0","valid-directory":"^1.4.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":"commonjs"}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"e0480089976bc92e70f8d5cb7c6c7155de85c829","_id":"getsetdeep@3.5.0","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-SUx/P2Id+b3Qgq9MAZ+zcy8wnjfrQepT8zSwnNacy3rVmGAvvAclcmie1oiCHh7UlOywgw6Y2FsDobxjhVR51A==","shasum":"577c7debf44144fb07c75d5743d213efe116d2c8","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.5.0.tgz","fileCount":8,"unpackedSize":21791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd40erCRA9TVsSAnZWagAA8YAP/37EfYkuWy6kj13bfnD3\nk2OZdMtKXUWIaIdRwal+/zPbVBfw9RsvGDo0ujxrEZ5eAlP8iEI6b42Y6Ugq\nU2LKWjY0COgGj37vxoE/SgpthmCXnXaZI3QK0ImJPAUdFAzDu8csp9Bwt/Ql\nqTdKCk6cwZsA4mH/oVyWM1CU6ncGXXBhKXkDlsVlCqPpWdu0xTGlYuMgMUfQ\n3fy2BIt9xdB4hD8P0FRgRabRRmd48zHeCq41OuFtcr/hNbAd/m73HGAzXJal\nMRfau7ZXrOfgUumNiQIJ2uPAJPJ2X1OoUgW7zvBGVFDw0U+8KAo/xX80ltZB\nsggSJGtZLFp8T/d+zZdq0LhDTka6KnMjmr2mcen+nYEXk14nGUaVJoppOri9\nY3Om6+vkGbDxP14s/+34fsB5PBEfTMtIFSWu9h9+Ll+opWR3HOGs0VO4LMGG\n32aSDSbQKYfxbKNzw/hPm/COc8bsiVB4tbYhidTtSkdjL+/ZXNAT8kQ1yf8u\nTVRSbk7KaSoPBUFeEgPEfWXIW0JcKG1kSHGBiy1rmcM/7DH2yFOQxPHMOxyX\nzS4p2rMWJUpt3p3P+z2zuFRIhPG32uDi5BcWprx7mjw8P0JLX4wFtWF76D7r\nKtRuOeln+rZdcU37Qe7miHjoMR74cJRFv7uBeFCj0olo8vK8Zs+CtuLHdDoJ\n1f6j\r\n=4u1Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbv6s96Y750FTGPDOsqvr+J9tMuqYwTf+5++lJBspq6wIgOuMos9I6Ds9ZKU20htiN/UtQzB4U3bt7fXc3jxJoqC0="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.5.0_1575176106557_0.7941405320751032"},"_hasShrinkwrap":false},"3.6.0":{"name":"getsetdeep","version":"3.6.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"type":"commonjs","main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~6.2.0"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/plugin-proposal-object-rest-spread":"^7.7.4","@babel/preset-env":"^7.7.6","assert-helpers":"^5.8.0","backbone":"~1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.3.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","kava":"^4.3.0","prettier":"^1.19.1","projectz":"^1.15.0","valid-directory":"^1.5.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":false}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"68eb5a738e880e7fd2f19f6c3257349e06ad9ba1","_id":"getsetdeep@3.6.0","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-fx/WLQOEIZxUUr0u9Gteo8U4PjxLiPKUfO8nPqkrcoH4euAsFRKrXe2MMmaXpo60yWzmXoVpJxeFE60FgbfVpg==","shasum":"034f93cbc88ae3ddb80088152125bbf5595d9a6c","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.6.0.tgz","fileCount":8,"unpackedSize":22628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7g+9CRA9TVsSAnZWagAAfdcQAJAuptg1/0pvPAxzpq07\nK+hpctpOWNAIABg+isIbBhWqB9deEtOM7T2YMBG4ZkFkZ+qf7+rVtkAnZw7s\n8OwGiNa1RbIoWTKvJQqZsQ9kX4a3M06p1xWR7yMYDWlUcm2yITAklrggyvEw\nTm19fknMGMG45glWY/QSsZ2hFiaBJtV2Njqxt9RbaboDORn+T6QxksWnDy0b\n2NfCEuFETpJ8zRsrTojOEWoDs8gKbDVMcVegNLc7Wtm6fbHNKkDwK7kZ7qpt\njagiJwgcKHJvaD4Sz5Mv0TWWY9YtMEW7FTkB2odyqH8z+9Et2PFuephAQc+4\nwNnNdnxV0dI/GZZL2abtwlKGtvALOaIMVbG3GiL9QrBfpTqLKKrw5NmHp3Ip\nnSrRrOAzxJeaGBjxa3jigzOW2nhWFn6FNvU34K6k4GGEWk8GKdkvW75QbQwN\nwOPpP8voK8ET97bwhD3RylqFrZJFyGqmDvmv3s2S2HwcX1OYV5TjPfcM5zeA\njWtBw918MIgaA8dmjZKId6G/SLs5E+sOnfTw9qI3hYa1TQSRELU0lavaMHuy\nmWTrDwtpz9CZbQzM9mG5SyKeExDKEaEnmdhd8M2+TNucgBMqdA4en9qh3cFI\num9hYZXA5JGvRUA0ktir53Ys6V6FjfXkxTTM/WgSNUtLf8udUAxFOGD1SySR\nJjTa\r\n=tdmD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBRfUc+2J/qikGbe5vwC0kJAUkAyc/cOu7YehmerPaoIAiAUUAL2pxNd5r3XsKXB0BxuKiQfU+olYXMFVZJvOAv3tw=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.6.0_1575882685191_0.1481410643808454"},"_hasShrinkwrap":false},"3.6.0-next.1575882740.68eb5a738e880e7fd2f19f6c3257349e06ad9ba1":{"name":"getsetdeep","version":"3.6.0-next.1575882740.68eb5a738e880e7fd2f19f6c3257349e06ad9ba1","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["setDeep","getDeep","set","get","getter","setter","backbone","backbone.js"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"},{"name":"dependabot-preview[bot]","url":"http://github.com/apps/dependabot-preview"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"esnext source code with require for modules","directory":"source","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12","browsers":false}},{"description":"esnext compiled for browsers with require for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","require"],"engines":{"node":false,"browsers":"defaults"}}],"type":"commonjs","main":"source/index.js","browser":"edition-browsers/index.js","dependencies":{"typechecker":"~6.2.0"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/plugin-proposal-object-rest-spread":"^7.7.4","@babel/preset-env":"^7.7.6","assert-helpers":"^5.8.0","backbone":"~1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.3.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","kava":"^4.3.0","prettier":"^1.19.1","projectz":"^1.15.0","valid-directory":"^1.5.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers","our:compile:edition-browsers":"env BABEL_ENV=edition-browsers babel --out-dir ./edition-browsers ./source","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:projectz","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:prettier","our:verify:directory":"npx valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:prettier":"prettier --write ./source/**","test":"node ./source/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"babel":{"env":{"edition-browsers":{"sourceType":"script","presets":[["@babel/preset-env",{"targets":"defaults","modules":false}]],"plugins":["@babel/proposal-object-rest-spread"]}}},"gitHead":"68eb5a738e880e7fd2f19f6c3257349e06ad9ba1","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Require: <code>require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/source/index.js</code></li>\n<li><code>getsetdeep/source/index.js</code> is esnext source code with require for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is esnext compiled for browsers with require for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n## Usage\n\n### Example\n\n```javascript\n// Import\nconst getsetdeep = require('getsetdeep')\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 3\nconsole.log(getsetdeep.setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getsetdeep.getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options: - `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs,opts)`, enabling support for Backbone.js models as well as others\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.6.0-next.1575882740.68eb5a738e880e7fd2f19f6c3257349e06ad9ba1","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-pen8L8h8SRmyr3/PpMg/qLOcqeOISO5xIg+mOK/gbyCvYZ+vIy+oYlSMNmMic55mSC/I0u+99wWG2R5DAt93Ag==","shasum":"ce8e050d2e0d3a6512b2d7b252ee35e38fc123ef","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.6.0-next.1575882740.68eb5a738e880e7fd2f19f6c3257349e06ad9ba1.tgz","fileCount":8,"unpackedSize":22685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7g/2CRA9TVsSAnZWagAAuBMQAJhe8xmZVVku6rGF3dT3\n7w9hcaEAFzIiMlg+fRAP/CX5eV/xwk52i0T1tuwfQgHNuNSDzkzf0wKZcNUn\nHw0CQQt6ZOhQQgYEixkvu9eaCtcYoJBW6oKE7F2YVmzZu0Ehf1Ln3P548U+M\na3cYwCdQOE44nk0dnQ4xd6lXJR0tjH8aTJ4pQJF6PDqcYXMe0+fHFR6Uy+mS\nacjoMZ6LhpKAehdLwpvXHjQBCt+t6kuA8W5gNxcb6wdb/ncTwujTrTK3pa1V\nrb6pkqtXqd/bIkODglnuSt3xiUaT5noWy/tDgd5DYew4fZAwiahUVaAPWTup\nLQ6NLw7+phqO6pK+3BIig6AKW+RLh36nuafeBixSmMKacridkM9VpLPzMABy\nkz+gTR0XNbyvqfApEdSLs5vks5myV6RJVV0GYDf64mf8YOu8D3K2Ea+GVozd\nh2dyohnv82dyr0PoFLWq9B3JJoozC7oyCf2aoqv4UbouDT5zZZDIu+v+lgS5\nahir/H/WdwODR+vCvjNFE+QigV1c+7V8NbPtyH7bIASh3DhsFPccuD4USC1T\nbfh8z/kp14WQn5ZW92chegwWlx6LHrdDoUNM7Wd75UZTtoSdzlvLfCa9Cgou\nzoTsV0zcIHKn1Fe5LfF24qxs12jV7TBJzCVkwSJEMIKryDNb9sWUxaSFCE0O\nt18g\r\n=Ru43\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwwivGMMfmoG/+jyJfLWZTg22znDRJV3N3cYV+uaPGyAIgZyZZ0m7H1Eu7wjXlNIa6j3n3vF/lc5mE9lfpEDiCap8="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.6.0-next.1575882740.68eb5a738e880e7fd2f19f6c3257349e06ad9ba1_1575882742185_0.9116802127187986"},"_hasShrinkwrap":false},"3.7.0-next.1576641801.7067daca54232c7786f96a68cb2a578de64e8ddd":{"name":"getsetdeep","version":"3.7.0-next.1576641801.7067daca54232c7786f96a68cb2a578de64e8ddd","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","get","getDeep","getter","module","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12 || 13","browsers":false}}],"types":"source/index.ts","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^6.3.0"},"devDependencies":{"@types/backbone":"^1.4.1","@typescript-eslint/eslint-plugin":"^2.12.0","@typescript-eslint/parser":"^2.12.0","assert-helpers":"^5.8.0","backbone":"^1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.3.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.2","kava":"^4.4.0","prettier":"^1.19.1","projectz":"^1.19.0","surge":"^0.21.3","typedoc":"^0.15.5","typescript":"^3.7.3","valid-directory":"^1.6.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext","our:compile:edition-browsers":"tsc --module ESNext --target ESNext --outDir ./edition-browsers --project tsconfig.json && test -d edition-browsers/source && ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) || true","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && test -d edition-esnext/source && ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) || true","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:docs && npm run our:meta:projectz","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier && npm run our:verify:typescript","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write ./source/**","our:verify:typescript":"tsc --noEmit --project tsconfig.json","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"gitHead":"7067daca54232c7786f96a68cb2a578de64e8ddd","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3\n        }\n    }\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^3.7.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^3.7.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@3.7.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@3.7.0-next.1576641801.7067daca54232c7786f96a68cb2a578de64e8ddd","_nodeVersion":"12.14.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-T5XEy0rK+dO3FaCvrxqJ5ZootGiX7ahyR8hILPhRpcaV1D2GtLmETt4p5uFxOd9uw3D4dPOu19B6Sl6ZYUqe5Q==","shasum":"cc35f5039906086d8ad0a6418e10faa050b3bece","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.7.0-next.1576641801.7067daca54232c7786f96a68cb2a578de64e8ddd.tgz","fileCount":9,"unpackedSize":28740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+aULCRA9TVsSAnZWagAAtosP/1/uYKB+G8k33XXXOarP\nsqdolXYr0DAxhxlqVKhs7TbHvBI9ezOyeG4Pl0uEnFZzGrUNjSs2Xy/G+oyk\n69HkIxqvCsw9CP7OewI03qDtS9C0etQOEcFNZENtFFZ2sYhD4qUJ8Xtz4EVL\nCY7rIUPXRNnD60ZbGRQABPyPVf7pwQwrnS0RDciCdDNcB2WNxJoxBNadMQde\nrYO8nQu93I3o69EOBFAnY4ZbbF/bNO7PUYhOT0CoNhRCSoQNsQ4pYtE7cX08\nlaUmmsvp/1V75pUg39xyarD1mt16KYWmSgvOYMM7O+K4TUxPwM9kLRc57y5T\nRJLgak6mGE/jk0G0fwIthZBBVWqnqb24xg0x5nc2nkkb4NnGTnxGAu8yss00\ng5UNbBpAYoMmeqF7Wq4syQbuMo8Tue4nmMGYMEZfCBkw6nyrz3aZvFFW2O96\nS1O7N5S8lyWFebyMQ6/ZUBajEt70XB/IWrTzPkZXME+H7nZA3qbDRyaji9e5\nDHLxIZs2CxNwkbRbzWo5c/22grcagPg+QyNWlFtzzmXZep+8WZopvshuh3Yg\nerbQPGvQxG9HUz1XfJNoHTPROf/iuHx3Z9sMCZEubvAv78jzp4LnrKFElI9m\nzrKRFoS0imF31nG7nNjdeLWsVLkIp7dRjyDSjkj5RFzn9GuqbQZVdLOnDNz7\nG343\r\n=Wc8k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkWoQYwTS68ERyKMD4VWFXJZMclwygARdmfInqn3U7WgIgemIIVCsC96idlRnV7AVP2lhGPBpPw/sywHm8kita9zI="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.7.0-next.1576641801.7067daca54232c7786f96a68cb2a578de64e8ddd_1576641802825_0.7480328970894987"},"_hasShrinkwrap":false},"3.7.0":{"name":"getsetdeep","version":"3.7.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","get","getDeep","getter","module","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=8"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"8 || 10 || 12 || 13","browsers":false}}],"types":"source/index.ts","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^6.3.0"},"devDependencies":{"@types/backbone":"^1.4.1","@typescript-eslint/eslint-plugin":"^2.12.0","@typescript-eslint/parser":"^2.12.0","assert-helpers":"^5.8.0","backbone":"^1.4.0","eslint":"^6.7.2","eslint-config-bevry":"^2.3.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.2","kava":"^4.4.0","prettier":"^1.19.1","projectz":"^1.19.0","surge":"^0.21.3","typedoc":"^0.15.5","typescript":"^3.7.3","valid-directory":"^1.6.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext","our:compile:edition-browsers":"tsc --module ESNext --target ESNext --outDir ./edition-browsers --project tsconfig.json && test -d edition-browsers/source && ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) || true","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && test -d edition-esnext/source && ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) || true","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:docs && npm run our:meta:projectz","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier && npm run our:verify:typescript","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write ./source/**","our:verify:typescript":"tsc --noEmit --project tsconfig.json","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"gitHead":"7067daca54232c7786f96a68cb2a578de64e8ddd","_id":"getsetdeep@3.7.0","_nodeVersion":"12.14.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-7AioX9lPqowVASnYENyWS7ylYW6N+XHBIDq/0Ad5cF+YanWTkZg94SPv9NwRC9taiyEqJTitiGqhHKxydgTm1Q==","shasum":"38dc3e9446384dead6e16dc8781c0d3cd3f5b210","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-3.7.0.tgz","fileCount":9,"unpackedSize":28683,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+aVOCRA9TVsSAnZWagAAxK8P/Al7Z5Iy0m4K7x8Z/oc2\n5WPTHZLK5NXGzeN/mSm3AyEmADoeXsTM1/8u/3ZevD4iafND9XyjRUMJiLOE\n6ocrxWgEiglqPp9O24/yoS8GMHYqLprxsi2y2x2m6U9/wteYiqRWYc9eOw8k\nvyfH2vyO+D9jdtxBVEl7aLp61dGCPNfehRS7fXu7OnQcJtyrYI+5WeJLDvbH\n2O4LcvODTImzEeUbCFT0x4Nfz0ISKHbFzhBRlyjPDbmT2aViijnxIJKPbZ5x\nhmQ0mrthdbz/abo1dQwt+EPBQTZw1IWr+V9tlJsutNuAa2Ukbarkk9xwvKTm\nhzk8KLkL/WUPP72rhYwP3ddhJjK2jfOGtfa0ShGbxtYIWJ9nqRJ5U4VFXOMm\n28rx9Pco/SG/zL6GVh0ZUPfuj0theCAF6+PEQlcIz1OG3446C8TLraOq7Vd5\nEpTqGmsCoKXNu0AveroPtftXyb6QyN9TWiSsY3BMi/FfoVxz22uE1DTYjxAT\nbPOhiIAEZ0TfSJBy0gCXVg/oBK2KSIyL/PqbE5lf33pdhy4/bohUbna5c1T+\nuaDa8m76809NUPywTalCUNKCp0pBWGvtVWRocevXZ7Jc5S4DYumAgIRZ7I3X\nPvCk77cNRbr2Wljh34gDy0/JguZzz/vRqeWf4apNVoGZOnZHUmQc0bz00UF+\n6+Sf\r\n=1IAD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAjKlF1Y7bNS26SPmqcYejLiL75ExJVTt7MiG0YS46SUAiEA7+7uYLGdH/4XHMVdNdQQjkoAmrb1pTzMMKl23aYbn8E="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_3.7.0_1576641869955_0.615554373736316"},"_hasShrinkwrap":false},"4.0.0-next.1588742289.1622909b878cc800f70b0ef74acaddc40b2fea3a":{"name":"getsetdeep","version":"4.0.0-next.1588742289.1622909b878cc800f70b0ef74acaddc40b2fea3a","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"source/index.ts","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^6.4.0"},"devDependencies":{"@bevry/update-contributors":"^1.0.1","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.31.0","@typescript-eslint/parser":"^2.31.0","assert-helpers":"^6.2.0","backbone":"^1.4.0","eslint":"^6.8.0","eslint-config-bevry":"^3.4.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^4.4.0","prettier":"^2.0.5","projectz":"^1.19.1","surge":"^0.21.3","typedoc":"^0.17.6","typescript":"^3.8.3","valid-directory":"^1.6.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && test -d edition-browsers/source && ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) || true","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && test -d edition-esnext/source && ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) || true","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"npx @bevry/update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && npx typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"npx projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier && npm run our:verify:typescript","our:verify:directory":"npx valid-directory","our:verify:eslint":"npx eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"npx valid-module","our:verify:prettier":"prettier --write .","our:verify:typescript":"tsc --noEmit --project tsconfig.json","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"gitHead":"1622909b878cc800f70b0ef74acaddc40b2fea3a","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.0.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.0.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.0.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"http://balupton.com\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://seanfridman.com\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"http://github.com/apps/dependabot-preview\">dependabot-preview[bot]</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=dependabot-preview[bot]\" title=\"View the GitHub contributions of dependabot-preview[bot] on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.0.0-next.1588742289.1622909b878cc800f70b0ef74acaddc40b2fea3a","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-gW1onUqcW7paICF+aSPgK4AJmpH0RTvhziyViQq0KJ2f6mX67h6ehDwYWBi59OOvLrhHHZhLfCx3VihDftkciA==","shasum":"bfa653f3c01a147047014b87ebd590202e174698","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.0.0-next.1588742289.1622909b878cc800f70b0ef74acaddc40b2fea3a.tgz","fileCount":9,"unpackedSize":28548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeskiTCRA9TVsSAnZWagAAMnIP/1253QObyOVq0sfduXU1\n5hmY+5kkTu56O2yKAGHfRFcOClS0QBQqKAfdu//7A9kMGrj8wGoQmcHBy0kq\nhPZhUB/aAgLgbPqrYfEMUrUDiM994yh28jyLlzz5E4ndImxwcf2TFvtT8RH1\nygdIXWrK5twm9BO+UD5x18ViAN1W8u0mgavGZoEcBLrabEK4ZFpJRC+zdR09\n5WsCRS9CCKDGaSokItKAd8LfXI8LbylTKMshxP2acIqio5UriejV3IWwNap4\n4gLJakQjLk5TRH9VPc2YUzVogN1pvi2MJAR8X01gkYsCC0n5oSfsnaXlmAWN\nsAO07CluBsqWnRjbd0/t3dfdc5oDUf9F9IipRZd5S4KHoVQonbZngE+b9C+a\nnIoeNTBfXkPdmwQaROetjf0mMcdjxMGlgts0YnPLraBx8z6z6zGf7tDfvZNT\n5HSR2A9Hj3tgafT0f7On+zrX9otcTPyIRpiN1wGI29SIPd+40Pl3o0t4tgsz\nNx9CdcgnRvR5JuFDSBhHYTGkV5CMjjodZO0o/a3gy2K7/HsF3ixvqwJFU6la\nr9YzALTGqt0cEc67ES3QmCKjk3fTzNYXuTTN1f7KW7goEJI/bd/wbTEUfOIS\nCujtf1tV4nKzxfhbffUXxZRSeIQFxUN3BcCJZWEarG6PuMoT8p4Kskm5Fe/O\noM6V\r\n=sPzl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBpgfet1d+leVZB2eYZw21jK8vmffIPyQbconkV7CSa/AiEAg63gg8GSYhnwo/2ycVl1FjQjKXXFl6kxypfzvvS3LIA="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.0.0-next.1588742289.1622909b878cc800f70b0ef74acaddc40b2fea3a_1588742290752_0.2600255748123699"},"_hasShrinkwrap":false},"4.0.0":{"name":"getsetdeep","version":"4.0.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"http://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"http://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"source/index.ts","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^6.4.0"},"devDependencies":{"@bevry/update-contributors":"^1.0.1","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.31.0","@typescript-eslint/parser":"^2.31.0","assert-helpers":"^6.2.0","backbone":"^1.4.0","eslint":"^6.8.0","eslint-config-bevry":"^3.4.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^4.4.0","prettier":"^2.0.5","projectz":"^1.19.1","surge":"^0.21.3","typedoc":"^0.17.6","typescript":"^3.8.3","valid-directory":"^1.6.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && test -d edition-browsers/source && ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) || true","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && test -d edition-esnext/source && ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) || true","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"npx @bevry/update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && npx typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"npx projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier && npm run our:verify:typescript","our:verify:directory":"npx valid-directory","our:verify:eslint":"npx eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"npx valid-module","our:verify:prettier":"prettier --write .","our:verify:typescript":"tsc --noEmit --project tsconfig.json","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"gitHead":"1622909b878cc800f70b0ef74acaddc40b2fea3a","_id":"getsetdeep@4.0.0","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-TvH4sZDOo+mQHBqbthCK4VAVyKFmr9Pyx5Ip0dERaXIDSNFi+9AfKsLHgyJXcm9meDtII4zDz+emo1Q/N8x8Nw==","shasum":"0838a9d31ab0a33ba762e738b6129fa38a5253d0","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.0.0.tgz","fileCount":9,"unpackedSize":28491,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeskjcCRA9TVsSAnZWagAAoSkP/13jgh1m5sAvL9Oek2wf\nKmw59/xmU8uaOV5Rg6X1/NtHfI8xkuEMEhSX1AgugvagGLFbawDbDNtYZ/rd\ncyWCQp6rnEb9fQ27Dn58b5IruVt87iGF3awTjR8U2NNOkdQUJmklJ5+PfqwN\nSn8FsidfCUXuzBUwBaSU34wNzaa0vgm0ARkIAfhrseCy9ahjRzVHXF+RzTAv\nZ/mFtxyeK6SG52HMZzx3/1tYxt95EcsLVRUtylls4JSIdP71OcFLXpZGJWym\n8vNK8DLI7HlT3hSsI3LuLAN3sCXRtPCWlsERqgdJLYFHs3chy91/U6xTOMT0\n1uOfsHWPiGCPR4Cqth0TaQ+4zEFf/SWDIB7ULXf/hMrmsxwbhxtn+0abKvoV\nO21vNek+EdJqil2HVf+u5sl3qf5HbV5c3YTrbzGK0lqQf6pmOoNcmxGCyDpe\nc9QG180R7F96zQ4o/NTUcrtsNzTRXLuUo2hf/Pmsde6S5jmQRYv5jvdAkIS2\nBPabaZ01eTU1t8UbKYNotdch+euO3hK5XDz3dLYGCyST24LaIqKcM8klKeZ7\nyby/JimIL441BfdJZwOozTaJqbDPRmn8zYXyduSzug/T7IqiTPg8Oz35l0+F\n0NHmpJmyw5rOb+JnnVHxG1ljq1DoZJxdTZq3Ef7XdDgKaCCZCZ6/k9gaXqJ1\nk+Zb\r\n=Us84\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC939jACOWoEWMqVe1NkYT+/gMoYRSmJdgZ4Uk1EqbypwIgVo72ipwAHCzIDQZCAgdY1IIKQ3A8IRUkLlPhjbZgKL4="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.0.0_1588742363748_0.05407536763789622"},"_hasShrinkwrap":false},"4.1.0-next.1589990534.63e16f8d64d5fb030aa9d4417f933d13060c1663":{"name":"getsetdeep","version":"4.1.0-next.1589990534.63e16f8d64d5fb030aa9d4417f933d13060c1663","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.0.0"},"devDependencies":{"@bevry/update-contributors":"^1.5.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.34.0","@typescript-eslint/parser":"^2.34.0","assert-helpers":"^6.4.0","backbone":"^1.4.0","eslint":"^7.0.0","eslint-config-bevry":"^3.5.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.0.0","prettier":"^2.0.5","projectz":"^2.1.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.3","valid-directory":"^1.6.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && test -d edition-browsers/source && ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) || true","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && test -d edition-esnext/source && ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) || true","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationDir ./compiled-types/ --declarationMap","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"63e16f8d64d5fb030aa9d4417f933d13060c1663","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.1.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.1.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.1.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.1.0-next.1589990534.63e16f8d64d5fb030aa9d4417f933d13060c1663","_nodeVersion":"14.3.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-eXp6Goui6TCaODX3mdnjGcxsY5gifJpquen5RctscrsVcQ1hnf8RaZsAzBkIvdD5zDCSlvq0+jVPjSA7IjyazQ==","shasum":"3d7b2ee7311422ee90f9dcae8666f8a76b4ca198","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.1.0-next.1589990534.63e16f8d64d5fb030aa9d4417f933d13060c1663.tgz","fileCount":11,"unpackedSize":30146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexVSICRA9TVsSAnZWagAAFRUP/RLL/hWB3+ICsLZII/k2\nAORciQSQMp7FaFfIpr6bJPELxweJDfDr1LLSapujSbUAaENIXAm7aN6RL+LK\n/0MxNFe2pT5wqIG0CUBbi0o6qYsguubfhWQjcLvBPrTOjB6Xa6BnPMLPmdo7\nGrbsnDP1nVb4DxPhgquRZmCcfGCpAD3RRVhmBiutV4iHC1nQECbbvCk915yW\nqsj98S7199Bblu7QSnLZXJ7x8j5rC127mw3XGaX0rMhMPu7XrUuSy8oftQsW\nwPgpi6zkAwEPeiPp2+lXShVLHbJfDM2k4pCgUO+d85EksE/T7vH9LHitocJU\nGiRJ82LvDNPxDkmC2rOoQbJTSrTXZ4M++8bbh01CjPRnJXJbFPLRkTkIeiHr\nrfIUikoWUp7osDzVJT/zLPirv4jTIwcM0OCuO6dKv9USTXQ6msE+hlWji7ow\nil/G34pc7Pe0F2Jswxddf9V9A5RAsnuZLO4BODyZZMkRMA3tcyUpj3stEyiJ\naMcaFaBHh37N1wUQzegvRfDAyLoiQLBtijN68m9kXyffaCNmMRYJO3nMJPkL\nH2R+Lvu2Mjj0OgOcMrfEDUWO7SDFzTH0FnhL114pAiDKRKju23XmPWGAat9+\nCJ+cNMLT2rDqkcQQj65RfKZp/gr5JMEvDaw6RxYyi+zdrxUoNx1/m3sYzyKj\nK76X\r\n=6W0P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICoC0lSdbY81fIq1OJV1wYWXasut01louY2Q0q4Q9N3bAiEAiJJh22MOhWIVPy7y/bhuUAW4gqEc6DETh2QAb854b8w="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.1.0-next.1589990534.63e16f8d64d5fb030aa9d4417f933d13060c1663_1589990535774_0.6304860316556531"},"_hasShrinkwrap":false},"4.1.0":{"name":"getsetdeep","version":"4.1.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.0.0"},"devDependencies":{"@bevry/update-contributors":"^1.5.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.34.0","@typescript-eslint/parser":"^2.34.0","assert-helpers":"^6.4.0","backbone":"^1.4.0","eslint":"^7.0.0","eslint-config-bevry":"^3.5.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.0.0","prettier":"^2.0.5","projectz":"^2.1.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.3","valid-directory":"^1.6.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && test -d edition-browsers/source && ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) || true","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && test -d edition-esnext/source && ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) || true","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationDir ./compiled-types/ --declarationMap","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"63e16f8d64d5fb030aa9d4417f933d13060c1663","_id":"getsetdeep@4.1.0","_nodeVersion":"14.3.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-Lhp6mcsLk8IBiJnoxm1g6MDDQrXfGaOUi8GIkrrQeOYT4NH3PW1hUYJXB7qt+Dmo63uwM98SpQ46MHx307Lxag==","shasum":"9b139cb98214e9798f893e86a819cdc78114b16b","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.1.0.tgz","fileCount":11,"unpackedSize":30089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexVTYCRA9TVsSAnZWagAA9H8QAIZ5l9o4i03WrcrSwy+5\nGgyXGRBNG7UTopbsq4BIVcN/X/j/wNA+d50EHEAoD2sQ5x5XBjpdlKmrN82S\n5gG7S+MAOz8IMB+LryK8lxZayjGBhnBiRPqcqPTUGR7Dgph8Z9nfN3Hi0nwh\nCrtZkXsYKgJCp9nbI+4YS9dGgxdk4E6mR9Mfafzt1foM5YL86EmiEPJM6ZjJ\ncZZMOiMCEYT1vED+CnvQ/5iPfdERxEYlSLJUpNJsnhE1BTgBJBLIYGwyS43a\np1guz+fZbIcbioJM4XYTc3Bql1nPw9Ll+XikdmdbFyW3Vx9VGvKOAFgab8p7\nv/vQdvntz+KjeZrq8ku3XYrzNGER+sgV7AvuVgIA93pAzi01D3EgXH9PtWL4\nK+kwu9TXQcgXa7mhS67OzkK9u0N4lCdLgSV8tOQz74Xl95ctEPocFaKCWboJ\nUP7IKHcjgigFNgqCbIO2tvgfku1xpUqr7diw+8jbY6CkyaUQymChkT2NEToJ\nBp+F4FNWZPnNpH7ggr6MfD7i7oqVG9K59ANYkNuAWn+Uuki55fanXGU5xp1K\nuT4XANih8rt19eD0P1BAdXynlBE44Ei8sWwuiITdKEs3K+4/hwu2vQPaeg7w\nyUrwigAImPdVYojy4ddiKUEkKkeZXQmsRhMilQ2gmzcMw6iqYs5iDfL6UHBz\njmKY\r\n=zRWv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFnBsj4VJpPhEgWwVQR9YYmBCnovj9hZSsj1bf2jKVpNAiArmMX42rExHF0irCi96BbMCOzpLL8zrFQj2s4T31mM5w=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.1.0_1589990615524_0.6867776152884144"},"_hasShrinkwrap":false},"4.2.0-next.1590038987.a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495":{"name":"getsetdeep","version":"4.2.0-next.1590038987.a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.2.0"},"devDependencies":{"@bevry/update-contributors":"^1.6.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.34.0","@typescript-eslint/parser":"^2.34.0","assert-helpers":"^6.5.0","backbone":"^1.4.0","eslint":"^7.0.0","eslint-config-bevry":"^3.6.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.1.0","prettier":"^2.0.5","projectz":"^2.2.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.3","valid-directory":"^2.0.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.2.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.2.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.2.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.2.0-next.1590038987.a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495","_nodeVersion":"14.3.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-79Fm6mZAnGNbiOQScjsTM3iYM+QJXhaOR8XT64GIZEK2VjEi7freeT5jlAI9rIxZuM9+j0hUV5DESbIl2dmMaw==","shasum":"c2105cbdc7bdfd6c42da2e92707e46c62386d464","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.2.0-next.1590038987.a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495.tgz","fileCount":11,"unpackedSize":30477,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexhHMCRA9TVsSAnZWagAAqVEP/itUjOyg/ypgCeeVgvus\n2exTY1Kbu1ZMLRfG6baWBErJf0opcmvs1dfBz/kNx047az1K+Znc1fWpFN1n\ntXaMiRAWMoKf9VryuzKKHXWAAyLT7L6K3v1i5cWNXO21iPuqdCUHJdj52Jen\nHh+eXznoZFXS2ateFpAUVEbg0UpkKZrgd5pYBYbLqoqzis+bk/gI2aWVW3ax\nD4hYNUoCfPD0bl7aFCsKQxcDjDshtaCUXL9bPomvPHryamYyzqexQ5We0MhN\npVV81wYkEVCdIilshZsVdQhEe5YmcWGFUMdx6KLr4+VMgLiNHfzWuIpizYRC\nwnm43R12jPa5J7BffNyNtt35nepBOzmCr6KxWnltvXFmAwClV+D0TAQtz0+J\nbCcLmC/U2xtYXYbvLCXP8Ij2otZXQNgJbw9Fg6EPvX2K8dbzLacf/vxWbTmv\n3IkCpFng6Or3L/mU4IcbtUV8cZiuFtuXPmWt+PIqgnsfBfQ46T5qVIUIVzOm\nPiIj1J63NKEnww9++4tQjv1g9FVnBpPcjs29WPfvuKqDa2ynS7iuwjqVqE15\ne0Pp41np51gbCo4Lb3+8zcCFyS8j2SAWn4luQ4qL13FqKLW/5opj+W5Cw9Nu\niVHj3UVnW+TXxFJoFVHRZHvgelDxWzv/r7tEtHzcYxj5JDuyG5Fx7Mv89Mrz\nBOpu\r\n=tM7E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRrfhKCr9+UB6jkUx+25Ta/ZagxTDDLhGBjFoFlTgG8AIgXy5CyMMRNUZFNpnwbRPvNbtBsKE8G19OxxbYDcI01eI="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.2.0-next.1590038987.a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495_1590038988201_0.8189813479129218"},"_hasShrinkwrap":false},"4.2.0":{"name":"getsetdeep","version":"4.2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.2.0"},"devDependencies":{"@bevry/update-contributors":"^1.6.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.34.0","@typescript-eslint/parser":"^2.34.0","assert-helpers":"^6.5.0","backbone":"^1.4.0","eslint":"^7.0.0","eslint-config-bevry":"^3.6.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.1.0","prettier":"^2.0.5","projectz":"^2.2.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.3","valid-directory":"^2.0.0","valid-module":"^1.0.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495","_id":"getsetdeep@4.2.0","_nodeVersion":"14.3.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-3nlkwC18IURajIKuz/SwBwEkp1DUNWwUfLefZtO4Y+P8o7auanAK+VCNVusNWL8nOUt7GYoH/epa8Ir4tVqieg==","shasum":"d1a83d5644e91503824271564ef3069a44000d1d","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.2.0.tgz","fileCount":11,"unpackedSize":30420,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexhIbCRA9TVsSAnZWagAAKU0QAIU4QDoDkvTW4dfrM9hA\nUZ2q/uWVKYYmMBgFI0I/qwz5+ch9cf72g8Y3t5p5KtNhktZmj1KxHk4XGEiL\nqQBmwye4K4yvV/uZGA2+Uv5AHntC+K3ee6htnQXNg5xQ0Io7kjzWDK5DHmX7\nPpTJiz/e0oJ18Tj2kyOGqJYu9eh5b4Y1dGPAHwY3LY+Px4a4nIZLOmGti/tc\nN8ItDlWiNee6vCV1pwc8FD0OQNQgGvmM34Kl/A/gr9cyYiHVV6t80DDh8wsP\nMilA8R0hrnQKMvMKjDrj7lXEPIago126LfK8TfDwsnAFJkLHPcFyNx1aW95r\n6luYcmCxSYz8K4IgIebTVqXBCL7eEVOHTnR1ivXwr+ewmfNs/0xhPXhTgNuA\noiR8jikRLmTS0Y+pB5EbEZZlEpRPYNeY9s+aUDwoDmUFpDoBAKjoZEUkQIs0\ndwX6dgu5/b14bwwUxePle4+6/9BLv+2FBZNzaMIpJghuFQjfrFcadObUjR0c\nY5+ADGHXGzxTLSwxdFLIeQCVC2Lv20Wqwf38J1d7jjLjtKG9sSSxjS330Ieq\n/qMGW6EG2UYVOx+G+pM5RsOUT+4xuJGw1Xm1RyTLL2b6MOk91QvEfliCadQn\n5GeBscA+/A8z9fy1TjQoZTEAFG54OCWkBb11n1Y82Iyw/cqgUv00xzwzCzIq\npkA5\r\n=ZPeU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBTq2zrr0AeO91gFwhvZb0OsBd69RWGhOl8GGiaHZku7AiBdfBebzFcgUGTxyZwjSXXOQiRqTIjMczsZthHGfBNvEQ=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.2.0_1590039066794_0.21005099957299"},"_hasShrinkwrap":false},"4.3.0-next.1590075564.8bcbbe78ea07d98942d80c7837d76a2ec891cf2c":{"name":"getsetdeep","version":"4.3.0-next.1590075564.8bcbbe78ea07d98942d80c7837d76a2ec891cf2c","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.3.0"},"devDependencies":{"@bevry/update-contributors":"^1.7.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.34.0","@typescript-eslint/parser":"^2.34.0","assert-helpers":"^6.6.0","backbone":"^1.4.0","eslint":"^7.0.0","eslint-config-bevry":"^3.7.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.2.0","prettier":"^2.0.5","projectz":"^2.3.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.3","valid-directory":"^2.1.0","valid-module":"^1.2.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"8bcbbe78ea07d98942d80c7837d76a2ec891cf2c","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.3.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.3.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.3.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.3.0-next.1590075564.8bcbbe78ea07d98942d80c7837d76a2ec891cf2c","_nodeVersion":"14.3.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-9JLz1ZGwIIiAdn+vNMRQ4BNr3fxMPNiVl9uBfjWkzaL2KL55IGYglee36bpdYAwjBDHH1vzNjUwOhTTgCgsqbA==","shasum":"40d0e523376e1072db90e8c6024a8ec507894871","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.3.0-next.1590075564.8bcbbe78ea07d98942d80c7837d76a2ec891cf2c.tgz","fileCount":11,"unpackedSize":30670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexqCtCRA9TVsSAnZWagAAGL4P/3g/8FSDwzbt3VINWOsh\nthVFL/vU59Pc02Ux1Z9RtfoTVHuOxb1itbjrPMxwq6ZeBnkJbt6uOs+C8Pjs\n2PmacMQ3v3zYzA8glMVod7pm5HSzfAcXF9GMSfzegyjtu72pvVJ7P3GS/1Qy\n22h/Pfoh1rQBP9Ei3c4GqWJQU7OEaCnsXKMKvHYDvbQWesgIKW6tz5KtqKhD\n7tMAJfO+hcZR4uas2ejkTlEZediRoRok3xJk29I3Kfw834PCkPZhOApDZ8SV\n3R9S0PiV2GT9xg03ipCSET1uTp1JKnXScyMX7WLZaZNcyDMiPsNs6RFoOpha\nR+kjGOtjrddn4LZxwejG/Ut8czOl9u4vHZTD7nAQFaH80ZXKfrHNo0T8QWcS\nwR9UsQ5KN4KjjHYXt4pG2rEUUmu+rreVOhpB8PfO6gLct89XpGF/CqsSOTmv\ny7b9KtHGAm3/0kch85yM4IopvtMBUt+OqSlNt9Nz1UxttP30VvxKWVqDgfkA\nZIH9mmFOyD89NKv9294eSHIF7euZt5nmtj1gRq61XjPEkSoLGoYA8frVrgSO\nahGs+FobgN7/bBast+9/ZebhERujSU2ulFPkDqT3nj9gHIJ6nlnpjk5BRSZC\nU50fWvxBZlM9WNJn4k6xtuJfCKrsqPKlJ2EwcD8+5pM+7QVw2iNNCQB5FNUC\n7hHW\r\n=el7/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE0d98SAfJPsY+2mHR6EiYkKeio85/9HTx1FSpi/vgluAiBEydJ4XEFLYXB3e1wdfBDqWmbJsuQUyN6y3XEuSq++KA=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.3.0-next.1590075564.8bcbbe78ea07d98942d80c7837d76a2ec891cf2c_1590075565412_0.25572917960301145"},"_hasShrinkwrap":false},"4.3.0":{"name":"getsetdeep","version":"4.3.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.3.0"},"devDependencies":{"@bevry/update-contributors":"^1.7.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^2.34.0","@typescript-eslint/parser":"^2.34.0","assert-helpers":"^6.6.0","backbone":"^1.4.0","eslint":"^7.0.0","eslint-config-bevry":"^3.7.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.2.0","prettier":"^2.0.5","projectz":"^2.3.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.3","valid-directory":"^2.1.0","valid-module":"^1.2.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"8bcbbe78ea07d98942d80c7837d76a2ec891cf2c","_id":"getsetdeep@4.3.0","_nodeVersion":"14.3.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-O2PeoP3CUf2MVCxUj2Q+yurC6LrozFfOew+WbLJSPUhBxIfgxP66IS+JbRcPvZt2wCJWb8gaCK4t7lYr2fYMiQ==","shasum":"b8c805e0e18864289c3f108dbf815ed76f344077","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.3.0.tgz","fileCount":11,"unpackedSize":30613,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexqD+CRA9TVsSAnZWagAA6oAP/A6CGj6/1qwI8+41OBWH\nePGA/LEOUjZ+hsocE8V5VxBK1FL9+KLN3WBHwRQLBVNquOenoML9EXnucYcI\nZp9LYeN/swfgWMByDmb4FFl4f/EZuaQcoKSEkLBZyj8422aoINV6s/MnxoDW\n1uqTjjgxWR0QvyE9bCtdpkIlqgxavdBmd5M1m25pQwZD8xFNmyyDTFuiVgMu\niOGbtqsO04xMCze8Ap7Ca0itjcmFUfSOExn9rJTVndn/k3ChBSNslgU2K8le\n6B+AvQZ2b0DxxZQPYVbqw3F5bb70kwRGUqmmi/OPuxmyIKiLbLNSok2FjS2d\nYEEmuFkpZ0aX6WjPBPNxYvBNW81rgmTRTx0GZJswZv8ZOSS7Hc78rzcbSNFR\n6EPCWUXNpjYMZKnJpyrTb30iKMlH7u6gax39e+Y3fWY62iJX64NHhbiu4ERt\niaZ+BH2B8kGqL0+TOesl3uY5+PDj00CCvD8rVcP4kv/sQVUnTDTvhDj4UoSG\nuYm2fi2rweUBNlTBLbkBkbWYlzMzGK/KSSguqTSWoPy9My1U+mNrfTDG6vQX\nY3saQXA6OXK+15hrCVKAPnacLJYijKQUDxIr1Vt1VyMekXo5n58cgN9BaJMj\nQTj15BRJhI2+4jO4iS5w4GASU+9T05dNCbeLyH0055aSFIw1N0lSAv17reiH\nD1qS\r\n=D5o4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDI5W36GGChVFWlXGQXCa2uQ2K5h3zLyrivvWf7AbOCKwIhAIQ+UiuOxFuCAVFOW9Pm90Ce84FpFWX012VT4WYE2coH"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.3.0_1590075646288_0.19725320103415966"},"_hasShrinkwrap":false},"4.4.0-next.1591779284.03c1f388ce8c9de428d07c39301f4a2fa758159d":{"name":"getsetdeep","version":"4.4.0-next.1591779284.03c1f388ce8c9de428d07c39301f4a2fa758159d","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.4.0"},"devDependencies":{"@bevry/update-contributors":"^1.8.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.2.0","@typescript-eslint/parser":"^3.2.0","assert-helpers":"^6.7.0","backbone":"^1.4.0","eslint":"^7.2.0","eslint-config-bevry":"^3.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.3.0","make-deno-edition":"^0.1.2","prettier":"^2.0.5","projectz":"^2.5.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.2.0","valid-module":"^1.3.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"03c1f388ce8c9de428d07c39301f4a2fa758159d","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.4.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.4.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.4.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.4.0-next.1591779284.03c1f388ce8c9de428d07c39301f4a2fa758159d","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-fY+vNUy1a6SELKRlQUVSzBcw8vmzvgBLAX9lvCYLdOmg1ssv4pZv8aNbOzYnoWid+3jbJ/o8HU+fBkY0lh2GXQ==","shasum":"aed8b30be8657979b561f495f647e86a6a071a80","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.4.0-next.1591779284.03c1f388ce8c9de428d07c39301f4a2fa758159d.tgz","fileCount":11,"unpackedSize":30980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4J/WCRA9TVsSAnZWagAAJDkP+QEBFDRlIeHVPXASFIn/\nG6HVUM/x7+NOlkUkiTBi07n0Cx78D0DNwW2KGC0tlM1D+Mc3I/ScnG6BAwvc\n/NXWpwkgWzOYFNeR5vNsH3M1nl0iDYOvVsOvxkzbSESBuEYvXQZJLMDJqa6O\n380g2pAjcP1LlHTDX6DV7a0gUqTGput4R8PDeshkzTeJIj6nFx4rUsxNOoKh\nWsA+ljX7uXmC7P33O51Ru7gwn1/xpOuqH2OGK50rb81Mc3T2TKJM/8hpX6fR\ncncTCbckH2TNinBXQO+ABMuxBbCv8UdyJXjs6qcZZdjpterGui5CtN1PVWm6\nApIB9+bQO4/0HGYxOABdgHAhBYtV6N6+oO54vd/si1v0wlOq8r6PbJDPFB3T\npM+RDMwkXirW4NnGX1m6pJ95Df+dlsEQ4VYsUAsviEhK1zJuxbNIX8cgSC/v\ncWTDqdMvKtx/Qmcqwow4/W7t43L514tIVcBKmodbLe59IhXySkHGwbC9J8CL\n4ZN4WV/GSG5DEqao0gqVSCxhAuUTCY/iryrvvHfyThmgUbH8+bMzRRMijTn+\nTm/7PU5WXW2idIizmAPCDEd4yX9YtuW4eV5t9pQYisx/O8P5mrKeLbCCgmFa\nDF7Np7qoMN6rhljOBDbYM+w9te/VgGo5rwWPagUBPAn25HegtO7jLEv3qcAD\nHfSy\r\n=VNFI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGKsPMFwI7c33IktceBxdUkRbguO8StbRgzT8+SZhscwAiA55EFS0Wu7RpIN4rnH2Zo4PLTyz//Q3M56ec10cf2Eqw=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.4.0-next.1591779284.03c1f388ce8c9de428d07c39301f4a2fa758159d_1591779285901_0.16796609123407036"},"_hasShrinkwrap":false},"4.4.0":{"name":"getsetdeep","version":"4.4.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.4.0"},"devDependencies":{"@bevry/update-contributors":"^1.8.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.2.0","@typescript-eslint/parser":"^3.2.0","assert-helpers":"^6.7.0","backbone":"^1.4.0","eslint":"^7.2.0","eslint-config-bevry":"^3.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.3.0","make-deno-edition":"^0.1.2","prettier":"^2.0.5","projectz":"^2.5.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.2.0","valid-module":"^1.3.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"03c1f388ce8c9de428d07c39301f4a2fa758159d","_id":"getsetdeep@4.4.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-2MZN+2LHEadGKGSYBXh5Y1u7R1/eFWgkF1STOU7uEmOxQ577R3PBwK15xdeCBV3X2rG1EciI/Z+fUyiNo7h8NA==","shasum":"2dacde9723011bb1e5bc0524f6316e7fc4305e25","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.4.0.tgz","fileCount":11,"unpackedSize":30923,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4KAhCRA9TVsSAnZWagAAKm8P/iTTLzCSGQFHMwXaUL46\ntiBeh7Ov8/2c3GHyvzT6FtYcRHCVmauEz2TfMkTPE10b3293HjWnOwxeUsm1\nA6umW5RfjPGofoErCoo8bnGuKQqiJUIb41lCxOxEprpByf7GMamGsgeJ463e\nPebZFW16KbD4kZw/Lo3sS0co+dIZ2lipxqiIq/WZhdhjJ6VXJyoSy07eMvjm\nBP6rhbA03km3zSDy36ggDWokhQj8fwKypOfFtjP7u1yFivZR0GgKT7ivNu60\nrBm+0r6fCKs3gd3S4DnwLxyr60dKhsi+WGKN9eDEdibfEDKE97pcqXU3AqRE\njDoEhHd/R/EgIj1CJS4/G3nQWxEyGpTT8r4uZH+6rzgz3uMTiqxiirdY9CfP\nQFoPOn33AEYndzec8TVR2roKvrq9uTR7AUydMgLqbWolAcCRj/M61lEs21x4\nj7HhP7Z1SLEa4p+4+c76qREQiFRGBjVoPRYcclvY3HUTeRjAq+jeJGMqSFg7\nAEjdRpg7ewD0/h+3gi47KA4z26ueK0VCZQ7r3p70gtVEqx1FGjbSmgHD/Uuc\nrhE5UjIKDfk3/ahUw61VoZ1duDB7NzFeUshV0LJ6hiC+CepgWB7lIpMCGUpm\n7nJO3eksOAfye3Ef+1F75aiJvWkEQKXm6RHZVx8rUmER9h3sEym9Fy0vY38z\noSeh\r\n=Xc7G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDjbxnATZzqmwgup321X/olkq5pansiV/ifFgdI+xgikAiBtO1/z6+AJJ/Z13KN1a638LifivmPTUxSR5aPKS7+DtA=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.4.0_1591779360834_0.5920724586955972"},"_hasShrinkwrap":false},"4.5.0-next.1591796420.5cc979fe1db33c56266dd39419b852ff70e6627b":{"name":"getsetdeep","version":"4.5.0-next.1591796420.5cc979fe1db33c56266dd39419b852ff70e6627b","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","deno":"edition-deno/index.ts","dependencies":{"typechecker":"^7.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.9.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.2.0","@typescript-eslint/parser":"^3.2.0","assert-helpers":"^6.8.0","backbone":"^1.4.0","eslint":"^7.2.0","eslint-config-bevry":"^3.9.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.4.0","make-deno-edition":"^0.2.2","prettier":"^2.0.5","projectz":"^2.6.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.3.0","valid-module":"^1.4.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"5cc979fe1db33c56266dd39419b852ff70e6627b","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.5.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.5.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.5.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.5.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.5.0-next.1591796420.5cc979fe1db33c56266dd39419b852ff70e6627b","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-3ZWvEVr++h0qYRTWR6O4oehulOix6gmnLsqPEXX7tIk9gJqcvHjrWlUiMU3XRIkIcCUYV0D3B5PqN4ggQjlgRg==","shasum":"a3259018b305be0faa835686eb9da773dba1c645","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.5.0-next.1591796420.5cc979fe1db33c56266dd39419b852ff70e6627b.tgz","fileCount":12,"unpackedSize":34631,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4OLGCRA9TVsSAnZWagAAC/sQAKG/CgiUEW8JrXWJEWvK\nd0TXuT0XlSFZ1Nr4hGlAo6Ysmpa09cIkPVBA0G0Gs7GJR3EkamLJv5sb5Uqk\nh3zHC5BHAmGCjOAV7AJ05+oumAsMddjiuidDvPACa8PZi5kHktWxs3Y3ORBk\ngl7FiVGgLt+cmGjEcPG++w1PWuoeIqIKtQngVDJNwrAG9AFxkEoeVNnMo5rG\nOd5RryYLB6RqooH929SSK4lIK/9ilUDo8EYF/tmyXpswYJTnAtf6MrY3zlcd\nZfFkwmRCJ5VyohLV6c8DINMjiHHEDymi4Oa9vAP4ITnH/mUbPUa7qPUh0OU1\n1jB55h2jDDqkV0u+rmzeM69Z/0jdDexwm837RsU7ZJ13u9JetD1AeOkGfhlu\nxQ29eSDh3BUZ3UcqoM0Bc8wrWvozw1IxkdcXirvoQ9KvROUKTcjuC9kPKsW/\nZ7KHClwTYt+IG7VhTM9GYJuNqCslrnsCW2Bx6oRINgOH/zKh1yVmlfsRydul\nY8q5TKA8JEdsz+iX6nkuxaHPUp6xT8rpzm53raZVA9IIsADtyeiogIiKpt8O\nEtZ2paAqoGqDAAZHcjRTmYho2s99s8Kk3TzJb3NvyBBSWFimA3J8zLbWD04F\nHaNwoMZREF413ifiyWKV710XDa6OlEHA6hjSujN75S9pvm9m6/gLeAJ0wHj6\nobU9\r\n=aEAz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFyGhTZ92IMm9rLkGfHO1FF91mbyejMu7ZzGETdMO+zdAiEAmwILAML/B8bm7evOAzDAuHkYnrEb7++VeTGbzMgxWIk="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.5.0-next.1591796420.5cc979fe1db33c56266dd39419b852ff70e6627b_1591796421998_0.6170673098181179"},"_hasShrinkwrap":false},"4.5.0":{"name":"getsetdeep","version":"4.5.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","deno":"edition-deno/index.ts","dependencies":{"typechecker":"^7.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.9.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.2.0","@typescript-eslint/parser":"^3.2.0","assert-helpers":"^6.8.0","backbone":"^1.4.0","eslint":"^7.2.0","eslint-config-bevry":"^3.9.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","kava":"^5.4.0","make-deno-edition":"^0.2.2","prettier":"^2.0.5","projectz":"^2.6.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.3.0","valid-module":"^1.4.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"5cc979fe1db33c56266dd39419b852ff70e6627b","_id":"getsetdeep@4.5.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-zs7oUdLUuV/UMkG5xE9MaVjF1BmWSe0VC/rWtZRVuyPx7+vWyjxTP8+dMDYZEiDKkXc1pHzKvDyorohbXU4j2w==","shasum":"ff5ef8404908cf7b3cce6e5bb2ce7c4181086969","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.5.0.tgz","fileCount":12,"unpackedSize":34574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4OMSCRA9TVsSAnZWagAAvDEQAKInz89j5CacRKx+uL29\n3TL67CrHKcLPBsdoYal3dtCS6jfnG52aWq+vaYdv5fbG/TNdGP8L0zSapAij\nj17V1IAgn6Ht+n23nVdrpHbKvvjNwZFNDgMWfbFCXf9Yfh3Q5HQwgqUelQNT\n9i+P2gaJ9mOBUkJnXL8rCSYFtxcB5BHvxNUVCm4LcOcgBGcxnadU7UvLOmfS\nPZW8UPRgaq86c7IS+ZsOT/sVcLsX9s9DuID+OQ+8y1BoLYSniivu8CekpBJQ\nFJpt++qr9NCja4a8O94CtyTgOAuoUDEJfHRJQQPHmswxSDGOCvXKvuuSGFg5\nwVnP6/tqJSZGL1CntACZuql/Ic79avq14Psb9yrmz7vZsr+NQWxgwCfcV88e\nvFhrgig/2432OAGDKwBQkWQGhBgmGUE9BARz86PzDy66iYYItldTJcPKIlwU\n8xGKOQ3s6SPPu64QWOjPlsysdxW6z0x/2rrlkN1KAmYhMa1r6enT/IiFR1RB\n3Q+EqVfuUpkLaBKpqIuiK8EwIe1UlqH2aWASyywdvHHSsmE33BlRwAiq5xAR\nez9sC/y3ezApFBOfSidoD8/IEhquLz1OLTttyziF4z7dEFLSGlp6KQ6KlYRY\nyg9eLBtJ3A8mcJZm9fDwmKxPAZcwkM9Q1LyNmjHz5C8EXxBoV6pUTNQP/+ll\n6tSl\r\n=uWxA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnHa10h4q478eFV3YyHjHFksbfbHKBwCt1Qp9aPDPdJgIhAOlfONi19dEKHoF2dvzqmxAxVk3j6P7ye4Kok08LLEct"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.5.0_1591796498076_0.44259034699405686"},"_hasShrinkwrap":false},"4.6.0-next.1592614127.ff32970229ce02303659ef4dc91da1fa34df3165":{"name":"getsetdeep","version":"4.6.0-next.1592614127.ff32970229ce02303659ef4dc91da1fa34df3165","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"@types/backbone":"^1.4.3","backbone":"^1.4.0","typechecker":"^7.6.0","@bevry/update-contributors":"^1.10.0","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"^6.10.0","eslint":"^7.3.0","eslint-config-bevry":"^3.10.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.5.0","make-deno-edition":"^0.8.0","prettier":"^2.0.5","projectz":"^2.7.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.4.0","valid-module":"^1.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.10.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"^6.10.0","backbone":"^1.4.0","eslint":"^7.3.0","eslint-config-bevry":"^3.10.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.5.0","make-deno-edition":"^0.8.0","prettier":"^2.0.5","projectz":"^2.7.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.4.0","valid-module":"^1.5.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"ff32970229ce02303659ef4dc91da1fa34df3165","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.6.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.6.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.6.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.6.0-next.1592614127.ff32970229ce02303659ef4dc91da1fa34df3165","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-wgiu4fYExSuozSKd/dFllUDgcbds/ngMs7wfSevufj75RAVZaZar5rTQAPhQ3nm32ipxrwFRgK57hyAByE4HXw==","shasum":"dc5d5d8fa0640f4e265339685b20b67f8bd2aaab","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.6.0-next.1592614127.ff32970229ce02303659ef4dc91da1fa34df3165.tgz","fileCount":11,"unpackedSize":34218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7VzxCRA9TVsSAnZWagAA3EcP/2tATQufnZRX7wARB4Wb\nj7hnD53pLJY8uTxE/SRHpPP13KhR/cyYy03YVid+eX+jeA1JiVOQMf7txuxB\n91M4b+F+n7TNyl6dBquVeYnJtFRgFlvVMyiZRCDPDm6ufr6e3hFkj9/Q12YG\nyRY1GZU2alTbuQqiooZBbX0WXWboiC4YMpdMghhZsVvdk/MFfS9alG3vGK6e\n24R/zv1d9piqAJ/Kp5NLjbPuL5Dy2ZzW4nEL0I861tU3HW5Th7roZ5Ws58Ne\nHQ+Umc7lD2MHNa78u+uXRoosZ91/R/3na4+G1gkxrfZWKZmfxRSY5w0z1WLg\nLDIgEFabWGEs9QDhyLg7umBVf3P+16nHz0wmLsz9WUR2HTxUsmd98pll+FOr\nL4rA4x8QeQAJzNYpxc2egfrXWbZuapRSd0vyEvbXCct6jd2Qy/xAtlNW00ek\nVl1RKRJZ4z+9Fin6b4iO1GK9fT+VxH2AGzj6pB5dRo6oZ9ovA+Z/J6S3ReRu\nYeIIGQ5o1WEHzhbZ5BAuOeG2tipPE9rIpTVkZw59gSEtB4tBJ5DoZzvKDcF9\nUnLmnqtaXIm4O5aWhGZO1x8M7KVYRPrHbnb7KpK328WhOuldqAj2SWgnu9/O\nRss17105KwDdJea5C8qu52iD6bkb159g7gTDlTA9y7ifhx09EJEUZ/Sj9gYy\nPWPD\r\n=wF9+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBeTG/h4nBYsJCgslrK7kZVuVgbGx1lvFQWrLhj70qD/AiBn6DcIjbmieVMc78nw9j1Z2itvO7MpzrigOLsKL44MbA=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.6.0-next.1592614127.ff32970229ce02303659ef4dc91da1fa34df3165_1592614129102_0.8862195454237949"},"_hasShrinkwrap":false},"4.6.0":{"name":"getsetdeep","version":"4.6.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"@types/backbone":"^1.4.3","backbone":"^1.4.0","typechecker":"^7.6.0","@bevry/update-contributors":"^1.10.0","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"^6.10.0","eslint":"^7.3.0","eslint-config-bevry":"^3.10.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.5.0","make-deno-edition":"^0.8.0","prettier":"^2.0.5","projectz":"^2.7.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.4.0","valid-module":"^1.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.10.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"^6.10.0","backbone":"^1.4.0","eslint":"^7.3.0","eslint-config-bevry":"^3.10.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.5.0","make-deno-edition":"^0.8.0","prettier":"^2.0.5","projectz":"^2.7.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.4.0","valid-module":"^1.5.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"ff32970229ce02303659ef4dc91da1fa34df3165","_id":"getsetdeep@4.6.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-VGNsbd9++bhzqXnn1TN0/EabE3nYnHZRQ/f34Hii4nrxqDF7qc1fss5RSyAiUltuxa+3WsnQAjAljuArGQa8vQ==","shasum":"cb790024fa1275a527b81a15fa2f683f446e1e79","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.6.0.tgz","fileCount":11,"unpackedSize":34161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7V09CRA9TVsSAnZWagAAfkYQAIkFGbgytPJL8uBOAccW\nhZxi+soG72TfEEXiUq5bIWvRNvIjOMFpWIPYE9oF1BTBQrbSZ2s9iwPUPS9t\nMFoLzmf0XOM1J4vTgsQbNBukqVk0/wme0hxc6dJ//tfaoCbG/vsXiP408Mrq\nyvxqCFhYcYLgQIP9yiCrTcl5tugqWmcwn+eAd8cnmwD3vRm9ZPwd0KbLS05E\naPxX8mhylepQ+2ft3peia87QWJk6w8fEUvsKK7gcNLgFZRRUOYEobFg1cgcQ\n1GzARzhQlFKtr8VzbW32CimY2Wb6ujes2FQEzRtadKIk41z+h8yvK3DQqP9q\nWMORSMp1tQ55r4ym/7dtxHePTsaPvDA9QIZWr2bcDrjNjFhhgpzldZhFduTo\nQZUJ1rDTn/BkbJsdKJIIc2Ih8HrVcBvEHS2bsjA0VRZeXR7GAkJwp5wZ2iCz\nSiIdON/nECZxV3fmh1miNticrPKgio3H/9eN1Nke/aZ/6xqNmR6lXu1gt8Wu\nl1RFhn5gDkQ8tUM/B7p/hIA2IjyvRTmHv5ZV9EwVBJbwDWvxQjUEa/2t7Spg\nVu929mXDFrQkHOf+tst3x4YYR5ssvr4zViT383MnqDAA9HxDu6/uLJvOtKBx\noQa9MyxU7NQSHXcjQ/C+rGpTuqWHsQePM+jjE3JpT9zCXZx7CaJojjaq2lZZ\nFPwD\r\n=rs01\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID/Zj3glnblTCBY7alxxpMN4g3MiER94+fyjbTFRufRcAiB+zv5A2KmmCcVLfZRC00jNfSJ3JjrTeGnUU+aPpsICkw=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.6.0_1592614205207_0.714659626338362"},"_hasShrinkwrap":false},"4.7.0-next.1592694594.bd2591ad7917f4db557b30e318a8fc68e4a2c7a3":{"name":"getsetdeep","version":"4.7.0-next.1592694594.bd2591ad7917f4db557b30e318a8fc68e4a2c7a3","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"3.5.0","typechecker":"7.5.0"},"devDependencies":{"@bevry/update-contributors":"1.9.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"6.8.0","backbone":"^1.4.0","eslint":"^7.3.0","eslint-config-bevry":"3.8.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.4","kava":"5.4.0","make-deno-edition":"0.9.1","prettier":"^2.0.5","projectz":"2.5.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"2.2.0","valid-module":"1.4.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"yarn run our:compile:deno && yarn run our:compile:edition-browsers && yarn run our:compile:edition-esnext && yarn run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"yarn run our:meta:contributors && yarn run our:meta:docs && yarn run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"yarn run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"yarn run our:release:prepare && yarn run our:release:check-changelog && yarn run our:release:check-dirty && yarn run our:release:tag && yarn run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"yarn run our:clean && yarn run our:compile && yarn run our:test && yarn run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"yarn run our:setup:install","our:setup:install":"/usr/local/bin/yarn install --ignore-engines","our:test":"yarn run our:verify && yarn test","our:verify":"yarn run our:verify:directory && yarn run our:verify:eslint && yarn run our:verify:module && yarn run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"bd2591ad7917f4db557b30e318a8fc68e4a2c7a3","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.7.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.7.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.7.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.7.0-next.1592694594.bd2591ad7917f4db557b30e318a8fc68e4a2c7a3","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-BVhrp85wl3iWxOUutvEcnFcFjF026nVCECkj5GkE19YwtO7SAWjvZtjnjoUr3lMcK0NjECx0eJAqq9nX1/izUg==","shasum":"90757d4cede090ae98f60564cefd52fc55e10ff1","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.7.0-next.1592694594.bd2591ad7917f4db557b30e318a8fc68e4a2c7a3.tgz","fileCount":11,"unpackedSize":33857,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7pdFCRA9TVsSAnZWagAANvAP/2B6F46XlFjbKmolO21A\nacG0OMm2DMreOYJtYqgiJf87ylKv6Ouh1iQNt71FmEl5wzs8w+EY8EuRp9Ka\nFz9dxviJabMCRqsOScK7lLqZj7q0V2PufmtG0aGHkNMCpcwRLZeB+6fPfjA5\n+jwgH4MZjR9YdCC8YpfDfPQziZSgUldmKso76rK1zz8Azg6gH9wztRK36KWk\nY2wn06Oe9Dynr4WKXRbKl/kUtNPzUccnLiB9kvWA9rEekX9RdjgMcZmpXqBs\nbG6P3YytP2VKcLEdrm4p6BBDD4aiVZ1AwHnadr4RsD1VqN2sJFcqFsyx7YjB\nkvz3RfEL9q3sbMzIH8eFgYZq+/0kmLltPAIeHcI7pMkO7AhSGSRoKGJ0jxOy\nCIyJkSKmygGOpPH5PbPFwWydPydbA53iSNuV47mctpHufuR2kGBWTa+DWgXv\noPuKOS1zsvpTyiHUITmKitMXWfk206Q9UTbRoKQn3amogJr/szfLHQc2ZWD8\n6U0PXY5v3TBhpp7m20zyaYQYSYD1nA2vh3dp4ESPJPPxZXA7XIcea6sjYSQQ\nnpXnm0kgxKKb7qqDILPLhz9bv9p8MPlcsOmw6W53plIQc8aWDyDKljgqdWT1\n9hNbFuLJNHiep4EfKb/9MKQJiZEVcmVa9FxfBdImYX7xud59ozpvPvaDa5mL\nzqRo\r\n=WsIr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDiGSMFIv+2eFLuB/e90YibJNY5Iu0GjArvjHOSiZ2lnwIgDk6UBv2nYT3XpIIwZTo+z504BeRqtdP/lixj2M++Mj8="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.7.0-next.1592694594.bd2591ad7917f4db557b30e318a8fc68e4a2c7a3_1592694596543_0.09347515416189545"},"_hasShrinkwrap":false},"4.7.0":{"name":"getsetdeep","version":"4.7.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"3.5.0","typechecker":"7.5.0"},"devDependencies":{"@bevry/update-contributors":"1.9.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"6.8.0","backbone":"^1.4.0","eslint":"^7.3.0","eslint-config-bevry":"3.8.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.4","kava":"5.4.0","make-deno-edition":"0.9.1","prettier":"^2.0.5","projectz":"2.5.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"2.2.0","valid-module":"1.4.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"yarn run our:compile:deno && yarn run our:compile:edition-browsers && yarn run our:compile:edition-esnext && yarn run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"yarn run our:meta:contributors && yarn run our:meta:docs && yarn run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"yarn run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"yarn run our:release:prepare && yarn run our:release:check-changelog && yarn run our:release:check-dirty && yarn run our:release:tag && yarn run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"yarn run our:clean && yarn run our:compile && yarn run our:test && yarn run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"yarn run our:setup:install","our:setup:install":"/usr/local/bin/yarn install --ignore-engines","our:test":"yarn run our:verify && yarn test","our:verify":"yarn run our:verify:directory && yarn run our:verify:eslint && yarn run our:verify:module && yarn run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"bd2591ad7917f4db557b30e318a8fc68e4a2c7a3","_id":"getsetdeep@4.7.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-Vnr1s6TsvVcjGDQfc89/scQUhAbpJqdl/YWBfypyr2BAOEG6mVaMu85BIPmT3bdfO5oj5kHrruc0fVupPjWCIQ==","shasum":"c54e491e7396b206d00e39a8951f6fe5201d8349","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.7.0.tgz","fileCount":11,"unpackedSize":33800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7peKCRA9TVsSAnZWagAAhjIP/jhn0ncK4/drwAVxwOek\nNVjz93CKvbGI0Ei2ekWn9fsnBtTrkCj/IXu5Kj3htOGww9qlKJCGc1la+IAa\nl9zI6CGlmrXdB/fcuaj/ri+alDNPWmbHUkw86MqE7VQuhsXmDH1GrxI/0F+Z\nBB3POiw4mvmsvQLC5pGJ2bZLweto9cJanP38KxV1oO83kGgjpaqV/s7dMwwg\nSKHirt43zXtZn6BSV7p8ggv3f217LsSa6l1RF1l8h6qXHef2xYtbJmOs15Sy\nfOAM4JrN056mYGoMcPyxk2SkygTxxvnWbo1wdTITjZsNPHpdwMqeiPm+HG8n\np3TQhnJDvaveNYIW6Vx3UnGvc8OuGx64LIijY6Q0Av0Rss4Ma18X6JdUcqTr\nP8nI2M2jt+mHEYXSlFajxiSoXNbFbH+aUmxVPKKvONKD1GExFzo/tPclOFk9\nKLSloIcyWhaEAIUV+b6TRUbFRM/ML75bQbOnqmDPKhEaG5gTCYXBc8cfcKnk\nlRtxtJLHxL2HP0mjL8OD5Jurc2+66mOjEWBNaIH3hfLZB6Bx97YVcufcWx4e\nTav95CVzQQrd/U/h+baYCoiTCooNSHWCTwPuFSNE2O1kkwCs1J6cM6NkBNH4\n/Pyyv4XNfB7HDNdAWnfXQvjk4mAdTLUOM5PBwrOVliDr7GI97A8wESuuG+gR\nRd+N\r\n=M73p\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDcfJh9SOW431eap3UmM6+f+tpG2YUat1A8Xy9PsrS7+AiABM6a5m/ApG2TGxz2mPqNtAAxFbkhIqF7/hT/SQlP8Ew=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.7.0_1592694666449_0.7546599841048085"},"_hasShrinkwrap":false},"4.8.0-next.1592741406.a93d206306bc2ce32aca6d5b260bcc2846c92a26":{"name":"getsetdeep","version":"4.8.0-next.1592741406.a93d206306bc2ce32aca6d5b260bcc2846c92a26","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"7.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.9.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"^6.8.0","backbone":"^1.4.0","eslint":"^7.3.0","eslint-config-bevry":"^3.8.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.7.0","make-deno-edition":"^0.9.1","prettier":"^2.0.5","projectz":"^2.9.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.5.0","valid-module":"^1.6.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"yarn run our:compile:deno && yarn run our:compile:edition-browsers && yarn run our:compile:edition-esnext && yarn run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"yarn run our:meta:contributors && yarn run our:meta:docs && yarn run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"yarn run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"yarn run our:release:prepare && yarn run our:release:check-changelog && yarn run our:release:check-dirty && yarn run our:release:tag && yarn run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"yarn run our:clean && yarn run our:compile && yarn run our:test && yarn run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"yarn run our:setup:install","our:setup:install":"/usr/local/bin/yarn install --ignore-engines","our:test":"yarn run our:verify && yarn test","our:verify":"yarn run our:verify:directory && yarn run our:verify:eslint && yarn run our:verify:module && yarn run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"a93d206306bc2ce32aca6d5b260bcc2846c92a26","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.8.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.8.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.8.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.8.0-next.1592741406.a93d206306bc2ce32aca6d5b260bcc2846c92a26","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-9lG3ltMei80+9tP2miCbH3ZOkX3Ku9ahF8bjjLzsx/78wUJLg58lpFBr3S2lkYTIoqcfnrtwTh5r8e3kLFCCZg==","shasum":"51334367403ec3d5d2aa7e82bfc611dc24aa5e7a","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.8.0-next.1592741406.a93d206306bc2ce32aca6d5b260bcc2846c92a26.tgz","fileCount":11,"unpackedSize":34034,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe704fCRA9TVsSAnZWagAAIEgP/3nCInbq7s3/cDq1XjGy\nZecC5a8ObAx+5PyS3R5/w1j4kK4WVEabS/02cU4IjfJmzw8kRt/WrBJbeT/L\nlqXtHrD8rvqOR64Zc2Pgaq/AXvSztjiuM3q5+BDqg6bM0bb5+7dca/xRhzn3\nnEfIEkilmW7wd8WHjqGaexE7kdoDb6OwXonwZEzp6CkmdATpeArI1x46B/A/\nsLggcovdev+CIuHJ4sroEGKjUsjY2O63qTFToofspcGtoInDy40R0uit14Z+\nkUnBTIq9oA1UEX2VzaJO42ZfSV/YXt9+qjp8FsOSmbh9mcLVwnZ6jIEz4C/g\nsTihTXc5gBMHKKshAhWMUwcOqAZzKKmEnpzKAu3qymgovRE/PH/kh1vmVlcD\n0crMIpBsE1zFhcu5rEkvpjT2k0h2pAN0Nb1Z1XgJoZ4Nn9OtwBPitppw7tMe\n5fY7+kei86YzZKhNzcto6INoEHDCraguIWSvHMyP7tHehfYksZCWnEngmRfD\nkiiWlO7ImfG/YvhhCsjbElD2OKa4+mm06zOlwifyUhmwC/POvAl6CufHrKkW\ndSHmkqozcXfzWADP6NG+6VArn4HotIfAPtebWL+g3I9l5lkP+Q8ZdPD3z1WW\nSpPFqvT/4eyeTuaxT5DxkzHbvzenp3ZmOiHCb4jh5cfPEwxWOe4MNSDiKV2y\nSCMM\r\n=QSeV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkNQytHcarGhwbhvb8gqiUjDBPQzijv1QfUjMvnUzpkwIhAPvMKhZSYhAAxvx7ID61zRgZLDN5gmsNf5MwpAYns2qH"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.8.0-next.1592741406.a93d206306bc2ce32aca6d5b260bcc2846c92a26_1592741407328_0.44473594738498834"},"_hasShrinkwrap":false},"4.8.0":{"name":"getsetdeep","version":"4.8.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"7.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.9.0","@types/backbone":"^1.4.2","@typescript-eslint/eslint-plugin":"^3.3.0","@typescript-eslint/parser":"^3.3.0","assert-helpers":"^6.8.0","backbone":"^1.4.0","eslint":"^7.3.0","eslint-config-bevry":"^3.8.0","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.7.0","make-deno-edition":"^0.9.1","prettier":"^2.0.5","projectz":"^2.9.0","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.5.0","valid-module":"^1.6.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"yarn run our:compile:deno && yarn run our:compile:edition-browsers && yarn run our:compile:edition-esnext && yarn run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"yarn run our:meta:contributors && yarn run our:meta:docs && yarn run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"yarn run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"yarn run our:release:prepare && yarn run our:release:check-changelog && yarn run our:release:check-dirty && yarn run our:release:tag && yarn run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"yarn run our:clean && yarn run our:compile && yarn run our:test && yarn run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"yarn run our:setup:install","our:setup:install":"/usr/local/bin/yarn install --ignore-engines","our:test":"yarn run our:verify && yarn test","our:verify":"yarn run our:verify:directory && yarn run our:verify:eslint && yarn run our:verify:module && yarn run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"a93d206306bc2ce32aca6d5b260bcc2846c92a26","_id":"getsetdeep@4.8.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-DzdbJmtDv2dMuDvTFVg/H06fNt6Yyk9B6L17qjJUFHMgUmHrsrtOrbkVHkwd2c1idyw9Z8wQ7Fe2RBjHYPGeVA==","shasum":"fea4b4392de0c3d205ae94489865224d0ccdbf87","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.8.0.tgz","fileCount":11,"unpackedSize":33977,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe705gCRA9TVsSAnZWagAAMXIQAIdlvKQpw5ZIPAR+D1zI\nP2rjLRqOGGRyvxiGREOOBrxm4imI85S0qA7w9yMt4mD1vDII+eUI0yzd2mQb\nJX9g2Zk5Vm4Yd6sc75YWWtMN1tNcF1OewchoNPOSjeB9xBE0x9zjRLRwYew4\nvLXcsoQ4S2KVg/kZtFCZ2RgaLGe8M+SJ9tHE97Kk+QToKanxQMScNJbirMLC\nh3pxwouvzY2Zo/l9CQhC53JZ9MZmHmsxDLQ2E7yGxUVR/NEqIwyJaDN5cZlp\nfSaRcRgqFcTfsbMtKHJJ8VMYzP8YEQ+08hhi8qcgz8x+B9noTr9DYIrFe+nA\noABhU9SIrpW+bS7jCCyjPtQsWF4XRBwkVxFepM6n4X3AVcvHmW+6onKM7QPo\nM96U1Vej/QBbTOoD02avZ02F27ZfQMHw0Am73zS9dKFwSGW6WDylVmpEu7FC\n2uWmMksbqa0hXWmQS1ozEEbxDj+T0RuQM0xrc8EZZmsaH0W3OSg/eMtiBa+A\noiCcFOpJOOcM4O9g891KWbjPA5Qpsnw6dDTEsbx0ujNbBdbFzxvqsUIrzzSz\nlWuL8icvIALYhECPHIHv2sctxDxgL4H8CO9PTIY/Y7d906wSKztvgmb+M3J1\noR7gqDJ2wvJQ91zqMFjHAnon69HTikMaUJOWpPjMhWrcMnGGksDjZWjTMAYC\nM6Fm\r\n=nU3T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZL3nNoRnXG8kO/dPv2836SM/JxWH4eyeTBs7xHtHeAwIgKU6NwpW3AisgRv5xizZzey4qhMPi2F5TtgQQV24kDWk="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.8.0_1592741472259_0.5322360542196614"},"_hasShrinkwrap":false},"4.9.0-next.1593055243.6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3":{"name":"getsetdeep","version":"4.9.0-next.1593055243.6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"7.10.0"},"devDependencies":{"@bevry/update-contributors":"^1.12.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.4.0","@typescript-eslint/parser":"^3.4.0","assert-helpers":"^6.13.0","backbone":"^1.4.0","eslint":"^7.3.1","eslint-config-bevry":"^3.13.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.7.0","make-deno-edition":"^0.13.0","prettier":"^2.0.5","projectz":"^2.10.1","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.5.0","valid-module":"^1.7.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"yarn run our:compile:deno && yarn run our:compile:edition-browsers && yarn run our:compile:edition-esnext && yarn run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"yarn run our:meta:contributors && yarn run our:meta:docs && yarn run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"yarn run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"yarn run our:release:prepare && yarn run our:release:check-changelog && yarn run our:release:check-dirty && yarn run our:release:tag && yarn run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"yarn run our:clean && yarn run our:compile && yarn run our:test && yarn run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"yarn run our:setup:install","our:setup:install":"/usr/local/bin/yarn install --ignore-engines","our:test":"yarn run our:verify && yarn test","our:verify":"yarn run our:verify:directory && yarn run our:verify:eslint && yarn run our:verify:module && yarn run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.9.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.9.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.9.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.9.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.9.0-next.1593055243.6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-ezpcARXKOMvB/7m/bR39MGjwd9Lle53Hjh28Kk+9uTx3Rm7Hc3wffFDnCeggaknNPrZqDWkUOpVD4ytdPjxyPw==","shasum":"a9452855f5d30c01fbed6e9461032eeb47d21aba","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.9.0-next.1593055243.6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3.tgz","fileCount":11,"unpackedSize":35266,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9BgMCRA9TVsSAnZWagAAZSQP/A9ioUtsFdVblw4ehRzO\n+B2c4Xs4P8Rg6pnx0kWgzlNtkeMBat3bnildZv6HvdSwmAhgVc9lEJuPa8nU\nQUcBAK8dGay8BDXdGzgdEGyWY+SOETlypcp/R1bGETaYToBTOGAt+iXUtK/V\nhIn/TIoFGtKqDNJ5j8Oj3hkthtSF9gyieWuwBHgQ0IninH/fWQ+u82/LRbjv\nSKoTvlvCN8s7gULitMuayvvsh5gHqU8gdvgaXEPUVTMMdWCblrN0dLzaKNO0\n0NwoGNU8uPjvsEBcm91SplLU+64E1ebI7KaAdkj758O9bwv+Qhnh0hGHDHkw\nrFK0fd8gHne62lkPS3dWXgs4pxEfW1LAN7vyFLOaUbOIpCkJO1kkEwpaREjc\nc2IdaqZiQFGL+7ahpgeYd27GsOOg9leYapTKmluvsYarmCDBIf/Nm6d3LKLE\nIqAG4KE+TUpXHm/IngXmPe8tcrkd7ymW9YjgQEl+PjKhmtOqaPrSrr62uJBU\nweeQJOz3LAcCGYQtqhGAHEB8omYGqYbA+1kf7FC8/PskJR6BwsMDed4dDhDp\no0p+Lhfge+/wxXA31H9lxEsaQDGtA5qQrslkDYf2ZbGyheZHsX0hZujgXliB\nnXWWzojYeVk1I/m9CpjCJ8i1j2w/eT+pPrE+h0JyIE8n+Tec5JOCbuxUoWK3\n2/pw\r\n=2OH6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF/kVlb3GYpXOiUOFWj+ZIuwVAgOX7QsmJ1JaJCI5Tn+AiBryfzsVs9D3p8ZaFmRGhQPTzqTgRzKg6dBZt2UM3vnlg=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.9.0-next.1593055243.6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3_1593055244326_0.7365775311426717"},"_hasShrinkwrap":false},"4.9.0":{"name":"getsetdeep","version":"4.9.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"commonjs","main":"edition-esnext/index.js","deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"7.10.0"},"devDependencies":{"@bevry/update-contributors":"^1.12.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.4.0","@typescript-eslint/parser":"^3.4.0","assert-helpers":"^6.13.0","backbone":"^1.4.0","eslint":"^7.3.1","eslint-config-bevry":"^3.13.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.7.0","make-deno-edition":"^0.13.0","prettier":"^2.0.5","projectz":"^2.10.1","surge":"^0.21.3","typedoc":"^0.17.7","typescript":"^3.9.5","valid-directory":"^2.5.0","valid-module":"^1.7.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"yarn run our:compile:deno && yarn run our:compile:edition-browsers && yarn run our:compile:edition-esnext && yarn run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) )","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"yarn run our:meta:contributors && yarn run our:meta:docs && yarn run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"yarn run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"yarn run our:release:prepare && yarn run our:release:check-changelog && yarn run our:release:check-dirty && yarn run our:release:tag && yarn run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"yarn run our:clean && yarn run our:compile && yarn run our:test && yarn run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"yarn run our:setup:install","our:setup:install":"/usr/local/bin/yarn install --ignore-engines","our:test":"yarn run our:verify && yarn test","our:verify":"yarn run our:verify:directory && yarn run our:verify:eslint && yarn run our:verify:module && yarn run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3","_id":"getsetdeep@4.9.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-UvViJHeLZe1IbBLqUzVvS7Esve9FIC3QBOWfn+od+M3hFgvWjpdCdTeUEWA6wKJ/hhZ4MGyFiUSoIyfJMNUZ1w==","shasum":"38ae216f340c8200982d62f9c63bd80fae62f9e1","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.9.0.tgz","fileCount":11,"unpackedSize":35209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9BhZCRA9TVsSAnZWagAAWZ4P/iXdDjZ7qcEt0glK5pvd\nKEp3HZ5CcCgWYOZjVzQqBDkN6slOn2RpNswkuGSqrQ028WuSsyNShUA+gMyy\nzONzMrqfmDg/Y2Lyae+BI/xffOzN7fiY4HKcIkULbax+sgyNVoII80qc8xaB\n1YSra7brGJWsDc84kZ4xqxqtG9hgkTdoFSksdxtbL3bQmIbC18+2bNHvRE1u\naXSvFPVN1twBIuZ1MjkSq+b6YA3NV0n0fpEh2BtBQLiI9OCsEjrfX5sVul8y\ndFruzXhDmJSNl1pqCAlttsUnzjHixKWZWNIqTHycx7XZRWZLDFHKG66D/K4o\n2jHelZRtuBdxwtpJn5xNPysjdk1edYf0T1z4Ti/4QpUNQ+3lGqFsNiJQAMd+\ndX+nym3wMMx0xzvfQFs5LV9KPCQpvdOT8AErvyka92Ze1Py1vNlJgpsyZZ4f\nDhZNWUIP3HkOLJs7Y7wG9nR+gstc2dQl0FLSASD6I06lDyfDqS/jCRahXyBW\nMgVKKhORwUyvHPFf4l9onpJj9+73d9W40tYUwfWzzDG7SrdEj7XPRC+7fSv7\nrx/hMvRsVBCLzYPTb7V372aq6bkpWY8u/6lAB4iG5xTksjCeRkwnoDphfSir\nKq2UqcnfkoThrIfwpHQQu5WXjCgcXsAIDmakNT+KroOwnX/m++g8m/AKgEhw\nE5xG\r\n=H6MN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEvg6yljxZEpN+MQnn+/2Sfls7Ck0qyXMujRlG5H+mBtAiAUltS6HtUzfBb2jRJCTWgPUv46whz1mAnaFzPgNu3yzQ=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.9.0_1593055321100_0.011166555333110395"},"_hasShrinkwrap":false},"4.10.0-next.1595346425.e73200684df6a6f53aae3ddb67c4ac58527b65a1":{"name":"getsetdeep","version":"4.10.0-next.1595346425.e73200684df6a6f53aae3ddb67c4ac58527b65a1","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.11.0"},"devDependencies":{"@bevry/update-contributors":"^1.13.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.7.0","@typescript-eslint/parser":"^3.7.0","assert-helpers":"^6.17.0","backbone":"^1.4.0","eslint":"^7.5.0","eslint-config-bevry":"^3.16.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.8.0","make-deno-edition":"^0.14.0","prettier":"^2.0.5","projectz":"^2.11.0","surge":"^0.21.6","typedoc":"^0.17.8","typescript":"^3.9.7","valid-directory":"^2.6.0","valid-module":"^1.10.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"e73200684df6a6f53aae3ddb67c4ac58527b65a1","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.10.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.10.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.10.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.10.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.10.0-next.1595346425.e73200684df6a6f53aae3ddb67c4ac58527b65a1","_nodeVersion":"14.5.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-XeKV2WUnv0MVdx8+BxzPsU7dgnD8v07vI/sDLqhTB9VVGJ/8mj4yoWgP5HdLAF6t0+topjOYAXvAkAixC1ZTxA==","shasum":"d8fe77048d67e905ae842da48bb47c6c5fcd8671","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.10.0-next.1595346425.e73200684df6a6f53aae3ddb67c4ac58527b65a1.tgz","fileCount":14,"unpackedSize":38918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFw37CRA9TVsSAnZWagAAUHkP/21bl67+2cGt7gkbKGtD\nE/R5rFSe8PUMZVMa2TKbuSaTZAYQepbFtc7RTreIUV9t/P0fWzwm+HKzsw7Q\ncfBy4B38H23Ty4EGfXuJ605AL2YXKKh+7uXaMC/5RpU06pJAD6dNjhihMHUP\nDv8PQFSOd4dbKIuS3cutfxOAumCeRIwbKjTtFw1ZBYTHqeb7O6fmv0FDrief\ns9ke03HBRLxZsEJ3gFaz6bp2jIEbHGXrH3DYrv66tZ505Gxv5rtjNeJhy7YF\njPeU11R3v/m3r2YAnf6Yg6Cw0DvuSwrKOMhuwIyHkllAT42SD6E29wHUrtGj\ntAWoXH40X6TaTAujc72i2za7PBCcb7J21fcTH8eygaELhvfSRCBVKURJbDQM\n46mMGo8ApLLFcy0cf7X2Zlfv28z5++JAsVfOWBDyFsNjAQRqBzFEnMY0v7Tt\nH4UMbMt63LtTnGXg0sCCF9GfsaHeNfAfYx7dj1VdL+GRcxBJyeO87tdTnYbX\n4cPjzTia2+HD2t5YNq4pFtSVpKO5hblw/whT9GIpkFoxLsPJYEhNLi/8dK+G\nCDBvz3Ri7hnh/mmSO56N6pYdV4NqUQvVzCrKDmJ1+Ndl+dVBNshZRqALaQ0D\nPhjg1fZkP7GrG21TqnG3HZX/s96RWt/PL2ct5haTM57WFZGbzo7zPSis1hYB\nkzP5\r\n=E9FW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA0NCfq40obdohh8vIb8Ev4PrwIkwx7h4Ba3KkYjBOrPAiBET67qHwWmLbigADdf7ZgMh+j0VLqHZ6M/nqTC0c47QA=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.10.0-next.1595346425.e73200684df6a6f53aae3ddb67c4ac58527b65a1_1595346426925_0.6719566406729631"},"_hasShrinkwrap":false},"4.10.0":{"name":"getsetdeep","version":"4.10.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.11.0"},"devDependencies":{"@bevry/update-contributors":"^1.13.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.7.0","@typescript-eslint/parser":"^3.7.0","assert-helpers":"^6.17.0","backbone":"^1.4.0","eslint":"^7.5.0","eslint-config-bevry":"^3.16.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.8.0","make-deno-edition":"^0.14.0","prettier":"^2.0.5","projectz":"^2.11.0","surge":"^0.21.6","typedoc":"^0.17.8","typescript":"^3.9.7","valid-directory":"^2.6.0","valid-module":"^1.10.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"e73200684df6a6f53aae3ddb67c4ac58527b65a1","_id":"getsetdeep@4.10.0","_nodeVersion":"14.5.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-9ufPiNmCAUaYz0Tb7WyuJ/ytgJ6w/5Zv5S4YzSAv3veY8c4R+PyPHt2NXSa9P66zXcoy0BJkxewEV08OT7puqw==","shasum":"b2a25623476a3e482476aeac90fb098150e55c8a","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.10.0.tgz","fileCount":14,"unpackedSize":38861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFw5JCRA9TVsSAnZWagAAr28P/jtdiPd2V/Ud+6GQFSY2\nTljgInd+sPUeEBsZ7B7EPo6EKuMPqC7xC7Cj3z/sNoX9L1iJn6JcGM+IWUPE\n3IGVo9SPgdjQjy5AfjcE3G6EL+XstDAJ3Lgw8l9HWy1N3P4IcRiXIySfWHjO\n/iog1jIiPmQCmE6hWSc/VviwjaZEvc21BsCStFHKIC6LFmoRUjze9F6pxcYg\nkmXs2e+A7UqHkbHzbesZglvLjiUHfyVOisijBwDJeYnGmdgdi65Ulj4CIuNt\n9ylFI5izgcdaDYhlnvWJ4MOYRPWBLgu4re0Wyvkzc4GPbAdsodWY55XJHqlP\n7rM3KsBVRkLFcDyr2LvJHU0iaO4jatzeu0xMffqRSPWR0k8S9jmwnrg9Yyv8\ntNO6l3Hr4NuhUWYy+gN0DY5DMkjMePMvSCWsdNYA6CClAOfZ4SmB6o1sMjBa\nv7DZlJzW7nedSJiu6CIMPLFPPw+7ofJW+6WnG4Lm+BFGEJiPrrmY5cq2Uyqx\n7HHtb/mi6NH8zfsLYoBfmJjxtC+5OsfWvpbY1WAHdWuymS/Q/yWBK05Evvvm\nZv4uIdksaKdm8YEMGk1V+1yf9P5CGV0J2YwiXCqVU7+U1VsxkacEuccI8LEQ\nnVr9OcXB7hBJe6zXfDckOLNLANS/7tQXAaGQL6ND5ePLIsHS3xRKJDu3u3Wo\nrG9C\r\n=YArM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9y0RYToAxdj8RUs9HGCe2ke2soiU4l75RyQb5UybHNgIgXzVKLILUKPyBIR1fx+nwPq8p711iNXBZSVo3eWsejjs="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.10.0_1595346505321_0.11998421051103692"},"_hasShrinkwrap":false},"4.11.0-next.1595354998.68eac2afcb96c13e1b536e8893bc4d659c4b9de6":{"name":"getsetdeep","version":"4.11.0-next.1595354998.68eac2afcb96c13e1b536e8893bc4d659c4b9de6","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.11.0"},"devDependencies":{"@bevry/update-contributors":"^1.13.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.7.0","@typescript-eslint/parser":"^3.7.0","assert-helpers":"^6.18.0","backbone":"^1.4.0","eslint":"^7.5.0","eslint-config-bevry":"^3.17.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.8.0","make-deno-edition":"^0.14.0","prettier":"^2.0.5","projectz":"^2.11.0","surge":"^0.21.6","typedoc":"^0.17.8","typescript":"^3.9.7","valid-directory":"^2.6.0","valid-module":"^1.10.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"68eac2afcb96c13e1b536e8893bc4d659c4b9de6","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.11.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.pika.dev/cdn\" title=\"100% Native ES Modules CDN\"><h3>pika</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.pika.dev/getsetdeep/^4.11.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.11.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.11.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.11.0-next.1595354998.68eac2afcb96c13e1b536e8893bc4d659c4b9de6","_nodeVersion":"14.5.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-BQt8li+BVS4anTzyE/p1LrBFXFykmJdXV9jw8IUFxu0UTkozAxw+NRWPkIOh9P3u1wltkqOsknLzvpySV/dtbA==","shasum":"52e4397265a5aa9619b34714389626905535980f","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.11.0-next.1595354998.68eac2afcb96c13e1b536e8893bc4d659c4b9de6.tgz","fileCount":14,"unpackedSize":39113,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFy94CRA9TVsSAnZWagAAg3QP/1rDjyh7U9+zyWveh90k\nlABWVUQp91jAzsf0gcCD1G9PlCTdi/OXf51bYKriYyj/ILF+Zf8x4MnkfaTp\nujBsz/k6W/r54GxTAwQ1omNtbW7KuEi7AD/WJixss32Me6jaXxR46dni1LE6\noy54IksBOvzgR/Dtl9HI/TP8339Ruy8fcei6wMzG9QBbyYkBuwKOSvAzD4dg\n+Le4HMn7gg5pBnu+QI/byLktW5p0dDtM6yUtEX32PvZ2OYOTXWT4LZbQAcHe\nz9Qo3Kc/jhFc/yLF1YeU6Qu7fefeNaMpuMslLVELQUe21saspwLClbRq6TbQ\n1b2uM1whHfs1EzuY4nWxoRx5MAlmFbgkgyZQwT99+ZiIGRfRlM6lH6z2ZpYD\nUvH5vmgea+k7+BMWBBR/xbkN9hPJOr7LZNUDeoBE/KPE6ya2mVaWhYnczhBe\n4qBM3d3HvLV/d2OheKrzRg0dxQTlEcEshgvhASiE44R/q9DQeUqzYHn0/uRu\npsq0jdfyOaMiprld/0ZmSiUBusf20WUR/7hmogWmBE3/IVM0lfexamDcr26i\ndB7nvlzNFPEXUU5AwJxigN/3YGTeaROrW2LXPgRSOHfTHQyycgtayimBMkrM\nbBgesF1MutpwoqUhEMTcY/OFuNKftJ5Vw3relj+kMNR+zOsT9hGu0j+ZlTf9\nUmog\r\n=lrVn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDme1WFfTjnye+h9PPsXjtj1ghc8YqLig9tgQVcufszNwIhAJ4MucP+47szt5F9N7KK1cuPspIhaX6WERVV2Wwan2dT"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.11.0-next.1595354998.68eac2afcb96c13e1b536e8893bc4d659c4b9de6_1595354999995_0.2076511309693454"},"_hasShrinkwrap":false},"4.11.0":{"name":"getsetdeep","version":"4.11.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.11.0"},"devDependencies":{"@bevry/update-contributors":"^1.13.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.7.0","@typescript-eslint/parser":"^3.7.0","assert-helpers":"^6.18.0","backbone":"^1.4.0","eslint":"^7.5.0","eslint-config-bevry":"^3.17.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.8.0","make-deno-edition":"^0.14.0","prettier":"^2.0.5","projectz":"^2.11.0","surge":"^0.21.6","typedoc":"^0.17.8","typescript":"^3.9.7","valid-directory":"^2.6.0","valid-module":"^1.10.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"68eac2afcb96c13e1b536e8893bc4d659c4b9de6","_id":"getsetdeep@4.11.0","_nodeVersion":"14.5.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-u5Y/NqF0EbWwGR3Gbt3sVpsMIdqD8d4hg5V4mHe4nj+zlc1twjv/kaQAl3vLx813LQSOr+gS1sDYloyPh5xCeQ==","shasum":"decd974eff9eefbdee2801704b70c68185d3c039","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.11.0.tgz","fileCount":14,"unpackedSize":39056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFy/TCRA9TVsSAnZWagAAm2oP/jdYUb1tDeUe6goHyE+Q\nFyeRRHG3dEfu13QCf1xJz7ZFSV1dCKfHqReXeDo9opvpoV3brAmDwoQqWLgM\njF6TaDZI6WzWwepkU6eAif8U+69IWpBlKuw7XOmALZVcxiVekDupys8LetBH\niVaX9fRMdHymoDKJgWyl0ner+kWYZZWLtXijALdkJKdUrELN3u5+LiUsk6A2\n02uIGP48TnMRJPUF8U20Gyg5aintPbljWTP4OCKwbHLDYJKDjfX2B+ZddyYj\nGuZtaj/GSxCjljj+g1KSSy9ExJeMruFDCkqsY/utwT6L6Tz2QJ8DTXflZAMG\nIn6Ro7thlWWGfCsXp333WQuNW7ewTkHtKYPQqVF5IeFAG2hvtpeSbRx+1mLD\nJ/CnY+R/hlRxAPvHqFi+IXMafvYv9NwhtmN1c9afSBIEr8SJoGOyeXDiimIH\nKEwJgf/JVmq9QgrSQyBQTCKarufkGlDEXigENFfmuJTSywxyY1cKK1KCQ1de\n2XEBpb7omvLf7QprvO1twD1fFJrEM0s/LxTUkqbJ9i9uwEr21R7p4zMBwlFQ\neTUyEr+xyMuYDASG4rSqKeYDu4j2sIGpwlFA7/BeTdgvmOt0HNW7QWyml1S5\nj5AKiOkwHYhG1dHxDn3WremaSc1m1RyaiWf8K/TjUVktDaZfmieiluQvwIYs\nxxpl\r\n=5tyS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDndpKrxXTyI3of8HIIe4BoJeBNPOBYLu68UqFC6RecQIhALcV5pBP8ekaET9t4/voSfbtpoLy0Uv+ylFzo7siCK+f"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.11.0_1595355091076_0.49352989658923474"},"_hasShrinkwrap":false},"4.12.0":{"name":"getsetdeep","version":"4.12.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.12.0"},"devDependencies":{"@bevry/update-contributors":"^1.14.0","@types/backbone":"^1.4.3","@typescript-eslint/eslint-plugin":"^3.8.0","@typescript-eslint/parser":"^3.8.0","assert-helpers":"^6.19.0","backbone":"^1.4.0","eslint":"^7.6.0","eslint-config-bevry":"^3.18.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.9.0","make-deno-edition":"^0.15.0","prettier":"^2.0.5","projectz":"^2.12.0","surge":"^0.21.6","typedoc":"^0.17.8","typescript":"^3.9.7","valid-directory":"^2.7.0","valid-module":"^1.11.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"522ef85866859b2b817512b60fd6a19facc9b1e0","_id":"getsetdeep@4.12.0","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-HYvPfJVCAbWDiGR+DMJcet2LHJlOenEtZ0q7kN+eHQiwurfUg4haizuIFoKWynUbjjqbgUt4GGYRDSQLe2FwhA==","shasum":"dc45e0625086bdc3cedd729ebe56837f38b7e0b4","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.12.0.tgz","fileCount":14,"unpackedSize":39252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKOlaCRA9TVsSAnZWagAAkWAP+QHWmbg4NZ1GfXAzBBgF\nU9kgst1NF7gpZHJD2br1p9Nm4ML5i9eq9RrxPRZ1izGHi7Kv681p2sz/o6VS\n9fFsSpIfUWraIgITZjNaHfbSCkWkyiStu075Y+mi/tPGknj6N8RYVqjGlpkV\nAaqiHGvHE/uIE9e1EV+lvPaAfLaWmrAzUr8aI6TAFAnjlE/WNQzsGL5K/ub5\n7C4OpsoXVB+Et37Kr8Iv0p4Xtz5meneVz0rsbP/0svb4pPpyNE+oSQ4FQ4Vc\nDxXU9PtQwZMLY+zoPWFzDHyqc5/hCLFrcNxjysIn3OxnhIYW6BJS540a6Dez\n7v4oeC0AjwueAbLHsiZ6LoNGQEvR9G6dCQIeC1JzvjDOcwkarvBeCr3128sz\nd6Kaqj93ZnbT/w+EoMPOsr+/vihjRE7eOVG91OSWZ9h70JNQecqDRrt6+XR0\nSk0YHnOJf9q/KFSasimmXhkphZ9395RVpHeJL9Pqgp4SlgieKSRPWcOdaaLG\n7PEbbwhfQZAFBFF6g0lawSy0Rf7QHX0lftEhFSqas2hrfTi6sV0XD8sYQ2Bf\nSYbrw1Sjy+cLbyGo4JlpmmWOriSFZWPFUzZ5vfB2qLvGorfgOw3153mtpSNE\nsl0zuJFe9ua/bLuLFcs2JyD0UII4NwPn7tDF+UT823zJ3Mrffq6PWR7VM0D4\nKpeF\r\n=RQUh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrGAYk7jAS1qtLGMDdpr4SLCDyzZRolC5apVUJ2xT9UQIhAKxtHi1g71Vbsxn1Z0uLU/dutDQffXurx5+1xMewkZwF"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.12.0_1596516697548_0.43486928863367713"},"_hasShrinkwrap":false},"4.13.0-next.1597696212.73b203b58c241663d31ea82d8d46ebe84d91c376":{"name":"getsetdeep","version":"4.13.0-next.1597696212.73b203b58c241663d31ea82d8d46ebe84d91c376","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^6.19.0","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^3.9.7","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"73b203b58c241663d31ea82d8d46ebe84d91c376","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.13.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.13.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.13.0-next.1597696212.73b203b58c241663d31ea82d8d46ebe84d91c376","_nodeVersion":"14.8.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-ru6fVGcrP/dI7jftjVWFoJW7dKH+MKKdNeVfNTCiW4ZNHRhFVAxn6wKpTbZbotXo2PrAq8y2H2yrjbJ7CT22BQ==","shasum":"e04846d79abb69a61ac3a1da19d1bdb22819d780","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0-next.1597696212.73b203b58c241663d31ea82d8d46ebe84d91c376.tgz","fileCount":15,"unpackedSize":39782,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOujWCRA9TVsSAnZWagAApnAP/0E+NfU0jV2yoqaxnpBa\naVGByRCF03JBYa6KwWRbMJzTRF6fVy1TU/fFhY8iAMQPzqcp3vPONmFWzI5q\n8CA4400s3VC47RPejNW82wGwPEtgmWr9UhrYSUkyrr4inHbmBGeul2s8nkMV\nF88rAtPSGJ2fzkwKn6LeyurCkjKTnp6NqGNJS2hbpwPz+m84AvMhKMV9qXY0\n8HiJ6JuCJnMwxVPGRTCo4CGdKmYRuDX/DVGR+McZPAKSnGq0RcOmysGcvBaz\nCwcI7TUuhRZDITgEbHVffcVdkq53SBdwtB8fBIGmNLn9DVXqqg4yZ3mdvjnE\nmusI2ro+vd3wXWc44fGlQAAKekgIzSVu5ENjZLdZlHxWIe16pzfUz/QuSfrL\nmK2sQY6hiyddcyKOCpQyGDQsdhUXIwc3cUNyVQfyjnd86ItYoqt0wYvPJ1Nr\nGu2IuY1eRXTl1ErifyLVfiFw3bvHrXOwqJDbbmlT+SOJoklZM2N5y/yZ7z2e\nNHnKsyNJ/H3R7MroVwxRrGEMWkRkYeK9TOy/a64IazoMcuqsuCZx3qo1L/PU\noMbdnxjkVNkYsidAR82VymSE6bw+HEu2yRVtj/8pyoNn6G0SFvtYfynMoKmc\nqAmfYJb0e6yzaIjljf3m9zyFHDnIVahGOjPFDGuH3mR12Uq5ujMMyX4MCuU2\nzIoR\r\n=J1ge\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEAkKJq4p+598t7K+rdYKoeNTf+bys2z1Bm0UqBQ6ajWAiAhev0r5XsoBYYoIeKG2BYu2SxwWoAv9wasUR5Lh3s8hA=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0-next.1597696212.73b203b58c241663d31ea82d8d46ebe84d91c376_1597696213988_0.6054711151050498"},"_hasShrinkwrap":false},"4.13.0":{"name":"getsetdeep","version":"4.13.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^6.19.0","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^3.9.7","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"73b203b58c241663d31ea82d8d46ebe84d91c376","_id":"getsetdeep@4.13.0","_nodeVersion":"14.8.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-bKyg02wqP5SJThwvsHtY6lGLTFDcZ3LkpmIP/ZZA7rpUJtH5ftjKlH7bqA5Sb8euXRGtwLEDLjQiLtnd8/Abrg==","shasum":"c05ce7abdb7ef90597188717b939003b78b3cff5","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0.tgz","fileCount":15,"unpackedSize":39725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOuktCRA9TVsSAnZWagAAXvAQAKAAVcnUVBTtHR8I/Bvo\nigscCLkQK0Ry941hMyHubSQoZQDtKDDzOpNUWx7pxgqlZAf2MvzxS6OBukp8\nNjNPZuXyUPqnVSwqBgWuTeIqxjj73L/MCT0jV1tp9vmmtKBTrcWAeMbyIP3O\nMOoOqYgl6DLmmKIv8HPC7vfAopxXv8eFZnY8qAK+Z7Y8GP4ejcEf63Zlh8Yj\ne80TdLp/vC96DzcJAm3dMREoIfT6EtVHp6RqdphpQ1Ww4VfeIwVc/IWLidB0\nbSUt3Bdr4g5QxF0RKuII+7FznHioThXMwzObeCmU3HdCd6eP3WYOdht9dKql\n0YGA6JbPG317TzRi1tWfaeBCzv55jD1KMebFz/oXLwoqnScYQNxv4gdReATa\ncLgqrD/7+ZwZzQxrUWJTmkLWhZBT9XDCmlp5wzbFcY5xFg6f+ycuK72feSIi\nn9ubFL8F0vLccv98THdMyUqFeP9dil+OsAPlnfQChKhGHnujxaZHdUTD2TE+\n7fpoTveXYByDnYnHyLHY08nivuGOfZ3WnsVNFTxv85tqdrnQmDKJlLQCEkBu\nGF5PCZ+SjE4IdmUIlw7DLoxYWs54vTdltrImszPZ2cGAGJYL9mRvzyzRo9eC\nAYc1XfuDewfR7JBCzk6ayCLhsezkiDvFKitqrR2W3L1l3xo7rbXbwQMo96tC\ni37+\r\n=KkPe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAge9gT38hu9/oIBfnlRFZODaqrJpqZOjwwkkoKGQQzuAiEAxvz39dk9nCqGgHtZIGNA2nfYpr5E27fn19el0SExWxs="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0_1597696301085_0.23041301945106474"},"_hasShrinkwrap":false},"4.13.0-next.1597696319.47ad792cdaa343f4f818fb4b60f39eab60c4ff32":{"name":"getsetdeep","version":"4.13.0-next.1597696319.47ad792cdaa343f4f818fb4b60f39eab60c4ff32","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^6.19.0","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^3.9.7","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"47ad792cdaa343f4f818fb4b60f39eab60c4ff32","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.13.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.13.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.13.0-next.1597696319.47ad792cdaa343f4f818fb4b60f39eab60c4ff32","_nodeVersion":"14.8.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-1z/ybuldKWZZIH4eZiEILGM7z26Es/qkGHdeQ3av9iPrCIzvmoL2MiALwlMFZpNuSPbED9MRgRlejcULEZXmhg==","shasum":"7e58e21b0c3bc540b991977013476942f2c6a24c","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0-next.1597696319.47ad792cdaa343f4f818fb4b60f39eab60c4ff32.tgz","fileCount":15,"unpackedSize":39782,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOulBCRA9TVsSAnZWagAA568P/jUcqGDwX814FJhlj8Ki\nZ7pKpBZfYARUUvm227oTJehdAt3AG0eWkVxElOnOztDQGhK6Q6ALhExLRxSd\nnNtb6kgYrfPcEsrx+hO2PkADIyh56NYF6uq2sLoc81A2iBAoj6sZjZcKQ0vS\nPiDZqakjRYKy+9iGG6uMlmjY8fazEVOk/YIyWiEwkLTcf9vCf3ypsYwjZUeg\nGfkbU93Yw7Gpvqg79I5X5vrhFy3irb3yOxT31aa/3CEMhrT10Aq0F9PDQOOL\nPWBNRvUt2KiZi4YnTlB5HzjHqXqXqWbT1WA82ZzHdIU9Rn9CvNH0P4tCA35G\nRwbqAENRnpsbZbTuYg0WIfNFQLFBBHOjz9tcET0HPjwg+gtS3j5quGBJCi+F\ng+m/wZ2PfC4QT3GhYp5Q9b2AYa3D1B/6PJfFJu+WLdjlxs704E1Or0jG87LR\nDMfg1mQ0nRJbOSBOhldVPNLJVmPYVqs/COTve2fspQWvepHriFNd0NOvrrvv\nRMdWD/O3GWeRMTwb5I8fDnsjIhVZc0Z9M82KYuEZwmyriTabTZypm9jRFDWu\nWJ/SOD2ztJFaXSxXwMiYaRusAxpITnzdk1WxjqrYG3Gj+QAuOkRuMHNwhLKX\nWRixuk4pdDTLb/z5+mK7EjoTdypSBOeZ5xAq8FCt9b+i4c6D0kcLXsKl77r3\ntaH8\r\n=nrGT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7mdONqBpM5U47SVHph8ytuK9BlGpHP6YjfTs9AgOFZAIgZJQFPBFNPNzCN3LR6xPV9NpzbMn8fFGjzjDWDYKOlhE="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0-next.1597696319.47ad792cdaa343f4f818fb4b60f39eab60c4ff32_1597696320922_0.7156583203547922"},"_hasShrinkwrap":false},"4.13.0-next.1598189069.3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00":{"name":"getsetdeep","version":"4.13.0-next.1598189069.3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^7.0.1","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^3.9.7","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.13.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.13.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.13.0-next.1598189069.3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00","_nodeVersion":"14.8.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-hBu9PS9UoPDSF82w2MgH+8DXKgHj5Yz+ZJfUDFHqLZ+jPbFdOwC/mTZhvMkkxGnhrzmZal7T7ixmbZNnj4OseQ==","shasum":"14e472c99a040964083c5fd44d8bef5ad7217e8b","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0-next.1598189069.3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00.tgz","fileCount":15,"unpackedSize":39781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfQm4OCRA9TVsSAnZWagAANOAP/3GUR7IyqKm2lXMsxPB+\nHFn/SfCi6/cRKpLe7lV3AVTOCucs7l/kbkQiBpdaMywSUVzFgtxZjlSj8cZM\n3G1A17RCh9ZNinIRZmEI2JEjsG+mapF4UGQ0eJYPp3klbaf4sLobEqRZHhxg\nQ+8iDuteKXLaTieZfbwg4QsyfQh7bZYJ2ICYu+bhSlYyqUo3omcPq2R291vN\nGBpFukAOOuwxWpBwLLE8j5bEtsicIqT5jFFlhi364Y3nWA3wOHK87WzTz62H\nyiPkHzmXDiQ4FpzQ+WhDBQ9y6JdeZItRdVHIZuSWOiPNqvM0VOcpy0UFEyvb\nf2vrUmjrDQcxcT0NuC9W/SURJyG9IsrT93YbSl4MM/ZIiaWTqIBpwUOGOu4Q\n1+bKTch9sn3yu0U4YQ+Qy82W0S3f98XH1D9UYlpbY2ft+T8JKjgwyEKeP3/0\nGaIWYvdBW7TLKws1mBwND40u3TmEYlSCg4gB4nNw0jbjr+Nm7ur8V5hIYo4Z\nYumZgJgjXDS1xeKp5lioqptWsjc2aNnuDb6gf4oVKGxEqL2Oir+ttzGH6Q09\npkGnZhTcYcX+I6IIJOHhDQDcMvgKnQ6bOarSrIF25zbIGHdnIedF8pXoYIWZ\ntWzWqBlhnvahq4Sp3vtomvoM2zrZIyOaaObJnN3CcHv3/Lkg4lE0Ht4EIAo8\n87fH\r\n=+/hz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEN5RkwzPQmTU/3almGkvyqEu+uwnMCX+KvXt/dLvRszAiEAwQGtV2pHyTFl9iPypGHYIDvSm2BkCUyxNSBIhXhnhd4="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0-next.1598189069.3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00_1598189070398_0.4471790122527399"},"_hasShrinkwrap":false},"4.13.0-next.1598781702.20d967ad7c5ad224e09feeb8c8665a5c6e99220a":{"name":"getsetdeep","version":"4.13.0-next.1598781702.20d967ad7c5ad224e09feeb8c8665a5c6e99220a","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^7.0.1","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^3.9.7","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"20d967ad7c5ad224e09feeb8c8665a5c6e99220a","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.13.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.13.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.13.0-next.1598781702.20d967ad7c5ad224e09feeb8c8665a5c6e99220a","_nodeVersion":"14.9.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-uHYPXjaJVWZUGicaUk1ouckHoc0vhy7uM3EvBS1sPBpnBH82Ir0efnrI9J96HcFIHCGYtLsPzFIhupEuTdDgSA==","shasum":"7c03e0229d65cd35bc4c601d97c74b15c8a106d7","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0-next.1598781702.20d967ad7c5ad224e09feeb8c8665a5c6e99220a.tgz","fileCount":15,"unpackedSize":39781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfS3kHCRA9TVsSAnZWagAAf38P/1hvvR0c7uMTqXXId4SW\nMgmXLHw4Y/7aySFfTtH/SwN1GVL3Pv9rPfSv83HHOm6vuhVHYt/Jji6WlVd5\n2KR0EvjCVgB3HIzeZQpDsbY9jTcEqTLFCjV4bM8j4DEkV0UpEpYS5wAijp7p\nBrUNVmRZDGeyoAH3ak+Bur+vRdtUpjXiqPYboFa3xavJzRReyNkxvP2G4GrW\nwGVHefGiZvcE/L4jxk0Cp5CPk0XXz2froJJiiCPWTt8oY8WgrvcsjhUkpYEu\nGLOPU48lSuDuUMSXrh7s9rZKWJyNe2AlIO8EdZO1z+73N5a4F9/1usk2HQT+\nnBWXtT2weHPtKayi9bi1o4w2BF43b9nWsAQIgz2luvd/vP20spaPQui10xpn\n4m/elwvEflYSan3XyPn6en/nPV8YElEWsHOgvoke+mPIOJDWVSJ3uS345Rk4\nVftWDqmDGZEC/MZhQLbqx7JWlserIqE8wzS2GAfjaFYeuU+7+WVm13NjS7gE\nE1oIlKYUnYK4cyNwhzCyAwTA+jN8uxqJ886yjbjaUZZWbW04zzErT3bE8yb1\nZ9YdHya4yaC2nAiyEMeWZ68Thzu/yo9ATfsn0LLvmR3vxdVL+4ZKS2BIHjnz\nuysc3o6iPmXYu0HNhS5tREcpe2vVXa7wP+choP2uLGBKla1/dbxIOuGPTvAx\nysFx\r\n=SMte\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCM/WwyIJcENWOuTNQrgAymXscKxn2h8q1xYyATWJr8tgIgGmKxOtDRmbf/7danRY00IgJXYbzIpRrB0xA3Wxz3NwA="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0-next.1598781702.20d967ad7c5ad224e09feeb8c8665a5c6e99220a_1598781703392_0.4247257917454994"},"_hasShrinkwrap":false},"4.13.0-next.1599076419.60541f0d27c849706157976f9d9f0d23b3ac9eff":{"name":"getsetdeep","version":"4.13.0-next.1599076419.60541f0d27c849706157976f9d9f0d23b3ac9eff","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^7.0.1","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^4.0.2","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"60541f0d27c849706157976f9d9f0d23b3ac9eff","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.13.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.13.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.13.0-next.1599076419.60541f0d27c849706157976f9d9f0d23b3ac9eff","_nodeVersion":"14.9.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dD+pOhVdhh/EDVF7T47WT/nc5AB4yoVgc0VXjPcZeMVqkMkIjqg0cpkvvbaIFd9V5SyeTs9kr6qWc2qQxzDkRw==","shasum":"fb36ab30c7df2ccd45e63dcea719fa1c5adffb7c","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0-next.1599076419.60541f0d27c849706157976f9d9f0d23b3ac9eff.tgz","fileCount":15,"unpackedSize":39781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfT/hFCRA9TVsSAnZWagAAV2AP/RVwnQl4QFKJ6XbFsPzJ\n4UZZFCwbaZaYfTZDvpkYPWry38HOC9QHCrmNjsdeLwypxLX2tg5ALi5Ga44G\nraTd4UVado1iWhJMqlEKjpZZECn6pm1LnduILZKyJCGspsS4F1BRbTc4ueET\nl+8UuGYpofKkIMP6OAtVDeYXNYq6YEgwVEMv1OcjFPJUaly7hFXj0+r0drZU\nw6d3GuCrtZdn87lD5uY3lRuoD1KMAGisdZOBBSWE2dDknuwU0P1wlPBiIP2D\nOEc4O5skEevkMIQ8+A/3rHXHCNl4mlNBD2MFAIktdn+MQL7/QuqH15/nfion\n25X6fAr4lYnZaNC/jwuIslGVLdMeL9ZH6wSoBu6D9jOU1MlCFLj97w+N94Xb\nJCLkJ3xyAQ7TGnr0OfY4fITmD2NtCJlMZBKF8AkNSUf87Pvlf5ofvGDoaciM\nb9VHoLkFybrANlVpeZt43uF2lJIifpNLOpLW96MQXBjbXI3krpdWw4je3A0F\nCf7MOyA0oGobpdo18mqnZjrpGK7Uw7ZMSD7KTzhmAjIDd6W6g3uIq/X5qpyy\nPu8yCahj/oTX6eV/mjF6vHhakyRzVMjQEzkveq+Xs5X2BTS/ufT5pLCPKPRN\nlJhknEyPxdguHbyGCWmVuzbLAk+lunXj9b2VU2GhISQHNik8Rkbhn6okVt1f\nE139\r\n=l3Nf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDSxjo4mAGgb9BLtQTfN2hUllhpMBt03PMtiTp3Nr52pAiAmBC5ABkkahksszkZUcgESmgHapbNtGKceSsMRgAUYOQ=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0-next.1599076419.60541f0d27c849706157976f9d9f0d23b3ac9eff_1599076420903_0.2549256374218323"},"_hasShrinkwrap":false},"4.13.0-next.1599201543.01981f3fec2cb05611198625f5355148108b7d13":{"name":"getsetdeep","version":"4.13.0-next.1599201543.01981f3fec2cb05611198625f5355148108b7d13","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["typescript","import"],"engines":false},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js with Import for modules","directory":"edition-node-esm","entry":"index.js","tags":["javascript","import"],"engines":{"node":true,"browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-node-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.13.0"},"devDependencies":{"@bevry/update-contributors":"^1.15.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^3.9.1","@typescript-eslint/parser":"^3.9.1","assert-helpers":"^7.0.1","backbone":"^1.4.0","eslint":"^7.7.0","eslint-config-bevry":"^3.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.10.0","make-deno-edition":"^1.0.0","prettier":"^2.0.5","projectz":"^2.14.0","surge":"^0.21.6","typedoc":"^0.18.0","typescript":"^4.0.2","valid-directory":"^3.0.0","valid-module":"^1.12.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-node-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-node-esm":"tsc --module ESNext --target ESNext --outDir ./edition-node-esm --project tsconfig.json && ( test ! -d edition-node-esm/source || ( mv edition-node-esm/source edition-temp && rm -Rf edition-node-esm && mv edition-temp edition-node-esm ) ) && echo '{\"type\": \"module\"}' > edition-node-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"01981f3fec2cb05611198625f5355148108b7d13","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.13.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.13.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.13.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-node-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.13.0-next.1599201543.01981f3fec2cb05611198625f5355148108b7d13","_nodeVersion":"14.9.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-UYhjbCTOK26jETqU7DrOHvBE3ykd01bAnej+LYotFHISptInjexldbgx5ND65pTSSQB32nHO2cE6uFjrf22TwQ==","shasum":"ee0a2e121f717b82dbae4409ec47bd9b8b3ce489","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.13.0-next.1599201543.01981f3fec2cb05611198625f5355148108b7d13.tgz","fileCount":15,"unpackedSize":39781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUeEJCRA9TVsSAnZWagAAn1IP/082qGUEsEBL+iWzPyvn\nH/Hrvunnkyv1CNcKxO1OPN/bvnsNldG2+JnDtqm7hOukksPx4k1hGro92t6B\nlpbyYQGRgaId4boEsjgTUtUdsviVxCTMTkfI3pyu4PPuPlHzvc8qsX3OoZKz\nqNowsuAeBVrOfHyafd0gduBnNjR3V4LrFi7FPGZ/gUewGNUdqz2S7EZ0NA7a\nATE0Rc6RumeYyHF9cBjgq49Ti2/M1vSCS6lEyT/TOEpkQiDFw7xCJK6iyLPz\nB9t7L/iVpRpWOYnC0Ynr8LOP+NrOWAMv8jFBmZ7zUB3wqvPMFnlkxvAjVKMm\nUIjGdx/xr86sQXZEdPG/gxLzqwiilrIV87B08G+VxuPL7Ob6E1KHC/xUNIxo\n+/9qplTInbY6ug5cYqRMyaJQQNVH86fHHPvBqFQSGYLTGnFt7HdiFZsnWOnC\nm+1SgITquJsLlZQLoixKELfwpIsGF87TX/Za90O5OvY8RbgwYu28IxR/hRd1\nEhj5JiB+bUah9CKUbAnaklw9InkqsnNecTIwn0RVCxyAqYFvMZCyOsECwIWU\nY/afiBnfEL0jY2Sc++BmjKA4Q0Jf8srMO24Gwq1qRAxjcuSJPrpFIwvc2eUj\ney8cTCozQs39gkquDvRh57ZstNVJrmffVmf3+vPfSSaa57IxNXX4uSTHSWdE\nursp\r\n=kx2L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqmUIGT1xMGzloZFeY1UxHHb8udiT2ev33ZPcBOxo9WAIhAMH6k1IgmckUuOaCQHP/r46lSp1KoGw3rtuae6JwmsL7"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.13.0-next.1599201543.01981f3fec2cb05611198625f5355148108b7d13_1599201544930_0.6970736568941238"},"_hasShrinkwrap":false},"4.14.0-next.1599226282.8be7a825208f47498294062cca55d16a1f9c6e09":{"name":"getsetdeep","version":"4.14.0-next.1599226282.8be7a825208f47498294062cca55d16a1f9c6e09","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"8be7a825208f47498294062cca55d16a1f9c6e09","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1599226282.8be7a825208f47498294062cca55d16a1f9c6e09","_nodeVersion":"14.9.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dZzfZ3F1+8t1KkTuEiomW0w0zqC+IYjyekSePhZuiMBC0YE85cnUSPGUAzz81jOcy1Zm8jQLUd8FkcSBBSgIpg==","shasum":"863c4bce231672c83b1c463e6f420f94267d07e6","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1599226282.8be7a825208f47498294062cca55d16a1f9c6e09.tgz","fileCount":15,"unpackedSize":40164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUkGsCRA9TVsSAnZWagAAd6AP/1RHajYfve0/+SP4a4Xe\nXfqS+0QzlkDmh0xiYRvYz/6awkS61FWP3WTqKHtF8+bbS06MKEqogVZRdx4k\nZNTQQoZQgFuFG4c8+Jo78OOq5wCk5WxAIEgXbL/xIqpAFOcwtefPzpUlQGz3\nq6HfS+UwbArDgkYVDCdEIWBysgr0YHirr+4Nxmo9Inw+z9STvggf0gmwOJBz\ngZxLk63Ckwoev/8C1+pMkM7htgp5okXpEAtEzWzELZ6JuwRQcZYYD4OCyUY5\nRh0O475GkV+OsUCrgt2nRsjWJ4xAPIW/rjZzRuHBUMhg2qPnshIp8uziC6+H\n4u9JW9JcuB9DAhQZhE31xuhKgr+dBe+WP3VXLLYlNNPOew1s82ThTyToBucD\nL/03JmdwXJY9fuMRNOij+EVhx3AteFwUFp2mGZIQpb/KuSwq5LxUFTptzI4u\nc8Bf+c4dtFNW/+He/FpID4MF0Oqevtq4VG66BYnguJPd5+Mz2lHw3zF+cxVt\nkFIsp/cVr8psHWppoUmFcjrCKYc6tvJSVrqmFfsCjj2mlR9NqQW6qlnPtOzt\ngp0Q6VL+OLq8rMm+zXNrpGc+t6SUcZZfWFriZ1U0eAKsYqKc7oC5HbLaPpan\n2Iac3ubDVRKP2qL+LwExpXn4baBeHWLer3uN/tY63JqxXIqQecJpvgG55vcx\nPRo3\r\n=MBcL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBxnlgxXjq3R0JoDAlqPxzl1X79QeHTw1DSHY6PIi2j9AiAgCwmGREKZ/r+h7yjQL7Hk6FIsCB/MmJIWB9wuRlWpVw=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1599226282.8be7a825208f47498294062cca55d16a1f9c6e09_1599226284088_0.8960980867034298"},"_hasShrinkwrap":false},"4.14.0":{"name":"getsetdeep","version":"4.14.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"8be7a825208f47498294062cca55d16a1f9c6e09","_id":"getsetdeep@4.14.0","_nodeVersion":"14.9.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-2Yj5tXseqNo1Pa1CN1cTyo5A9HZbi7dB9ZJ+yNmToNJFfpZyIMTsBxWYeGEmOchPLBL2E/VUxAcx5gP/MVUwOw==","shasum":"73fac6704c12228af842c595c600689b03df45fc","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0.tgz","fileCount":15,"unpackedSize":40107,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUkIGCRA9TVsSAnZWagAAEQMP/04SjXlhCEfnIV66Bd+e\nL/rkKnZHa9mY1qgYuxPgv/qHK205dTn8J5I4KM2bqRLiD2v8exksbKUuzFlg\nOpt7xzTPxuYPohVZE37sL9LGS80YKyVP8aE2R1j+1jA08DTbY/WP6jlB0Lx2\npJR2yNQoGMZ8mwEeRT2tzs3wXwTqvnf+5mZCcTWAcl5zSonnNn/qAo6iNKkE\nDl/0U0+osE1Jy/LANZ4Nn6Fyb6rJgTNqRD1zVQMd+AttzPBQHl5EymXWDQuP\nbcv8e9gD7/+aGaiVf84aYHABQRhtTKJPZqEaTNjyVDm7rSaQo2s/15mVNhk2\nGwyHB2cMnGfv4+uEMsk+6s/pfL9OyvFQDuiz2lYUx/Em1FkRBV2d7NrmZ2cS\naFNe7Xt5jpvuPnhuMnJEFj//7lCAc26o68CLGWHV8IbMVeCHZDN6bT+y+asG\nyHxcP3RlHHWt9rwrZcUqbmnkhiin7gOAp+eHy+cxWBj/3vqZtjQz5nwsEx8i\n/0/nzYZDaskHIxlj95AtcUe+TZ35lW7DhdT7UqFId4uX4wPMtJUhfaRPbenN\nFs7RKOYub6k3Njdkit8r5eTxs8Wl05s5d6+jN95LBvRZyogy7VxOHIFIKCbV\nk62LQGLequCpdGIM2Oa83/B4ap4HeLG7+sAzv9q5K0xMNRBBUw3cjy/olQHI\nU6lb\r\n=pdXG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCL3X23opYMetU/tHOZhiCIeuww83hu14/xmcF9V66VsQIhAPQJJtAY7Vq8ESHYMo8W0gun53ddP1/j+KDM3Msobwx4"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0_1599226373987_0.12211751181213315"},"_hasShrinkwrap":false},"4.14.0-next.1599396760.2cd886dd0b9f4109854fa369e46038a3b83d82ef":{"name":"getsetdeep","version":"4.14.0-next.1599396760.2cd886dd0b9f4109854fa369e46038a3b83d82ef","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"email":"b@lupton.cc","name":"balupton"},{"email":"us@bevry.me","name":"bevryme"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"2cd886dd0b9f4109854fa369e46038a3b83d82ef","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1599396760.2cd886dd0b9f4109854fa369e46038a3b83d82ef","_nodeVersion":"14.9.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dbqM6LeaOJMFvzq2VGXt21PuhIsSQYUA0YNWKJ/Z3Jr5Rw81o+BW8FQfXZ+4vLbl5l+C0qBLWpT+YLR++asl4A==","shasum":"d42ff36f857301c1dae6dade2969da3ffc903ab8","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1599396760.2cd886dd0b9f4109854fa369e46038a3b83d82ef.tgz","fileCount":15,"unpackedSize":40164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfVNuaCRA9TVsSAnZWagAAnmUP/0VCViT0WSO709yRUjU9\nfE10Xf1moNkEPO589M0ssLI+rg+fn0AuDFjKXIG8tpA1BxQFJMr+IqbRTrDt\ngz2s5cCKbGo9V0zofvjnKPGtNz5pGmS9TsYFzjMRNGAmCQ0xRZiMtmsS30fL\nWmW2w5QLs0Tjb6awJi3RWZOxHcB2Z/ZV7ECZw1GmP3uBxusWQxYqAPxjYK/l\n/Mz6XnDcm31lIbf1jPyrQsIYVyDnCwhPbqMIMt3u0NTGmAWQ7u0kT1cSw2wf\natEZ6QxCFvNd4RxY7ehXWt9/FsLHSE6U+VTQo8j+xDUDUXgpr7Uxh87kSa61\nFO0zau7OOcIOqJ2u2yoXtQcd7d9fCG0K+joBRXlF2x1se1c+YHgajayE8+WM\nKuf/F2p4GWiD7trU3C3kVhfN7pqWy9jhsbp52rkYXljZmbklV1VQl5IsXUdV\n105uw76cTBtD2Ov+bVp2Y+XEMfsKBkHLeuC7cfHe33XD0lnD0rzxmx2CnOlw\nppIbFtOLNvEsmtKqIt2ZfD6pE5JDCvExhuN6Kc3+ljk8M+2WFKj8es3HgRsf\n+Q9g5GfuZnhpDPh+IL9k43W2pC3T/2wfDWu8FkjxBAeayKIpPD8MLWuG01lr\nriIRNwtS1/XYJ5s2wn/lTsvy0arSI2ppFodiYoUfmmWCwK27u9+gH6dOxulM\n/kO2\r\n=SL5m\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCf1oWt34ZmXlVyXEkysOKDReequekJpYM86Uyr5iPUGAIhAKeQGCWoxgcAvlP1XK0ZaIdMUPCqIRISG/xGE+5gjkYB"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1599396760.2cd886dd0b9f4109854fa369e46038a3b83d82ef_1599396761995_0.12349850919596084"},"_hasShrinkwrap":false},"4.14.0-next.1599996159.aa5c68ddde736071773a6f450a905539003fe7e5":{"name":"getsetdeep","version":"4.14.0-next.1599996159.aa5c68ddde736071773a6f450a905539003fe7e5","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"aa5c68ddde736071773a6f450a905539003fe7e5","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1599996159.aa5c68ddde736071773a6f450a905539003fe7e5","_nodeVersion":"14.10.1","_npmVersion":"6.14.8","dist":{"integrity":"sha512-w4PfiSMHGJvGIQCJLDWvdCpSx/hyZFcQqn8skvsDa78TLDTR43kR5usQYtDfrgYuExFJE8wNNbqSMRlK+rkVGA==","shasum":"170d663ea6f4381db57a77ed3de3031498bcb6e8","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1599996159.aa5c68ddde736071773a6f450a905539003fe7e5.tgz","fileCount":15,"unpackedSize":40164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXgEBCRA9TVsSAnZWagAAuPQP/2RwS5XnRmYcuDB7jN/G\nchYb45tCrAU4sOzWAg2MAItGfrXqAv39SMTgPHU40LLYTLjLmR4VY19I3H+S\n4vXxVYi6nFd/lFEjmBbwyosflR2PYxOv7/68RBPZXb6QhGJih60sNJiPwYLw\n4T0/2H7OsP6V2nMFTHw3rogtKgBohuZi/xTdn4MVB4NMatyCj8tlqcsGrj3c\nRShg9369z75j/Qan5uNzt+KqDvQe7G3zReYCmUP2Z6R30GBPYPPl2je90WTT\nzPCdgZxsvazeZ0O7WE75TtlloEITzHbO5UjV6CGDFuuzVIbDB0Z+0BqtvSZW\nvvC2i6nq+8Bmzeq/jOfVjr4EJF/ZaIQal6H9EfSsDLXDBk47ATKGpPkyu7UV\nndMZw/rHwPlvpRzccGlDV6dW+jvgHBoLAiqiwP0n1XjUOHyzcywJHJaw5XLP\nWRPn5SPDoRRu0beDVpLilwL4SNz1rihfzn7VrKLqc/O4148D14IW9EkQdw87\nyxhDlV1OfDHOP3O78+SUWSHzIbSFvaWW8xTTL5pqDdgPiUHNYk5/iau/30Je\nQbiCelB9gdWLmIc1GyoHVFH8OyssB9OSXWGxTOlWajEjOO/N8kSdT/oewYTY\nRGb8sDVyqH2tuWLG3tVKQnFZDsSIIu82qyflRPLEZTNFPs9ZafvlEvJ8wRbB\nFVsc\r\n=c/e+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEB7kXBUC8Hc8SEcqd5066ndt421AFLhm6OASlpo0N7rAiEAy5fm/f76cXOEM1mkgCfAURuxU2zhCrsyj/8iwObU9DM="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1599996159.aa5c68ddde736071773a6f450a905539003fe7e5_1599996161260_0.942568335504532"},"_hasShrinkwrap":false},"4.14.0-next.1599999215.c49186232e37a8799089a93963e978ee508a066f":{"name":"getsetdeep","version":"4.14.0-next.1599999215.c49186232e37a8799089a93963e978ee508a066f","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"c49186232e37a8799089a93963e978ee508a066f","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1599999215.c49186232e37a8799089a93963e978ee508a066f","_nodeVersion":"14.10.1","_npmVersion":"6.14.8","dist":{"integrity":"sha512-pbMzmLwQjNQfYjOwgtwKG2skGOJSIzV1ZW8Eo+RiCQacWBx/rEOEHAB1BtgyUVrShYXYijF0Dt798ny4ERPQOg==","shasum":"fb75c8d4b8edbeb78ac7e19ff31a6a9d16320f70","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1599999215.c49186232e37a8799089a93963e978ee508a066f.tgz","fileCount":15,"unpackedSize":40164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXgzxCRA9TVsSAnZWagAA7QEP/iFzneiIdr8kCTvBm8BH\nS/3CJpC7D80aANbFaP65Z7zjamcTnGFAX3kPs6KhnszxCqQcX57ji1k8aY1q\nz8mGA1QLHX33Pli3+R2glWXlZqAoMDNIM0UJ/ygxfsOqEt9j2oZiwwUXxYH4\ndJ6wgkUKvH2FtgaHvIJqS/6Nuaqnxb0bCMtCk+BtrqZbjnFMdDkMqk64+zWe\nrCFr8LAnWTR/n3YedjsM/bybEjQTiCNIjEQL2W081vvOsxl17mCih54ovKrJ\nIiAMJ45ZIIUZRbhG0FKehNpgu65GyfV4w7Xn7Rniw0j6DRDgodz/6Vf8uis3\nqHoECJFZ9uKwppOzVUgbxFs3KOgI/M8Um6mYjS/na0xsQZdh/IZodRsE+k8W\n2BCVhUiRHzvXkEmiB49/ZnieQMopEB+YR7FiizxlA9HI0wQb1ytG/RQRs/HG\n2S617psORpe4ewq5jmFIyv2NtdMRIo+1vPoJEXhU1cv34L5IKHBw+EmXpeAM\n71RqSAVcDUHerUqNscVtBEUQIwaHnunS2AswzL0rYlPnpdUvsbPZDGuL/vVu\nXFGT0+zOQ/ywMLhES2Bk0jOf7N+gias0CPBbPdAITB2AX5nj9S2FEFtRLAct\nAQKn1N+Eic5llej2rdtDtSgyhoiXgfNa8X9epa6gFLZ7uF70y+RUSV/1EHQL\ndlzh\r\n=3XqT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHrjm+2wjbduCE/DdpMmZ3zk0oc2nKNlw/uhNjAAefL6AiAPXdHbONuzU05RFM+rwd4Lv/Cbg2sg7q/UMuNFn3n9Yg=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1599999215.c49186232e37a8799089a93963e978ee508a066f_1599999216643_0.5315381567773905"},"_hasShrinkwrap":false},"4.14.0-next.1600605197.3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05":{"name":"getsetdeep","version":"4.14.0-next.1600605197.3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1600605197.3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05","_nodeVersion":"14.11.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-x1EO8FngCHeBykUSGtlnDFdgOPq24oewnucCVqs//nl/b5kxtxE9rMnlMZOJO4HmiG11Ux2Lzq+TQFhW6OHrmw==","shasum":"8ddf50a9564438fd8a40fbe32ac687c01fab36e1","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1600605197.3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05.tgz","fileCount":15,"unpackedSize":40164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfZ0wPCRA9TVsSAnZWagAAie8P/izKPy/yGXQ1zJU7iCwc\n3Ym8eSYXt2cG87nsDtpTBWei66joh4Zmajxpx7F+ng5zmnNJUIqIBcS5CY/B\nWeBllEFLY9JcJKMGKYK1WHf4xs3XVo8is7n8tpE+tCD1yxx1XXY2py5VYxcM\nqlOiYuN9AEQB7gFuXt3j2N9NOBL+R2l5XfJIrUvcg9fjOyXG9emnfOjlsMwg\nGyeLnHM89zRjauqHVTQ9aCrZzS6dw6//zJBLz7jn/x+I82fWPqA7BP+FXX58\nxTKQ/46EV4qVc/WnPJFvfYapDoeogPrFzQAMCDOFOToDlt+n5qY+QShQf8C9\nlHD2Sv5MVJ3e3res70fyO1+v7vPjxxPq3W1yr94m/UNaRpTdsNxB2Oag7xjz\nPLzao5y8XmCQOS0bW839Q54Pjm3uRzRIEhoLaG89MBGKE9Jvq25z07Xd8WMD\n3ovt1Uj/Qs9vgnbHby3j/YcyoWDds8a2jT8YZItZdl/gbsY3NTcqKJLhsymW\nPoSqE9P3ooDXPfgSqQNcKMLudSLBBpmy8GPMv3ZkZ8fkTqQTTH9EsgQXp6cM\nkoc5BGvd1m90FBIYTRrjw4skOx8MzdZmSbxHLBQmpGsUewUsCvKOuCAOZfe1\ngVBuUdHZ6gUSQtpjDAzq0TxGAAh6Hp0LlNZD1XEm2SckWkkLvcWYCH51EUx2\nj3an\r\n=LFMR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEy5T9S8do7zo8N7GurhMDCIGB+ciUOQzgpZxdf0aTuVAiBw6WbCp+9btsId5mtvdTTAuSu7vaHtgnEUq8DGfuQE5A=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1600605197.3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05_1600605198897_0.7262035393767201"},"_hasShrinkwrap":false},"4.14.0-next.1600607406.c3d002ca6b229db20eba19ba0958f4348b7b4793":{"name":"getsetdeep","version":"4.14.0-next.1600607406.c3d002ca6b229db20eba19ba0958f4348b7b4793","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"c3d002ca6b229db20eba19ba0958f4348b7b4793","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1600607406.c3d002ca6b229db20eba19ba0958f4348b7b4793","_nodeVersion":"14.11.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-mNw1CC/s46kdjwbUrXlf+8asQBstsrsk+xXLox8jfLjAy3ze+KDahmAl+M7+BpM6TZyolWMfH9ErUYzkojhMCg==","shasum":"bb957cc5e1b4040e93cbbfeaa83f240ddad4d3ba","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1600607406.c3d002ca6b229db20eba19ba0958f4348b7b4793.tgz","fileCount":15,"unpackedSize":40164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfZ1SwCRA9TVsSAnZWagAAoCMP/Rd9AYKAlCsrarpuozY/\n16ApZFnGIrNwy2AOwsMRwfXWV9oQi9CxwACpVLVev3IvIZRiPseShpV2OUC+\nQW+G5xdaX61vsCsfcCvLea2nKivnxhmbJwz6mWNfz5gg0NXjbLaei5zcotl8\nidYqvFAU2mFzcA0dJ6ZECx4Ovzse7zrz6kng6MRozXub25qWDT9wlI/ltkhP\nNPLTF1MHBfAo7a8033fqa11WiyFzMTGCknUCARyrurklWPlPYMZKIUQZLKQv\nL7L8UGCLdyTWydGic8/Hf8rpG6QvCnvG1KexPtTVJzD4GZnrYB8vMoIaAL7d\n6bkMxxAht3cB+uaDzPNejGjDk0bU9uyuyv6A1ndYtomu3/p6XlcK9EnmIedg\n6fsmsulZNWnn6HxiEP6cSqI+K15l7H407ZPjrc9dM2cKamD5oQJpkaFk15W4\nhzTBMbm/7r01HznBrhXXn15t2Vaquy8LIkNmAlj7vil4jXCxDeSSLBuA8X+Y\niEzN8djOIWsi3pdKOhl19nZeCfL3S/Nvk9BtsQvMuhbtDQLj3kY2DwXd3Pxo\neTHrzTxV786miv19QVkmuQbboMdJgRDXeKDbmTGTxmZy+iiu8IsuIQZfQPWU\nT/8OV4TWJlBN1GA48yqj/WmgXxJe2IqG95KV0APrQ6hEOARUvJVs6T5lyNTj\nWG3s\r\n=Q92J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEtLYZrh3No5AkUTOwJ8tidZi1CWfZtWo0f/CwytGacUAiEA+rsR5pbX/DAMmLRL8wHDFahD3NuqqaeR8gXnyAQMIQw="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1600607406.c3d002ca6b229db20eba19ba0958f4348b7b4793_1600607407911_0.7195592381947093"},"_hasShrinkwrap":false},"4.14.0-next.1600861509.4219ecf6401c83075cc3a9df5dbba7ea590f470c":{"name":"getsetdeep","version":"4.14.0-next.1600861509.4219ecf6401c83075cc3a9df5dbba7ea590f470c","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"4219ecf6401c83075cc3a9df5dbba7ea590f470c","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1600861509.4219ecf6401c83075cc3a9df5dbba7ea590f470c","_nodeVersion":"14.12.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ZtCzm80657d10FCoO4eS/3SpkcL1pcPN9/VA1dHUuULcqyw/BvRE4gEMF9HiMqqvVB2CgJfszyslsEZWc/fvqw==","shasum":"757883c05d395eaf0f3c1cf193f8e53e5b3258b6","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1600861509.4219ecf6401c83075cc3a9df5dbba7ea590f470c.tgz","fileCount":15,"unpackedSize":40609,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfazVHCRA9TVsSAnZWagAAB60P/iVIPO6hrbjFY/cdJTSd\n85nOprBZ1OF8PpPAhDRe2jReGKkXkswCSztYfTCIJ0dA5TOsJdvZvphkJ/6L\nrQzCQJ3f5bft/FvaiGzVVroLQ8Xl5ZMsdHz9LKA9JNkQjRWkWjmayzDRD33D\nmcNmJ3Hv0+7syH+YWuW07KbLdXczgig3p04TpTVddrn4VJRcPneLK9buRNDw\niddbCFKHxXEOlIko515Ks0HlFLUfF0owOy5YpqcmYajpqt4bmJjk2qWIIRCe\nxRNP/qcmbFE6F8wIBczMu5fuiCJ4dD16piD2PqpzfuQhOPOjqB+B2QujWoc9\nGS3QZDdSKsci7dbHsjDWLYrnDSE3U9hb40/E0/ZR3CAsJ9gxnvUk9ckqdqmO\nBgYa0k2pLD7aLIdLHxt31Yfg1uGC10uAczipeU3F43NQEMjzbL1EHdlCPfcf\nSu20qf5k10CE4/aXHJhzvOxDixS9VG5BNOnF+d1bVHkjRh8oKPzoz3ZTG1BD\nndQBiBqAin7MlvnTSHDn6q19abrZufDKwKLgI1AmmT94y5HwQmAlVMmDv4/C\ncWrGcyDg2H12x5RKhsHDkf8xVEpeULhyGcPBrFM/lqx+6i/gq5saYxBIlVLG\nfhlHzywbzzMujN9tE6QWEDM0HIkQsfyp2XP9CAfWAHzn5fFdirSj6zWosrec\ncgO2\r\n=LM5y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVMiL+LQ3mlg/QJe3NssIGC2RKZNOS67dAsbqoug7HRwIhAIfu1QHf7bt1ONdQJAokG+S3OJB4/7bQfy8a4umUszK6"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1600861509.4219ecf6401c83075cc3a9df5dbba7ea590f470c_1600861511153_0.8859544420991381"},"_hasShrinkwrap":false},"4.14.0-next.1600861592.788f17e8b965ce47645f81048e6ceeff24e94afc":{"name":"getsetdeep","version":"4.14.0-next.1600861592.788f17e8b965ce47645f81048e6ceeff24e94afc","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"788f17e8b965ce47645f81048e6ceeff24e94afc","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1600861592.788f17e8b965ce47645f81048e6ceeff24e94afc","_nodeVersion":"14.12.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-FvrKes7kI0X025iXXEGmlIhLbctk3J5b4M+NRNEqEC4fHQ4yCfZTuNgaIZiKwLa2b+ulUIWd4ePTxl/hX71KXw==","shasum":"661e4fce2ebbd4418cdee834e9358e6df6a73ab4","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1600861592.788f17e8b965ce47645f81048e6ceeff24e94afc.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfazWaCRA9TVsSAnZWagAA+kUP/i27xSF1b3sSeuAKyZ0X\nu2BpISj3YrM8JVzPwMAM4CgovVs8ZG8eMOBa59KAfnD9pzaxShIfOFjV/ccb\nScVqREzs4xyksoZ5OowJriGuKJPjMLT0NIl8rQ+OVuPuc7FXIOA+Wxpschgd\nGVqVJ5IQ6sPEKIQRVXxCBItY3CQ6YjPAdveF5d4QhuiQ7HMzYdfXFFcGDMd6\nqIZhj8GJUBimZFQvlaHgFruifazhj8d01fEdOkRW1ngeA2/a/cib5DHyoyIy\n4ZPpS3Zwg5Brbbt+UkV6rlynNWaeHoBEgMJcZJJradwGVDID3jP8z6I2KOKi\nSbdRJZiQe9TLnTTH0dQnx5CN+f+2O5sPKRQjPNoHY7aZwGB3pql4Q13Joct1\nmYGkYpyuYMAWtt2zVE/Ix1rzw5V7gp3KdCHvHLYD4YLl34PcQqpFgOxdxdCD\njLN7TmpSISB5dOIUPelPSfjRxErlKeaw2lpljK5eOY1vaPNghBUEsp3u/iDU\ndUU5XC6YQ5+XKDXoVvCYVftUl2OkFgNAHeOezBjM/mVTa4HhGFEfUbzs/uKc\n+yUOtYLqFV4eKUEztLqAkB4kzpCqvttr7uzvfAgH22mZBEYdrRLYyX5CLQJn\nxHVKR2T0LgMQhvFtG4spkB0QwQhmFcUFf4+2HvulhAIXrPXKpQ1ulj8b55oY\nTf2m\r\n=bQza\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCofaq9NQRSMTEqa4dqfJDxaWg+s4R8pBmuZ0WDSeXwSwIgZXXQVoFSMKctkXVYqZY7GP4b7DAvHBT6cPasl54MTgo="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1600861592.788f17e8b965ce47645f81048e6ceeff24e94afc_1600861593640_0.3541104056133806"},"_hasShrinkwrap":false},"4.14.0-next.1601214071.bb92576055ef64a0f9fbe435a26858de3153b860":{"name":"getsetdeep","version":"4.14.0-next.1601214071.bb92576055ef64a0f9fbe435a26858de3153b860","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"bb92576055ef64a0f9fbe435a26858de3153b860","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1601214071.bb92576055ef64a0f9fbe435a26858de3153b860","_nodeVersion":"14.12.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-w78OyMWLcMPuROF1G5ZYnpSLQZepeOGb9+xILTpItYa1zmn39FLwZSK2t7umIM2YbNA3EZT+MzBfnx1m5faOfA==","shasum":"7a10944dc85432ae7c26a3b6917c71942b458236","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1601214071.bb92576055ef64a0f9fbe435a26858de3153b860.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfcJZ5CRA9TVsSAnZWagAA3kUP/jV8cWDNtnWmE0DH7apF\nDpUNQtSHZ+COe1YmB/FiRQ+Gk9m9wUE2ATZDasNT8sNwW/0vJk5EnFiOlqWA\ndDGFhnaEfFq69qVUT+4WVKwx5k8PX7Wus9u/AcA3kPBxiPBJHUkcsBicTTbZ\nuM/KHkAr9nV5pnCObsB7ImtydQvWASnykNAIHms7b1b3smWzEC3RpF8LUGr6\nFCI3qCSOXIXlfSYwIIcxShSL9EsmxKTPwXLjQyjJ2kEbTxpH4lcHUMiAllgw\nOPtdJoNYgGnt/5fUasmkQpGkp/6Ue7rocsWwRKpiJz8T8s8Vr17U77cuDH3r\nnyWaJHoCDwvfoenWDCWfaRxy0D1HZ9OrpgV/k42fE833UFXHebwnqBV8rgrK\nssYI7IQ2D8puWG6aoBqRniVca6Fh5az2UTNXOYBEs9SfQA3ZAGuVB+Fx1VBN\nqf2SIS5nPmRXtuKV2clk/pb4q5JPdM2zo7vfILHpzrYFNj811PgdikzmLaZc\nVJk7tYrSKFvt14BI1pjZ9SSZ+2ku2ZXcvNbNweOeee8ddh91HP3frrhsHJZG\nsKt0T532PWePzqP9p+xv+vYuT28ayGDFHwLvHwt8Xh/ytbxy/uO80Q1DVBVl\nob51jFZbBmVyeA+iCnBbTz3TwSKWyV+zJnudcynbTd7kx9G663ICFnChVHwM\nNum9\r\n=hQxf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZy6wilIERvoBu1NtOYPMi7ZyuCp2ydZY7YdArY6oHqAIhANQQveO6IYQuwReHLGRCBKZaK8reqLMwSDP2mVEUx9Ua"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1601214071.bb92576055ef64a0f9fbe435a26858de3153b860_1601214072613_0.6288630471638958"},"_hasShrinkwrap":false},"4.14.0-next.1601797746.0472fc9b4ba0164acb27d66dc5defe1e048b89b7":{"name":"getsetdeep","version":"4.14.0-next.1601797746.0472fc9b4ba0164acb27d66dc5defe1e048b89b7","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"0472fc9b4ba0164acb27d66dc5defe1e048b89b7","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1601797746.0472fc9b4ba0164acb27d66dc5defe1e048b89b7","_nodeVersion":"14.13.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-mf3NqpW06g2pbCfd61BT1LiD25WSW0Hsj0A2dvFw7kNFAEWOUmP8F0KeVkEubf/UZui7P+IicyLzXq7ryjYXtg==","shasum":"059b5b70e422203b03dfa52868e71a93acd5c0a8","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1601797746.0472fc9b4ba0164acb27d66dc5defe1e048b89b7.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfeX50CRA9TVsSAnZWagAAROMP/inoSR+OAlPnekGULRYu\ncEqqGdTj/byxV1sE+xcRMvoWAmVRw6gsptWV3qvFZk8n6eYi+2vgnaQxCH84\nq/kPjUu4RaX0uOK7w3IrwCfp1ineJ8MeJB1MlGxKcoif9uQOrjdX/HGVE9L3\nONESNbncbdCcKrDeK1zRRMNTjUpZO36biM8jASr//uJQJq9mDHHlvw6SmNzE\n6q3cVMjvNv5UzpJdHYCMeDZF3SU/4ybF68pNXwiR9e945WcFz/r4FI2bJVhJ\nu11TfMWMBsDZpv5jScEItuDXTtMYP3fUmMk1l1V49PGlAasWn21gScjDyl2H\n7nhNjPT0AtKFkkpHz+5XPp7ed6bPSCBhWzeNYd1XhGqWCqYFDbJGKJQJpAVn\njQAZA8bn6oAwgv28HiVty4fuwRN8E/oiIVyDYrCONdkE3TNdOTfmEF06G200\njtX22NbvEAOLR0juu5xUdAoZhmDkIenb1ACP8Ffris4a3ANVJ9KWQkLkxcGV\n+sXPEJw3gVpdmbvTitJ7pcQ/NVK+dZ+Pf+aYFEEcvEeh4t6LjFIVhvdLAK8J\nCbCKHW+Cx3kwjjP+CbhH8L5JeyUKYFOs8ZQsqJmn8iFkUjYevjqsJn7LcKj+\nw8ejuP+hsU3ZLJHGNMSmKVcGsWJ+2SlD2GnOmutCvj0pnR/KZ5sXPL3Q7tC9\njJ72\r\n=TIrO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVMSQQHUpVIAagMo4W59LunJAAQXNgDpsK/TmkF2VR6QIhAPBRnDjbM5V/QHj1sJbgRZEpOj7Igrx1L614gkv6wEs+"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1601797746.0472fc9b4ba0164acb27d66dc5defe1e048b89b7_1601797747593_0.29595242323776305"},"_hasShrinkwrap":false},"4.14.0-next.1602407232.e4a333d18e6f2bd5f9867289664be265b5bf2aeb":{"name":"getsetdeep","version":"4.14.0-next.1602407232.e4a333d18e6f2bd5f9867289664be265b5bf2aeb","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"e4a333d18e6f2bd5f9867289664be265b5bf2aeb","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1602407232.e4a333d18e6f2bd5f9867289664be265b5bf2aeb","_nodeVersion":"14.13.1","_npmVersion":"6.14.8","dist":{"integrity":"sha512-YgiXC7ZPu899sFZHH8DIwKs+huaScJRnYZE+QUJtga6Ixe4QY7Wk9EM+Y3hO683MYE5E1T8s9/sF1KuoutoIpA==","shasum":"761084844fb0eb15f1d12363c441831e44159bc7","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1602407232.e4a333d18e6f2bd5f9867289664be265b5bf2aeb.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgstCCRA9TVsSAnZWagAAaQ0P/0uW1f21FF2J4Pcywsd4\nsgM3zjZ/S/b9nuMDCi4wgDHe6pS+omol0cxAPz9L3SlzzX5OTS7QaLDVileA\n1yxwgQtxLxNj3wMTsOIxqyk0W7FjP+76+vkT+FaG3aO3/ycAPhQw8SRldRqm\ngJnf5gUDKoM1zcWYJd2/Hqs6aaMVnZcDQTREsHaQcLiW5xitmBcAeTBhi+9U\n3PC5Sqt9LZS4lZya87Z//rNHxaOWYOS8fZRzHy4/WlSPFaEZ3Uv0I4M7cD9o\nhpGGIx0PuuTuKYcUXxgzS/u3MDWWjny6Y9sjEgvHwqH0LM6o9bS8aACJIhSe\nIZHG+/+EmFxekM6lHnT/S5aQFv2IGiamlq/I9/BL7d9udzhtLz1hqQliIBuV\nEdLRXz39fo0uQG20fbLfYx4ctIVvC0hgIQWNtXnT+QIOXnfrQ0IykTfbuTKx\nqHE4bVnNmuAww/R+YIY8X205jhTuHTBdqfs5sIZdOOsgzNUIjB+v7TNKaZ4N\nPrUFX/+JPmFs7mMl/be2C8dCiL8ilURfP/2LHFvYM+Z32f/1q8imDJqL0+V7\n0g7dd1n/C4W1HCQY3tFL/HLIFD+hHgnFfMk2qGJauF4TzAHvD8ckIytDZInK\nD21zePJRiCA6BiVxVIanUMDuipr0UmK44L+WY/gK15nCQgJxrekZt5TewdHN\n8p01\r\n=DO3o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE2u13W2kJ1RgVzo0jeeii90nu2T2PQtaMZBq8Zrs8FMAiEA237QN2gNCdD4Cm+el5N9LxQx0NJ2q1GNlIvZMPGxkWw="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1602407232.e4a333d18e6f2bd5f9867289664be265b5bf2aeb_1602407233921_0.9784173541281744"},"_hasShrinkwrap":false},"4.14.0-next.1602412816.38f19ade1cca333070d66410b4f2d9326424267a":{"name":"getsetdeep","version":"4.14.0-next.1602412816.38f19ade1cca333070d66410b4f2d9326424267a","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"38f19ade1cca333070d66410b4f2d9326424267a","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1602412816.38f19ade1cca333070d66410b4f2d9326424267a","_nodeVersion":"14.13.1","_npmVersion":"6.14.8","dist":{"integrity":"sha512-+uSgqddzQyumHML8zNkijHVkt9j4NUJghlyWr7ZTD7ZLQUfQSrhEdHfesCtmmkK5TNNRJBYk84nwJ1dMPhKxLw==","shasum":"5e485b7a1251fe5933cd480f3081b95670c56ca1","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1602412816.38f19ade1cca333070d66410b4f2d9326424267a.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfguESCRA9TVsSAnZWagAAKXwP/0/UmsD/ec09YXMV9e+y\nRKYDwuaWclp4lcgdxqdhnxdZT8gR4Ml5FtKx0swO/VmpjpHaYRExH5V7BJK1\ntXf9lS1wI7JOezQbdpj1oGJkOeoYZCeK7UkotA4PMBoU4MTWLHlPDkNOql4q\nRJExcyQRwM2Y954VKoI2LA8CPm4TgF6kTWZRcJKf5nLNONKv8g2e35RebG82\nflupgi3IhqUOuUoW9Bx0KxrEiucA+dlI/2eNtz192L7E84Sj2uhQmbpZpLIN\nDDOQFSZuTamQt1T+LXb90AUT8d8VulOpUIWEgd1gHhpqbvQcDqo71sZXBMEY\nTz1ulnXVjtws+7l2XDcfhUN63Ei8YcIzdhEpi4pZ35JkMlssw5dQI4fBbBRg\nDKoiEjmjgVBfAG9KqWaW3DCNCV1EDKsfhD7y79E0loSvnPhq0BlI4RSAYMw3\nZf0gaQWo+QBzu+5WQSvypjZS6S5ECmkNhtnGJ6TlVney6ktp1/kwPMnhC/Eb\nz1mNFypUrTFPWaDNMmis0p37wQMUFJtVAUnXeHk7o6BMAmts8TbxmWVU2QcP\nUC7bjW8ZA9GZNw4HuHBfDoY7/UAWyJ8pn3JB50Ov5LDaJgXR0+EI33RaBQ8U\nRx9ZdmX2iqc0LqU2fc3uuaQ2wcsEW99ubPFhnPRw8gVSqDHFAbwZOvT1yB5S\nEyNs\r\n=8Ljq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChJExvRC7z7vgLzb0MUQYFdLrty/T2zfO6OVh5m8FyaAIgRyORROi0gJY7eMESB/OKqZJyRQmv6uj4GFipwMZ+DBA="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1602412816.38f19ade1cca333070d66410b4f2d9326424267a_1602412817980_0.9985399521372831"},"_hasShrinkwrap":false},"4.14.0-next.1603015865.7980f951b3bab28c77747f13fe51a4bc4acf886a":{"name":"getsetdeep","version":"4.14.0-next.1603015865.7980f951b3bab28c77747f13fe51a4bc4acf886a","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"7980f951b3bab28c77747f13fe51a4bc4acf886a","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1603015865.7980f951b3bab28c77747f13fe51a4bc4acf886a","_nodeVersion":"14.14.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-6v7Oyx+dYDuldu3zhzRD6iccldPqw4Hq0/p58TlGuxr6oy8+NKscUXytyBk8vyjtyINmAYiiEYlAu0O61CMOew==","shasum":"9abb5f8e54c1ff9e210ea960580edaffb1dc29c0","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1603015865.7980f951b3bab28c77747f13fe51a4bc4acf886a.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjBS7CRA9TVsSAnZWagAA4MQP+wYYKgMyMual6g51PRid\n85G3mTKM9BP1zLttmGVcJBi4ZOQG3vZyj3lJUgJVv5KocvcPMN8MYPMQzypI\nm7FAb+GuifSbxC2RS3UI2L917NYpdHhIGjiPLcOfuD3BS+R0SIoyE31+ycSr\nlqHzlmosA3q8Qp3BlVtIai5QY3wCR5w2Ci1ZLHYSuywGDtvs8xN+Ri+HFziu\n1u7Zz1BS+ftrRi86tg/1m/X/Mld0h7EM7iBGBYYVOP8eRa+Tb7MSgA/zAi97\nZvIQ0AFBKkHY2dp1zP5NEGP2m4GSdreoErfIRomk+6ADXWOPjAF4duf6T21V\nB5CFwJf2Q++6mqN5tdxdKcqlsEzM0+08WYtw1FhAGBIouvLTg07ORzhHFXrS\nGNw/u/V1P8+35rtsnvylTQ+63DqgxZ9PsWJ+Z+FBDFJjmjn1smL9Y9Hk/IUM\n2EjbK/7jT8Thv4ir/x1IL01hAqAC7cypJr43Q9WHY7R6OenvHZ9rtiR+LmNd\nPKsYth0ktpmn2oetTcmzFejFV90UbcLTXZPUr1vtCYoMtJX9eXiZsI8zgR5a\nCn+sKb5lM/PC1j+bzbRxm6ObQTo3mcY2yV510R6mLPOCCBLm7dXH1kju3kmV\ng91om78FaeKTNZh8XbV9IBvkdEhkN9hJEIoYKrEYkeTmeiQb/Uq3kGJzpEgf\nTX2B\r\n=bMe/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG6grIVVIFCGqennOZWYWMpYzkoJplYPXDZ93tDpVUN7AiBS8dDos5OqJGr/xtkNtEfrjlizCL7df2UH+afEUMthYg=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1603015865.7980f951b3bab28c77747f13fe51a4bc4acf886a_1603015867260_0.9064799356974571"},"_hasShrinkwrap":false},"4.14.0-next.1603622536.f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9":{"name":"getsetdeep","version":"4.14.0-next.1603622536.f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1603622536.f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9","_nodeVersion":"14.14.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-TqocZszzZeTBEBwypH0XEBRHMUg3+4J4+sqNMUSufynkAVPOrWFWp1aduwOqcHR0QQiv0gUwpL87tWlc3O9fCw==","shasum":"d6f65176ccdd5b0dfca8c9e186f2ebd7b43d1a5c","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1603622536.f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJflVaKCRA9TVsSAnZWagAAtuQP/2xPmVqNvcsC30D/fdLL\nfs2L3h+E8um8UZIvNPPCm6t67+sqNa7Z7GkSJb+wC/LCYE59+UmmXRz5k29I\ncjjKN91WPM30HgJeDkLIqjyNFPzbrDF2N2GofOFkrr4owpPjg2HU6ojSGLcZ\nR7YvarTatM0iVAStZ/CdrvhG1zusFh3MByadvK8Euircn2EZMeZRytQcs+sL\nX05+I92d2mMh2Iz1ciYuvaHrRj2lWW8qFyY59XZew/01P06e17QuYhufm/Hl\nDOOzkVfq8TVxJfg0gvHezvXBIV/BZ0GKvTjzp7psnety3to7hm/ImoRKtrDi\nP+2SS7aKOSrPxQRX6WNlfQTEHCWphTUwHlBtr/BxfNUq0Mx1FMs6sVwOL4oL\n6r1N//55xJ3ammGRLUM4RNmMnpLbjSw2KZcI/s+6kxmWDbjq91YwIgpR0sWO\nQQrmaVOOiU+c92j+I+uMXDbxJE3eNu5kVb0SrEoaFVjAMczIkg1cRGju9QzN\npwqNk9zbZRg8ckUXwQHlVoFg9cRurSTi0TbYabFT7G8lmytHglVBPmnz8bd7\niQvbFepzJ45tqg1W9+iV2PFz4bE8SYgFnal8Nglu8su6RGk6eykmTOOkJ0Eh\nHYFffKQqOtQnIvT8AqJY85bv7Hd8Hp8EgI+1wQL2vWXwiSmNIycbY2UEslN8\nz9jN\r\n=DZWr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID9e9K5Al7pGCc7a4CUxC5j4MvB77HfPswAS8smRyU+PAiBd7/GMDkcaTkiLjjNTDFuYsJkJstVwWjZQ4m2GUZZ1pg=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1603622536.f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9_1603622537862_0.2431222131613917"},"_hasShrinkwrap":false},"4.14.0-next.1603630234.0f20a2b5cbb9038a00aa01abf3506ac094dd426b":{"name":"getsetdeep","version":"4.14.0-next.1603630234.0f20a2b5cbb9038a00aa01abf3506ac094dd426b","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 13 || 14 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 13 || 14","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 13 || 14 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 13 || 14","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.15.0"},"devDependencies":{"@bevry/update-contributors":"^1.16.0","@types/backbone":"^1.4.4","@typescript-eslint/eslint-plugin":"^4.0.1","@typescript-eslint/parser":"^4.0.1","assert-helpers":"^7.2.0","backbone":"^1.4.0","eslint":"^7.8.1","eslint-config-bevry":"^3.22.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.11.0","make-deno-edition":"^1.1.1","prettier":"^2.1.1","projectz":"^2.15.0","surge":"^0.21.6","typedoc":"^0.19.0","typescript":"^4.0.2","valid-directory":"^3.3.0","valid-module":"^1.13.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"0f20a2b5cbb9038a00aa01abf3506ac094dd426b","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.14.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.14.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.14.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 13 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 13 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.14.0-next.1603630234.0f20a2b5cbb9038a00aa01abf3506ac094dd426b","_nodeVersion":"14.14.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-KOktjCZjMvUxu5oBKjXFmzhr6pzN/5O3NZA7KvzuLm7mx7GMU+Px1GuTZkM/hPZLNyMR00zmt3fFdhyQJKrJ5A==","shasum":"58262e456915a201916e9b58a410d72a9d4637c4","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.14.0-next.1603630234.0f20a2b5cbb9038a00aa01abf3506ac094dd426b.tgz","fileCount":15,"unpackedSize":40614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJflXScCRA9TVsSAnZWagAAsC0P/03RwJ1JqQHjMiFRw//M\nkoJxa3qLENFfIH528R1vGKLjBfLINzrJHZCiPvh1eusQXaThENKysF5a8biD\nwOV8gWGO9scivIbKpVx/bCsoJYlzBrtwUEuaWcov/ssHvbeu5yoqOopgy8Ue\nUXTGUqvNfO6LLPCo8jbWDB8GMMpxzAFiRssVFTrnGD+4pFblvUN+60eA8Bqp\nvhp5schbeAa/vRNSbLBsCnCBRBSp3NgTx0Q4zJIlEdlB89uSrXwXdOHbb8fe\niwB7PlPn02h0CvxkkA9B6GO9UQsu1l8Vd3f49pyNtZ9Ihggu/WfFAOSM9yPX\nwZ25+DnQaTjW5oylAfXGlHJIbF86GfT8KanGENBsVep7xqcO/6chgbHUieAn\n4Tz5S4F69lHjkzdY/Z6a+JrYRQ8JV/lZ4NpkvGNcqI97hPxLfR56omP7hO7e\n81DubHZeqox8nQ1LQtBPdCInU+b/ftd6qfXpGGtUO8pd3OVC41sN4VE4ltQe\nU4TGBSx3T8d/EPOs1QDB7Bz6AuQnjZQt/YWyWEXrSLqKVaJhyOcinLtPjjGt\nhAR6TSaNbxO98gmpKvrVFnnSO7nUCCD6kOw6wkz1iSp2RhyVFrbtiNTcWvio\nE36+gVwLOp8zH7PrUg7Pina5/hb13HAb+YMxAUiJhczecBOlK2gfkHO0PS3S\nN8CS\r\n=niKN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8t1Pa03XVDTKl/GviaOC26XBN1SyzNuW/WNe4cu1/GQIhAMf2CMjjnyKcAXSNHOKuVdeL2GWBjp1kswaWAQ03CeZV"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.14.0-next.1603630234.0f20a2b5cbb9038a00aa01abf3506ac094dd426b_1603630235834_0.42810870376025933"},"_hasShrinkwrap":false},"4.15.0-next.1603937174.a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f":{"name":"getsetdeep","version":"4.15.0-next.1603937174.a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 14 || 15 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 14 || 15","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 14 || 15 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 14 || 15","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.16.0"},"devDependencies":{"@bevry/update-contributors":"^1.17.0","@types/backbone":"^1.4.5","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0","assert-helpers":"^8.1.0","backbone":"^1.4.0","eslint":"^7.12.1","eslint-config-bevry":"^3.23.0","eslint-config-prettier":"^6.15.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.12.0","make-deno-edition":"^1.2.0","prettier":"^2.1.2","projectz":"^2.16.0","surge":"^0.21.6","typedoc":"^0.19.2","typescript":"^4.0.5","valid-directory":"^3.4.0","valid-module":"^1.14.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.15.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.15.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.15.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.15.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 14 || 15 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 15 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.15.0-next.1603937174.a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-xRFn7PNLTQTryPHavvUqkMDIv978BZntlVCsMGDzZLViJo6KnBLfFv+u6l2yGJLCrFIXzSSzCWuenbfx3Ecksg==","shasum":"12b26c5b7e9f5fcaf0f22ef53ef6f5a498a02f34","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.15.0-next.1603937174.a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f.tgz","fileCount":15,"unpackedSize":40813,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmiOYCRA9TVsSAnZWagAA75AP/iLzCNeGHkxHO/d0zKQY\nFzbUQWgulMLz8QTu6Zpjiv+V2S+yD9vrPAxcZpu/iihDfn3GQmOGyXiLzw6l\nvzgaFvsPkzwdeeuHE3NInw2duihj93c754E5EzvXbYTwnwdP6EeonxSP9mdW\nxOaK64OGk4J/Hp4l6D2HU7NQ7zKpQJyCAQP2NlyZuHdRBzQpqrOzEK/k4Hds\nYLsnCtY9ml1HzGOkhxX+aseq2p20QyrooYHJBmFoi8iw5mLwA38gLeowFK07\nmRgb/QJ3SX5E2DqgLewUoaOEdUZF2348Tx4G6V/XWWVkGdIHUorHjLeQYxlq\nfI0eo4Ur6huREhC+STiNAFY1hV1s+j/mcGxrTKBIOqMRkXR05KT2/hcDEBMf\nteYUgEmphFwAV9JO0PDmqBePRDU0beccqRg5XR61HunjtY+NwMGxPDkMUncZ\nOlX7MY1MLB8kudA3n8rgnAMKp1o6dnA79fvEWxxnvymjpRTOOmwzC+E6mK0T\nQrPyZg3sWUBeslQQf5rw85CDlr8RG0zmCVjygSLzDxSHuxw5CK7220zUlyfv\nJSNsLAAHx7H/Po8pQmrWvb09acNAayhxBxvTHCSokDbmkC/RJ1CpKTKi3RAU\n0GKdL78K2/QWBx92mJA/I8ZCdvhZ66F1/eRLudi9D2jlFo5gX11IazvMaoLH\np7mw\r\n=/rN3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDoPMZSMfGOyPXwkVQJB1tVuf+41YH4B+N+LzcKCitoiAiEAnpdLYlB7urqdUKL6ApZlMztTgVg+tYFdmfemKJnsg2c="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.15.0-next.1603937174.a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f_1603937175502_0.30492080727108717"},"_hasShrinkwrap":false},"4.15.0":{"name":"getsetdeep","version":"4.15.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 14 || 15 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 14 || 15","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 14 || 15 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 14 || 15","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.16.0"},"devDependencies":{"@bevry/update-contributors":"^1.17.0","@types/backbone":"^1.4.5","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0","assert-helpers":"^8.1.0","backbone":"^1.4.0","eslint":"^7.12.1","eslint-config-bevry":"^3.23.0","eslint-config-prettier":"^6.15.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.12.0","make-deno-edition":"^1.2.0","prettier":"^2.1.2","projectz":"^2.16.0","surge":"^0.21.6","typedoc":"^0.19.2","typescript":"^4.0.5","valid-directory":"^3.4.0","valid-module":"^1.14.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f","_id":"getsetdeep@4.15.0","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-82bDppJJ3w2wY+d8MX9dUiO/tGkrtIIdakCTCc1m58+JIU+bhimdQd9rmOQ0aZJ6MRpY38pxIQR/RJGhrKfH4A==","shasum":"075ae2ad06552ffe203175b32a4cd33ce8ebd944","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.15.0.tgz","fileCount":15,"unpackedSize":40756,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmiOcCRA9TVsSAnZWagAANrwQAJMzG9vi4GNtQx3Eq7Ni\nCZ9IgjzawW5TQrM0pVk4fozMi8hg7dRZV4D5SaDksShG9KcsRc+MD+6L8ZXB\nkBnmsby5OxTB6tCm5GwG2upfKmnU0YjHxTmt3OYcIBbsjcutp/HOw/GlLfre\nU1IJhk3QhZdPEbr1xds8gjKvTQDCmswWRMIbRFNxJNa/iT2+6v9JDLQyHPa7\nfiqN/sqcABDEVRdElSrpspF+XuM5J60z5sY62ccuIgtikN2bI5zIgnbhCaCn\nrmoNoCUtabHLyjkGKKzNxkiwH7uXXtb0WI0xe4HFMKg1Hj9oS6oRSIHGmHmW\nIL8F8DLEB3sIeuagVcJHkEf0NcOzHiivYuli45/Lg8NEgAq3lRYQL90924bg\ncVot95+9DVTBlFHmSFUi83AfFY8wIvJ5aCr4BideaZ0wxj5UMRI99jgJU8jB\nmdUret1bZBNJ0HN6BztsJl4PY0LClrhi3fdc87oSiEIP09odjc9EGiECLfr8\nz5xIU4K275TovnQUDcdJqrsg3gWtk3/Cld2EpkwkzBc9Eps4dlwK3ii5vbxh\nIOQzgUpljdwfjxA7xqmjIrR+vixsoMb14Y1STUTT9hhfm4gvy9hX5TFS1Nii\nmRaOgg598a5Vh7/8UpBXCGY5qM+geD8YcKUhkUnnXQtoHcz1j/D0If8YOi3g\nCZhZ\r\n=9sx9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGUeyRz8V+hDlk6Efmj+m9NF4k9FuOYY/5yoCopyqMCcAiEA7DlRWEgDeiNm5SEyUuxzI+fy8WCDozsRJvhvpBusDjk="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.15.0_1603937179593_0.2600457839758643"},"_hasShrinkwrap":false},"4.15.0-next.1604235751.4019c771e5bd7b99280647509a5428dbe45cf005":{"name":"getsetdeep","version":"4.15.0-next.1604235751.4019c771e5bd7b99280647509a5428dbe45cf005","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","esnext","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["travisci","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","travisTLD":"com","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2019 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ESNext for Node.js 10 || 12 || 14 || 15 with Require for modules","directory":"edition-esnext","entry":"index.js","tags":["compiled","javascript","esnext","require"],"engines":{"node":"10 || 12 || 14 || 15","browsers":false}},{"description":"TypeScript compiled against ESNext for Node.js 12 || 14 || 15 with Import for modules","directory":"edition-esnext-esm","entry":"index.js","tags":["compiled","javascript","esnext","import"],"engines":{"node":"12 || 14 || 15","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"edition-esnext/index.js","exports":{"node":{"import":"./edition-esnext-esm/index.js","require":"./edition-esnext/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.16.0"},"devDependencies":{"@bevry/update-contributors":"^1.17.0","@types/backbone":"^1.4.5","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0","assert-helpers":"^8.1.0","backbone":"^1.4.0","eslint":"^7.12.1","eslint-config-bevry":"^3.23.0","eslint-config-prettier":"^6.15.0","eslint-plugin-prettier":"^3.1.4","kava":"^5.12.0","make-deno-edition":"^1.2.0","prettier":"^2.1.2","projectz":"^2.16.0","surge":"^0.21.6","typedoc":"^0.19.2","typescript":"^4.0.5","valid-directory":"^3.4.0","valid-module":"^1.14.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-esnext && npm run our:compile:edition-esnext-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2019 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-esnext":"tsc --module commonjs --target ESNext --outDir ./edition-esnext --project tsconfig.json && ( test ! -d edition-esnext/source || ( mv edition-esnext/source edition-temp && rm -Rf edition-esnext && mv edition-temp edition-esnext ) ) && echo '{\"type\": \"commonjs\"}' > edition-esnext/package.json","our:compile:edition-esnext-esm":"tsc --module ESNext --target ESNext --outDir ./edition-esnext-esm --project tsconfig.json && ( test ! -d edition-esnext-esm/source || ( mv edition-esnext-esm/source edition-temp && rm -Rf edition-esnext-esm && mv edition-temp edition-esnext-esm ) ) && echo '{\"type\": \"module\"}' > edition-esnext-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --mode file --exclude '**/+(*test*|node_modules)' --excludeExternals --name \"$npm_package_name\" --readme ./README.md --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin master && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-esnext/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"4019c771e5bd7b99280647509a5428dbe45cf005","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-travisci\"><a href=\"http://travis-ci.com/bevry/getsetdeep\" title=\"Check this project's build status on TravisCI\"><img src=\"https://img.shields.io/travis/com/bevry/getsetdeep/master.svg\" alt=\"Travis CI Build Status\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^4.15.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.15.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.15.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.15.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-esnext/index.js</code></li>\n<li><code>getsetdeep/edition-esnext/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 14 || 15 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-esnext-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#ES.Next\" title=\"ECMAScript Next\">ESNext</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 15 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","_id":"getsetdeep@4.15.0-next.1604235751.4019c771e5bd7b99280647509a5428dbe45cf005","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-xZ8/vrfQIv8DFUWBIWKA/NK/pQXs5flQ/W0ktswxMHmGO7iJQ0cpkyQy7wlZ0jPGr8/0dDYMBvt2m/82uP+8Ow==","shasum":"04799609212afd7bf4aaf6b2c9e8db135dcbed22","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.15.0-next.1604235751.4019c771e5bd7b99280647509a5428dbe45cf005.tgz","fileCount":15,"unpackedSize":40813,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfnrHpCRA9TVsSAnZWagAACf4P/30bYNxKVoN+UpZD+OeE\n0ILO8JSG88rpH2BdTR0F4JRS27MZRR1m7wW037o85ORrYWkp942Fs0zPZDCE\ncyqnXwZZf///OG3f8I6tSybkbQVpYXCg0v1eGn4DFD04FckA2NxDCIQhYsaz\nwa8e3YbzYXbUdNw3SBXm8E7pBMv+MeWM6WjNL5gzWeZYMuOxP+DcPHX5lV5H\nP/71/N+qvyi4j9x6YpFnsfGTYbYPSabA66VW5599p+rnfpiUoLniD7szseH7\nr9GtPuGCf8TKg1mqPr8ZPpTG2+oOTYKaASIOjKnE+JxsrJKatQ5xv6zeBXPf\nZQQiNvV23fCnfl/6M4kg4KhlKofUpnvKVsTmBAjXC06AT3Dbx0a5BUYVGsoB\n7Qaz2HV7u+dgaMHlHX4DlHeVQkaK55sLKaw7Mrs2HBvbmsaBBM08alSVf9j6\nKeiP93Qw06bYQPpyY9M4fJD/uBIBJZk/ZHSza2KMe+Hdb2xXvawTq6eILnks\nyoNr8t1kyFujdSk2Tqm44ZeE7dZWkMPLjo97GE12T2Wni+puhhmAoGxYJVY0\n+X9cvvI4/JzVjeVP5Bn0APx75yPioJmkRJ+6EmFAB5ioJCo/y6SlNaBpgagH\nxuwJ2ErKPit0E9KtxlyLZMEIvzJ/6uWIpzgX4qkdWIl47B7Znuh9A4xDeW0m\n6aQP\r\n=FduS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/NxthcwAUeK9dDQoX/wWcSUhzotVk5MuHOYTv4amc+gIhANPweYwKbUJkEOTyA/M9ZN4x8xy2BnHeTwgx5T5/lp+U"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.15.0-next.1604235751.4019c771e5bd7b99280647509a5428dbe45cf005_1604235752671_0.6302963766759675"},"_hasShrinkwrap":false},"4.16.0-next.1627424346.8c183497ce555821a94ab73a80fb135f7d860731":{"name":"getsetdeep","version":"4.16.0-next.1627424346.8c183497ce555821a94ab73a80fb135f7d860731","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","es2019","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2020 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2019 for Node.js 10 || 12 || 14 with Require for modules","directory":"edition-es2019","entry":"index.js","tags":["compiled","javascript","es2019","require"],"engines":{"node":"10 || 12 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for Node.js 12 || 14 with Import for modules","directory":"edition-es2019-esm","entry":"index.js","tags":["compiled","javascript","es2019","import"],"engines":{"node":"12 || 14","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2019/index.js","exports":{"node":{"import":"./edition-es2019-esm/index.js","require":"./edition-es2019/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.17.0"},"devDependencies":{"@bevry/update-contributors":"^1.18.0","@types/backbone":"^1.4.11","@typescript-eslint/eslint-plugin":"^4.28.5","@typescript-eslint/parser":"^4.28.5","assert-helpers":"^8.2.0","backbone":"^1.4.0","eslint":"^7.31.0","eslint-config-bevry":"^3.23.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","kava":"^5.13.0","make-deno-edition":"^1.3.0","prettier":"^2.3.2","projectz":"^2.18.0","surge":"^0.23.0","typedoc":"^0.21.4","typescript":"4.3.5","valid-directory":"^3.7.0","valid-module":"^1.15.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2019 && npm run our:compile:edition-es2019-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2020 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2019":"tsc --module commonjs --target ES2019 --outDir ./edition-es2019 --project tsconfig.json && ( test ! -d edition-es2019/source || ( mv edition-es2019/source edition-temp && rm -Rf edition-es2019 && mv edition-temp edition-es2019 ) ) && echo '{\"type\": \"commonjs\"}' > edition-es2019/package.json","our:compile:edition-es2019-esm":"tsc --module ESNext --target ES2019 --outDir ./edition-es2019-esm --project tsconfig.json && ( test ! -d edition-es2019-esm/source || ( mv edition-es2019-esm/source edition-temp && rm -Rf edition-es2019-esm && mv edition-temp edition-es2019-esm ) ) && echo '{\"type\": \"module\"}' > edition-es2019-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2019/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.16.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.16.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.16.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#11th_Edition_–_ECMAScript_2020\" title=\"ECMAScript ES2020\">ES2020</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-es2019/index.js</code></li>\n<li><code>getsetdeep/edition-es2019/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 14 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2019-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"8c183497ce555821a94ab73a80fb135f7d860731","_id":"getsetdeep@4.16.0-next.1627424346.8c183497ce555821a94ab73a80fb135f7d860731","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"integrity":"sha512-MIkBvkzhBvv6o7Dafos6slwgorSPK/Z9I9OSGvzzqy2CJxy5LtjZfyz8INBLdjUgsiILe2zgsVDV3S+0H5Z/3A==","shasum":"cfcc5a0d288fde23217517583fe9aa637b8bf438","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.16.0-next.1627424346.8c183497ce555821a94ab73a80fb135f7d860731.tgz","fileCount":14,"unpackedSize":40839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAIZcCRA9TVsSAnZWagAAL2IQAILAuvOoqiLi7quLLXMu\n7w5XuBVGW0dZ12Cfui+HNxIhgzzMFI3ekorS7F4g/IevJfHeK1Q+kEHasyxh\ngq4tft1YBdc4Takg0P4+94cw2Iqb+Ld2Vw+++tss07NpAjYiPbM+AshDdQku\nJJ7hnEdnFF2WZDwD+wB6YbBDGV0laB2wgblaKC05+jxr9VUG5OElrZJx75Ow\nX4Xwu/0YIVRiADSRni6gjlaa9HM0tsYqzs4TBBevv/socNdQ1Q1RNejUcoRe\nNMPaGwUv24XzfIG49x25Tyi66pjv+n2EgToVNOByAdnICL+jDHU0KulxMOrr\nLEOwbC5m1iRsI8cJx1pU2ei3skpEGZAqoKXvx3Ks45nnr2lwmoSlR+ke2fHZ\nJyDpEprCvhSE8GTJpDwaJCsAhIkW6VPHGMglEISuv06NFX0Z3dvykCDzWBoH\n5taEPumhYtFJWj5l5gHeB1b0hiv33gCd8MYrunJxkaheezCwdfQ5DvtB0lj7\nda/ewxiGKzlrKPQaNiHvdInJTiDAJar53K2qXsLN1KdaraTW97u4jXq4nI0u\nrHqIybVCV+AItIruBVeCXhddZPO5dQ12tukB4ih380EV6JK+vYzmUVUtxfiP\nKPdfgo8mRHI7h73hv5kOCTaZXF4fC8bN54NFT1wnzkTagQs+8ixnQyQzQ1IZ\nFu0p\r\n=uZox\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUjLlDGic75WdONJDFbMcVm1m0YyxUMhGiua+PBy8iUgIhAPvGXlglHiRpKQSiHTeuDyeQQwZOhj8QjOyfSjciQjWg"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.16.0-next.1627424346.8c183497ce555821a94ab73a80fb135f7d860731_1627424347995_0.06154714785352522"},"_hasShrinkwrap":false},"4.16.0":{"name":"getsetdeep","version":"4.16.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","es2019","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2020 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2019 for Node.js 10 || 12 || 14 with Require for modules","directory":"edition-es2019","entry":"index.js","tags":["compiled","javascript","es2019","require"],"engines":{"node":"10 || 12 || 14","browsers":false}},{"description":"TypeScript compiled against ES2019 for Node.js 12 || 14 with Import for modules","directory":"edition-es2019-esm","entry":"index.js","tags":["compiled","javascript","es2019","import"],"engines":{"node":"12 || 14","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2019/index.js","exports":{"node":{"import":"./edition-es2019-esm/index.js","require":"./edition-es2019/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.17.0"},"devDependencies":{"@bevry/update-contributors":"^1.18.0","@types/backbone":"^1.4.11","@typescript-eslint/eslint-plugin":"^4.28.5","@typescript-eslint/parser":"^4.28.5","assert-helpers":"^8.2.0","backbone":"^1.4.0","eslint":"^7.31.0","eslint-config-bevry":"^3.23.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","kava":"^5.13.0","make-deno-edition":"^1.3.0","prettier":"^2.3.2","projectz":"^2.18.0","surge":"^0.23.0","typedoc":"^0.21.4","typescript":"4.3.5","valid-directory":"^3.7.0","valid-module":"^1.15.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2019 && npm run our:compile:edition-es2019-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2020 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2019":"tsc --module commonjs --target ES2019 --outDir ./edition-es2019 --project tsconfig.json && ( test ! -d edition-es2019/source || ( mv edition-es2019/source edition-temp && rm -Rf edition-es2019 && mv edition-temp edition-es2019 ) ) && echo '{\"type\": \"commonjs\"}' > edition-es2019/package.json","our:compile:edition-es2019-esm":"tsc --module ESNext --target ES2019 --outDir ./edition-es2019-esm --project tsconfig.json && ( test ! -d edition-es2019-esm/source || ( mv edition-es2019-esm/source edition-temp && rm -Rf edition-es2019-esm && mv edition-temp edition-es2019-esm ) ) && echo '{\"type\": \"module\"}' > edition-es2019-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2019/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"8c183497ce555821a94ab73a80fb135f7d860731","_id":"getsetdeep@4.16.0","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"integrity":"sha512-JAX7AX5kdyip+qscznnuIOSczhKva5ENpfxgRv2SWUu7DaVQHyT0Ka74XSeiRtbrjYGxmr025qOuTUeJiJOWsA==","shasum":"6c12de98ac3ccf544e3640d2f75331582487bcce","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.16.0.tgz","fileCount":14,"unpackedSize":40782,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAIcwCRA9TVsSAnZWagAAy3oP/08GT62m1k41h5dSDUsp\nNCi6oqkSxYxsD5a4QkDyvmcxQOInZTKgxN/gZwCtcFlOg2Yk/in6RfxdQFcl\nR8iF2EVWs8Ka3QX0LCkYeDaBMheZHY3V7CCjIydmTVVBrlZjxZem+pd0CpDh\nq0Vg82iJ4AfQg9l4eJWiZ79dpYt4Xa3Cqeueuf5mMIdNBpGPIFQURg+TZ/zd\ne+n2kjhoascSb2PWUS+kapelQG3wEGKMpn+qNN5yjTwHpxrsDtMn/7dditUJ\nL7IH52H7/kKf/vRx8hjThMpTEHwIBx3pfFtTEH5t8u904SP9tqXqnTJQNQfA\nu03s3MMbd0SizERSLrR/3bYftti3WXYoIZshfyUDLf3DmlvQO2X4rkZrm42l\nnvievAbcr5c0hxLDTcD/tR8LEDzfhmALLgRhFWTdCm+5bSiOXN7OX+vmMvEf\n+iLAZi/yliOl9JD7iBuPjkHdvQ7jEN58qLnUxZJpO9JektXuE8p2KzAIFtAX\nOLH3trpyEGWgNieR9okFt7+7CiV6YGd2sUcjTGopkIQhd7v3JxvpF+RY2OJG\niQpUTpy6eO+yUjEtGOrH8xh5arbNw9QPn6/2KO6x7Nim4UHKjX3CjNl24IT8\np6LlRj9co3dDoM+w00qRtEreBEk7Z52UUNFsOrQ0lEZso2JCAGeIFFCKDP2H\nXU0K\r\n=ZCsI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGXjftoux+sWJ7h5po/KHa6OEi6XuGqWJZ2IAh/ZDhDAIgSD9v+veGVt2CSHqDbJdN6uY9ovXLRAXWE1DMH5gDeiI="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.16.0_1627424560625_0.8700052990885534"},"_hasShrinkwrap":false},"4.17.0-next.1627507756.c57a31fd1958c573eb6568345b553fa4127055b7":{"name":"getsetdeep","version":"4.17.0-next.1627507756.c57a31fd1958c573eb6568345b553fa4127055b7","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","es2019","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2020 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2019 for Node.js 10 || 12 || 14 || 16 with Require for modules","directory":"edition-es2019","entry":"index.js","tags":["compiled","javascript","es2019","require"],"engines":{"node":"10 || 12 || 14 || 16","browsers":false}},{"description":"TypeScript compiled against ES2019 for Node.js 12 || 14 || 16 with Import for modules","directory":"edition-es2019-esm","entry":"index.js","tags":["compiled","javascript","es2019","import"],"engines":{"node":"12 || 14 || 16","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2019/index.js","exports":{"node":{"import":"./edition-es2019-esm/index.js","require":"./edition-es2019/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.17.0"},"devDependencies":{"@bevry/update-contributors":"^1.19.0","@types/backbone":"^1.4.11","@typescript-eslint/eslint-plugin":"^4.28.5","@typescript-eslint/parser":"^4.28.5","assert-helpers":"^8.2.0","backbone":"^1.4.0","eslint":"^7.31.0","eslint-config-bevry":"^3.25.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","kava":"^5.14.0","make-deno-edition":"^1.3.0","prettier":"^2.3.2","projectz":"^2.18.0","surge":"^0.23.0","typedoc":"^0.21.4","typescript":"4.3.5","valid-directory":"^3.7.0","valid-module":"^1.16.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2019 && npm run our:compile:edition-es2019-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2020 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2019":"tsc --module commonjs --target ES2019 --outDir ./edition-es2019 --project tsconfig.json && ( test ! -d edition-es2019/source || ( mv edition-es2019/source edition-temp && rm -Rf edition-es2019 && mv edition-temp edition-es2019 ) ) && echo '{\"type\": \"commonjs\"}' > edition-es2019/package.json","our:compile:edition-es2019-esm":"tsc --module ESNext --target ES2019 --outDir ./edition-es2019-esm --project tsconfig.json && ( test ! -d edition-es2019-esm/source || ( mv edition-es2019-esm/source edition-temp && rm -Rf edition-es2019-esm && mv edition-temp edition-es2019-esm ) ) && echo '{\"type\": \"module\"}' > edition-es2019-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2019/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/globals.html)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.17.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.17.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.17.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#11th_Edition_–_ECMAScript_2020\" title=\"ECMAScript ES2020\">ES2020</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-es2019/index.js</code></li>\n<li><code>getsetdeep/edition-es2019/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 14 || 16 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2019-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 16 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"c57a31fd1958c573eb6568345b553fa4127055b7","_id":"getsetdeep@4.17.0-next.1627507756.c57a31fd1958c573eb6568345b553fa4127055b7","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"integrity":"sha512-e9IPuj+moxZoFBlHFmhRvD2l0Qqx9STBDlRTbLgT9enzXFZ/t77XFnNFAsEAUSNqdawivdJsvwnrP03uBHHzKA==","shasum":"7b10aeeee7b4ae9605fff9fc488e330aa0f2643e","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.17.0-next.1627507756.c57a31fd1958c573eb6568345b553fa4127055b7.tgz","fileCount":14,"unpackedSize":41070,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAcwtCRA9TVsSAnZWagAAoj8P/2OnjLXwjdpdm2iovr+S\nKk/lA1fwdY7hoE2V5BtId+PTUMK96LjZT3VHyCZWUeS6Owhv+QsMUh1GigpR\n1A7H/OVwSo+2LaRACURABsmkXABKoS5zAuYfc8yopqy6PFq9aJS9OdnpyN62\nWzzJQRXAWU68IVWyjEngpjMzFhAyn7IR6LOSFThNoiaitCPYWB0I9XVXP0Rk\n9YCpiQRSNDyAfVBsKBsILgiUkhWEhkKqseFIZg36VtwIeM2qO89yBZYStOGi\n/pupLYqA2EfTMNPM6uR1gVXsLnG9lKqY4iBu/5iHZecgCSP7acdZFllo5077\nHoM6u1KAlhRyUcyMpAqWyIhFBZCyq3D5T85gc+rrsqNqPkgU68Ch26o+8HNk\n/miWPQuD5ZUi9ovr4w45rcG3P/ss5oJyq5VeD20Z0LNVyfyfIELvfoLjs0Vm\nUUAY/pzRBvSKSL22e+lvRSKe3aj/wvMrBBsK5S/u4YtzXfjmvzUtp/cH2JRT\nM7iJjtQflQN+UaE9nHSYpwEJ1pyMP7d4u8/rSlpBWsawlXQTu7z9aHO5NXlN\nBtFqDVVILiUKYoeVVixwH894mYDm8WSKIjw1KQ9JvmDrI/GykABbo/+y1cGi\nRkC8F32ElmkgFgxAkJXMVkgbF8UNaWnSQkYA8XbhKD85Gg2XwC4BFK18C9JR\nFAr9\r\n=+lsa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIENOFFzlAOa8dzf9pwLN40pw7S85DdZrmhProRrjJa4zAiEAs4EKX58utTottEaEfd168dYTQ6S7aHdT8+Q+JmLq0DI="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.17.0-next.1627507756.c57a31fd1958c573eb6568345b553fa4127055b7_1627507757537_0.5573118733537479"},"_hasShrinkwrap":false},"4.17.0":{"name":"getsetdeep","version":"4.17.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","es2019","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2020 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2019 for Node.js 10 || 12 || 14 || 16 with Require for modules","directory":"edition-es2019","entry":"index.js","tags":["compiled","javascript","es2019","require"],"engines":{"node":"10 || 12 || 14 || 16","browsers":false}},{"description":"TypeScript compiled against ES2019 for Node.js 12 || 14 || 16 with Import for modules","directory":"edition-es2019-esm","entry":"index.js","tags":["compiled","javascript","es2019","import"],"engines":{"node":"12 || 14 || 16","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2019/index.js","exports":{"node":{"import":"./edition-es2019-esm/index.js","require":"./edition-es2019/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.17.0"},"devDependencies":{"@bevry/update-contributors":"^1.19.0","@types/backbone":"^1.4.11","@typescript-eslint/eslint-plugin":"^4.28.5","@typescript-eslint/parser":"^4.28.5","assert-helpers":"^8.2.0","backbone":"^1.4.0","eslint":"^7.31.0","eslint-config-bevry":"^3.25.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","kava":"^5.14.0","make-deno-edition":"^1.3.0","prettier":"^2.3.2","projectz":"^2.18.0","surge":"^0.23.0","typedoc":"^0.21.4","typescript":"4.3.5","valid-directory":"^3.7.0","valid-module":"^1.16.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2019 && npm run our:compile:edition-es2019-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2020 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2019":"tsc --module commonjs --target ES2019 --outDir ./edition-es2019 --project tsconfig.json && ( test ! -d edition-es2019/source || ( mv edition-es2019/source edition-temp && rm -Rf edition-es2019 && mv edition-temp edition-es2019 ) ) && echo '{\"type\": \"commonjs\"}' > edition-es2019/package.json","our:compile:edition-es2019-esm":"tsc --module ESNext --target ES2019 --outDir ./edition-es2019-esm --project tsconfig.json && ( test ! -d edition-es2019-esm/source || ( mv edition-es2019-esm/source edition-temp && rm -Rf edition-es2019-esm && mv edition-temp edition-es2019-esm ) ) && echo '{\"type\": \"module\"}' > edition-es2019-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2019/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"c57a31fd1958c573eb6568345b553fa4127055b7","_id":"getsetdeep@4.17.0","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"integrity":"sha512-maCWqghf9ti0U/GSdP+ancmiPUs+dByXIDFGbUaOnij+v+Xk0cjcuvtmZZEf6jqfhBkq1bNU56pUXeWVX/CUww==","shasum":"5c4372560b079e2625a53c4cb31b7b292f195d9e","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.17.0.tgz","fileCount":14,"unpackedSize":41013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAczJCRA9TVsSAnZWagAA1VEP/iahtOXBY1HgKST/tKLS\nb17f/kpZWgnRzR7gGE3rQqjoKmf6or26Ti1ZVLsUWPc06CtLb3kuj8RGVeZV\nOilikY7I50MeMKYrLL3JbBchHT1r4OBXcXOX2+Yz0qBOVPTuhhTRyIbRFISg\n2xecKYgMqTL5K3xbTbhWQddCKY/ZqzRsq6BBYYLERmcRD6Ud5Ol/1g/rt939\n+F7dBlr31bMzb7MZmzwi8XExC5EmL3BGXV2ttwAGnuq8T2wOnLBMYSzL7+2J\nddhQIMb/e1fc6DBVqJ2uuQhS5rqwioAMsIF83Lwcm+d60C31jfwjF6+USYuR\n0B+9H1ZtWJL6U+DY66vGeHRDB1Oa5JnrjK1gIOsWaiClTTu9Qt8cxNek+XQi\nKIpkArMMFVYQdxB60NpkCIh31PJcNruGZt7qYRgfjSGg/DnrPygEsxnF1t2E\n5STuaz6FQEOZcCMtvZvEbAxXOebzFFWKq376JXluvupFT64sDUq+KzicdP5O\no+7myC2Wl7LuWAhjZG2gN20hDe5wJa0qrqglqeKgwVr5E1XtWtYmOsJUhxST\nPxNiQ7fgJk8F2x5KWrWbbkVUwY85qBkD9tPbdw+6+MvaCbtcwIn70wNlW+/b\n0PKJHh7aocyYExcxvseDQN3/qU6NvVPHrCeLjy+emWL9eEuMmGsnBzdC9nm6\nuskQ\r\n=joIl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFCz2QLyxeG1a6m1tgq/ZX51ObIUtAqpgGIHHrpJOP4tAiEAs4sPmsBfQ16iw4y2qFrJ0mC9fxXhvoEBHttmHSrnlSM="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.17.0_1627507913074_0.09541557385600163"},"_hasShrinkwrap":false},"4.18.0-next.1627593998.b7495d0e851658dfb882bf6a049ccf1c58b0f0f6":{"name":"getsetdeep","version":"4.18.0-next.1627593998.b7495d0e851658dfb882bf6a049ccf1c58b0f0f6","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","es2019","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2020 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2019 for Node.js 10 || 12 || 14 || 16 with Require for modules","directory":"edition-es2019","entry":"index.js","tags":["compiled","javascript","es2019","require"],"engines":{"node":"10 || 12 || 14 || 16","browsers":false}},{"description":"TypeScript compiled against ES2019 for Node.js 12 || 14 || 16 with Import for modules","directory":"edition-es2019-esm","entry":"index.js","tags":["compiled","javascript","es2019","import"],"engines":{"node":"12 || 14 || 16","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2019/index.js","exports":{"node":{"import":"./edition-es2019-esm/index.js","require":"./edition-es2019/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.17.0"},"devDependencies":{"@bevry/update-contributors":"^1.19.0","@types/backbone":"^1.4.11","@typescript-eslint/eslint-plugin":"^4.28.5","@typescript-eslint/parser":"^4.28.5","assert-helpers":"^8.4.0","backbone":"^1.4.0","eslint":"^7.31.0","eslint-config-bevry":"^3.27.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","kava":"^5.14.0","make-deno-edition":"^1.3.0","prettier":"^2.3.2","projectz":"^2.21.0","surge":"^0.23.0","typedoc":"^0.21.4","typescript":"4.3.5","valid-directory":"^3.7.0","valid-module":"^1.16.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2019 && npm run our:compile:edition-es2019-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2020 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2019":"tsc --module commonjs --target ES2019 --outDir ./edition-es2019 --project tsconfig.json && ( test ! -d edition-es2019/source || ( mv edition-es2019/source edition-temp && rm -Rf edition-es2019 && mv edition-temp edition-es2019 ) ) && echo '{\"type\": \"commonjs\"}' > edition-es2019/package.json","our:compile:edition-es2019-esm":"tsc --module ESNext --target ES2019 --outDir ./edition-es2019-esm --project tsconfig.json && ( test ! -d edition-es2019-esm/source || ( mv edition-es2019-esm/source edition-temp && rm -Rf edition-es2019-esm && mv edition-temp edition-es2019-esm ) ) && echo '{\"type\": \"module\"}' > edition-es2019-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2019/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<span class=\"badge-daviddm\"><a href=\"https://david-dm.org/bevry/getsetdeep\" title=\"View the status of this project's dependencies on DavidDM\"><img src=\"https://img.shields.io/david/bevry/getsetdeep.svg\" alt=\"Dependency Status\" /></a></span>\n<span class=\"badge-daviddmdev\"><a href=\"https://david-dm.org/bevry/getsetdeep#info=devDependencies\" title=\"View the status of this project's development dependencies on DavidDM\"><img src=\"https://img.shields.io/david/dev/bevry/getsetdeep.svg\" alt=\"Dev Dependency Status\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.18.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.18.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.18.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#11th_Edition_–_ECMAScript_2020\" title=\"ECMAScript ES2020\">ES2020</a> for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-es2019/index.js</code></li>\n<li><code>getsetdeep/edition-es2019/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 10 || 12 || 14 || 16 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2019-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#10th_Edition_-_ECMAScript_2019\" title=\"ECMAScript ES2019\">ES2019</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 16 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/MIT.html\">MIT License</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"b7495d0e851658dfb882bf6a049ccf1c58b0f0f6","_id":"getsetdeep@4.18.0-next.1627593998.b7495d0e851658dfb882bf6a049ccf1c58b0f0f6","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"integrity":"sha512-7CE8Pd2QA5sxwdB76vciGYywxvTKyir6PJ2zxYy1QA8KPq7zS3v7l1ph/M2a0BSEERaGZws1iLtYO+nJ21vnug==","shasum":"f911b9280441a6f1bd7941c363134adf42371d4b","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.18.0-next.1627593998.b7495d0e851658dfb882bf6a049ccf1c58b0f0f6.tgz","fileCount":14,"unpackedSize":41253,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAx0QCRA9TVsSAnZWagAABo8P/0ona0P1hicwSuBtRi/b\ncv7v9+JEM+vLmtXnLVLMhtesCDkmeskTOS4vEtah/z8Wa33DzYaNlrxetDpv\n0fhNefHw9YxY14NNm8f4Yioo8WsX0dUrLh9hUuQJ7YHgT+/ERzn2WJcPwYkW\n8YOeY9XMRiABWezjci6yQC8idV3usgMkIWKD/pTk262ns9VKCxoSHVUzuaHi\ntssyVdt2h24yPx2aX4ajpsnUUOgTxyJpxpfYhjTK+r2iNq/HIGPlED72IWsJ\nXo8lbyyPnxAuPPLSaNUvy6BYOkGj+fk906g5yLNB6VS+R/D9vZpNR1KaYMRy\n856q8EVUwq2AE3OAndzZDuw7dORkPEZUwJRd+bPtoNYSDckCSaVDVYjH4Okc\noLKbF0On2DQlJEDd6dY/XW6hyPd40k2smflNs9G8X7p+L+wQMuqM5zM9a2N7\n+MqaAh95+my3Rbob/D/Km1ibmolKC3CGi38ydZ9Eai1BpH+6s04mnar9pFE3\n9G74KvEUJSSmUnO4MDf++wvJKprD5EV4woVndrTdv7LDXirjI44XHaL6eath\nnqX2wk7uTY5jBlTMVWXGQ59TEAiY3GP/O1et7/zffO6WebWIbfZj5AerS2V9\nlSs75anx2dn//FYC/c6j3DJCbOYWVJ+A6vQhLZzUcoi4BwLwTQxnZVXRp+F9\nSFdT\r\n=j29F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkKwmW43Sp9+DaqS9QoTaB7lNnHW9G+FCV6Fg1rcZxeQIgHcAijEw0QkZVQYMiFKXAYVytAvFfLe0/HFVVo23iEqE="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.18.0-next.1627593998.b7495d0e851658dfb882bf6a049ccf1c58b0f0f6_1627594000109_0.5211515642906535"},"_hasShrinkwrap":false},"4.18.0":{"name":"getsetdeep","version":"4.18.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"MIT","keywords":["backbone","backbone.js","browser","dom","es2019","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","daviddm","daviddmdev","---","githubsponsors","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2020 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2019 for Node.js 10 || 12 || 14 || 16 with Require for modules","directory":"edition-es2019","entry":"index.js","tags":["compiled","javascript","es2019","require"],"engines":{"node":"10 || 12 || 14 || 16","browsers":false}},{"description":"TypeScript compiled against ES2019 for Node.js 12 || 14 || 16 with Import for modules","directory":"edition-es2019-esm","entry":"index.js","tags":["compiled","javascript","es2019","import"],"engines":{"node":"12 || 14 || 16","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2019/index.js","exports":{"node":{"import":"./edition-es2019-esm/index.js","require":"./edition-es2019/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.17.0"},"devDependencies":{"@bevry/update-contributors":"^1.19.0","@types/backbone":"^1.4.11","@typescript-eslint/eslint-plugin":"^4.28.5","@typescript-eslint/parser":"^4.28.5","assert-helpers":"^8.4.0","backbone":"^1.4.0","eslint":"^7.31.0","eslint-config-bevry":"^3.27.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","kava":"^5.14.0","make-deno-edition":"^1.3.0","prettier":"^2.3.2","projectz":"^2.21.0","surge":"^0.23.0","typedoc":"^0.21.4","typescript":"4.3.5","valid-directory":"^3.7.0","valid-module":"^1.16.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2019 && npm run our:compile:edition-es2019-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2020 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2019":"tsc --module commonjs --target ES2019 --outDir ./edition-es2019 --project tsconfig.json && ( test ! -d edition-es2019/source || ( mv edition-es2019/source edition-temp && rm -Rf edition-es2019 && mv edition-temp edition-es2019 ) ) && echo '{\"type\": \"commonjs\"}' > edition-es2019/package.json","our:compile:edition-es2019-esm":"tsc --module ESNext --target ES2019 --outDir ./edition-es2019-esm --project tsconfig.json && ( test ! -d edition-es2019-esm/source || ( mv edition-es2019-esm/source edition-temp && rm -Rf edition-es2019-esm && mv edition-temp edition-es2019-esm ) ) && echo '{\"type\": \"module\"}' > edition-es2019-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"echo no need for this project","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep v$npm_package_version || (echo add a changelog entry for v$npm_package_version && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (echo 'proper changelog entry not found' && exit -1) && git tag v$npm_package_version -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2019/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"gitHead":"b7495d0e851658dfb882bf6a049ccf1c58b0f0f6","_id":"getsetdeep@4.18.0","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"integrity":"sha512-L29dkEje7IEQy6/WFIP6kQgfaGAUfRuC1YSXqC4x5SG1bVyK7fHmvNnKEPyjPQpuUGU2S4ewA2B1qxFyOedMSA==","shasum":"911c0fcf1222bc26e0ac396c030732fe81e9a42e","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.18.0.tgz","fileCount":14,"unpackedSize":41195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAx4zCRA9TVsSAnZWagAA1xQP/jDh6fRLbr9nGy6wI4er\nJAfRyI9PeAETZbWL5uYPSflWk9gOuP18pXx/WLoBAkOI5VrUnlJset5LXX/B\nM37H6IJUEzY5yi08EBV4jz9VblzzVc0/x20I0kzQ5tCQCIi+tGRrbmz+kj+a\nLwfh6DzLXH1b6GuV73m8na7ovDY7QEw5SOwsc0LTKATRuLEJ5E84VHhrVNh1\nTTweghB3CyMesTWbmPjHTE8+PRnaBcesR7SP0qe3OR/CLWmIaARoNhgDgD27\nxDpZxeakOHWGpIiK9Wpa+knWAStKcR0Es76OvEnrf/UXPk6G6X8KuEnZAVFM\nUVdrBxgBSrxed7gMsQDA5MZ4qYYgm5dxWFbkKnYMyiY4Vft73J39pBctuhpo\nTAVs0f1gYw40gv5SWCUf7lpu8JOhbqJU6hgl++x8rbD14QkV62JRJw79/ybi\n2Bfrb2fTgavm1TJjjKglJJZXcvrWkWVEXFHj2jciCaQZQDGiyHhKOl4hjLhi\nrL5pyQie+U8nFgAeNUaL6ASoNp2YEgW/GwCNGmaaqEsOX2Y5g+xp18PQpG0R\niUDoFWE/jc3SCmoKF5govM0U45GUOjL0+7bjFSPFDb0ERQ597zTLWk/oN/aK\nYeG0Srzd/sWyjWd5LzwbQlMtxZ9nClXCRdseyD3VhUVLaFHe/f8kCf5/6qiH\nm5T5\r\n=Cn39\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxQxkcugN9GJDJixlzgWx4MecGDooy1UxzjzYrZzOaNAIhAP+kwq9IVCEsqbAavspUzTrGX7EDvYBYf3IFtbwYwkKo"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.18.0_1627594291116_0.4064494831192196"},"_hasShrinkwrap":false},"4.19.0-next.1698807674.0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283":{"name":"getsetdeep","version":"4.19.0-next.1698807674.0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","dom","es2017","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2017 for Node.js with Require for modules","directory":"edition-es2017","entry":"index.js","tags":["compiled","javascript","es2017","require"],"engines":{"node":"10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2017 for Node.js with Import for modules","directory":"edition-es2017-esm","entry":"index.js","tags":["compiled","javascript","es2017","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2017/index.js","exports":{"node":{"import":"./edition-es2017-esm/index.js","require":"./edition-es2017/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.18.0"},"devDependencies":{"@bevry/update-contributors":"^1.22.0","@types/backbone":"^1.4.17","@types/node":"^20.8.10","@typescript-eslint/eslint-plugin":"^6.9.1","@typescript-eslint/parser":"^6.9.1","assert-helpers":"^8.4.0","backbone":"^1.5.0","eslint":"^8.52.0","eslint-config-bevry":"^3.28.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^5.15.0","make-deno-edition":"^1.3.0","prettier":"^3.0.3","projectz":"^2.23.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.0.0","valid-module":"^1.17.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2017 && npm run our:compile:edition-es2017-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2017":"tsc --module commonjs --target ES2017 --outDir ./edition-es2017 --project tsconfig.json && ( test ! -d edition-es2017/source || ( mv edition-es2017/source edition-temp && rm -Rf edition-es2017 && mv edition-temp edition-es2017 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2017/package.json","our:compile:edition-es2017-esm":"tsc --module ESNext --target ES2017 --outDir ./edition-es2017-esm --project tsconfig.json && ( test ! -d edition-es2017-esm/source || ( mv edition-es2017-esm/source edition-temp && rm -Rf edition-es2017-esm && mv edition-temp edition-es2017-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2017-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2017/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"_id":"getsetdeep@4.19.0-next.1698807674.0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/balupton\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^4.19.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^4.19.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@4.19.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep</code> aliases <code>getsetdeep/edition-es2017/index.js</code></li>\n<li><code>getsetdeep/edition-es2017/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#8th_Edition_-_ECMAScript_2017\" title=\"ECMAScript ES2017\">ES2017</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2017-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against <a href=\"https://en.wikipedia.org/wiki/ECMAScript#8th_Edition_-_ECMAScript_2017\" title=\"ECMAScript ES2017\">ES2017</a> for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/balupton\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/Artistic-2.0.html\">Artistic License 2.0</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-2yAPFetaKIrXkDYvd5UeEP7h99B14Q4XYMkmvbS6gkKYFTy4FUg9CryyteCDcI310Gq5X+eF9Ye9u45SVOeKuw==","shasum":"d7b03aef8c3a700200602b4223c8f41e09876168","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.19.0-next.1698807674.0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283.tgz","fileCount":13,"unpackedSize":41003,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1xzRwz7/tw/QyU59C5byEeAA1ZTuB6NEkub1T8k0HBQIgR6FUvUfy5V7/IZ4Tyixz6G0mC/udkR6qCBgOQyTzmJU="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.19.0-next.1698807674.0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283_1698807676010_0.9259047626358823"},"_hasShrinkwrap":false},"4.19.0":{"name":"getsetdeep","version":"4.19.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","dom","es2017","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=10"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2017 for Node.js with Require for modules","directory":"edition-es2017","entry":"index.js","tags":["compiled","javascript","es2017","require"],"engines":{"node":"10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2017 for Node.js with Import for modules","directory":"edition-es2017-esm","entry":"index.js","tags":["compiled","javascript","es2017","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}}],"types":"./compiled-types/","type":"module","main":"edition-es2017/index.js","exports":{"node":{"import":"./edition-es2017-esm/index.js","require":"./edition-es2017/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"typechecker":"^7.18.0"},"devDependencies":{"@bevry/update-contributors":"^1.22.0","@types/backbone":"^1.4.17","@types/node":"^20.8.10","@typescript-eslint/eslint-plugin":"^6.9.1","@typescript-eslint/parser":"^6.9.1","assert-helpers":"^8.4.0","backbone":"^1.5.0","eslint":"^8.52.0","eslint-config-bevry":"^3.28.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^5.15.0","make-deno-edition":"^1.3.0","prettier":"^3.0.3","projectz":"^2.23.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.0.0","valid-module":"^1.17.0"},"scripts":{"our:clean":"rm -Rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2017 && npm run our:compile:edition-es2017-esm && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -Rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2017":"tsc --module commonjs --target ES2017 --outDir ./edition-es2017 --project tsconfig.json && ( test ! -d edition-es2017/source || ( mv edition-es2017/source edition-temp && rm -Rf edition-es2017 && mv edition-temp edition-es2017 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2017/package.json","our:compile:edition-es2017-esm":"tsc --module ESNext --target ES2017 --outDir ./edition-es2017-esm --project tsconfig.json && ( test ! -d edition-es2017-esm/source || ( mv edition-es2017-esm/source edition-temp && rm -Rf edition-es2017-esm && mv edition-temp edition-es2017-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2017-esm/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -Rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -Rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./edition-es2017/test.js"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true},"boundation":{"dom":true},"_id":"getsetdeep@4.19.0","gitHead":"0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-5H6kId9qOrdd+HWZ2ePcF+rJH7lGlg1QcxieStcdfLTVXUrcwbohyrgE1l7CM6mj6sp5zo1R0PAs42kB4yI0rQ==","shasum":"8fbc52a874cb2e0096dd4aee068e8724cd364ed4","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-4.19.0.tgz","fileCount":13,"unpackedSize":40945,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/HKdJFB6g/6nriOnUwQLnaMWWD5OeHBsu88TWGbYOBgIhAMf5q5N5vICOFvtDHFMJ7odOppNDVFfs0GRhJ5ss/NEZ"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_4.19.0_1698807769332_0.7355541324311621"},"_hasShrinkwrap":false},"5.0.0-next.1699907734.3413e3101a903eae8dfad3f3948754969c5d30eb":{"name":"getsetdeep","version":"5.0.0-next.1699907734.3413e3101a903eae8dfad3f3948754969c5d30eb","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}}],"types":"./compiled-types/","type":"module","main":"index.cjs","exports":{"node":{"import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.11.0","typechecker":"^8.1.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.9.0","@typescript-eslint/eslint-plugin":"^6.11.0","@typescript-eslint/parser":"^6.11.0","assert-helpers":"^11.2.0","backbone":"^1.5.0","eslint":"^8.53.0","eslint-config-bevry":"^4.0.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.1.0","prettier":"^3.1.0","projectz":"^2.23.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.1.0","valid-module":"^2.1.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.0.0-next.1699907734.3413e3101a903eae8dfad3f3948754969c5d30eb","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/balupton\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.0.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.0.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.0.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/index.cjs</code> which uses the <a href=\"https://github.com/bevry/editions\" title=\"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\">Editions Autoloader</a> to automatically select the correct edition for the consumer's environment</li>\n<li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-es2022/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es5/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES5 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2022-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/balupton\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/Artistic-2.0.html\">Artistic License 2.0</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"3413e3101a903eae8dfad3f3948754969c5d30eb","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-yqkypfN0eLotQd627CjzaxBGr38XUdvIP7HkfrwJtxuAwgisOvmgaPUDQTqOv8iEydr/IGSdIEIfql+1nHfUhQ==","shasum":"321ba21f9e1049dafd3e7a4f098f8ba9eb5a7833","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.0.0-next.1699907734.3413e3101a903eae8dfad3f3948754969c5d30eb.tgz","fileCount":17,"unpackedSize":46910,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRov3jeySQmiGjcqZixWxpXbkDr8wcEVahweUVdotpGgIhAKx2INeMdA7jXNDaS5VNH3gaoY+iNoBLkIV50h05Esu1"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.0.0-next.1699907734.3413e3101a903eae8dfad3f3948754969c5d30eb_1699907736145_0.4230316189667829"},"_hasShrinkwrap":false},"5.0.0":{"name":"getsetdeep","version":"5.0.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"balupton","email":"b@lupton.cc"},{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}}],"types":"./compiled-types/","type":"module","main":"index.cjs","exports":{"node":{"import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.11.0","typechecker":"^8.1.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.9.0","@typescript-eslint/eslint-plugin":"^6.11.0","@typescript-eslint/parser":"^6.11.0","assert-helpers":"^11.2.0","backbone":"^1.5.0","eslint":"^8.53.0","eslint-config-bevry":"^4.0.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.1.0","prettier":"^3.1.0","projectz":"^2.23.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.1.0","valid-module":"^2.1.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:types","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.0.0","gitHead":"3413e3101a903eae8dfad3f3948754969c5d30eb","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-jF2YoFDRqfarHuAXg9+9fWNmwMJ8GrLf5MXGvToKbWu77JRm2qu5d8tLHJTErcu10CHOcsBVVU95j0mamcsOXQ==","shasum":"90b6c9ed54928c85eaf4d8c49e14c3c8e5fa83a6","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.0.0.tgz","fileCount":17,"unpackedSize":46852,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3G6UB2NBsVkE3is0s76UQgJMCFA3UFubIwrKDBSTRUgIhAJW5pGeDMa+JedDKCrlfYgznMBAacBA+zi1LdpNikJb6"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.0.0_1699907745779_0.0670853884657443"},"_hasShrinkwrap":false},"5.1.0-next.1700025926.b54b39ecc9788fb8c4772188a35c472080f5dea0":{"name":"getsetdeep","version":"5.1.0-next.1700025926.b54b39ecc9788fb8c4772188a35c472080f5dea0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"index.cjs","exports":{"node":{"import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.13.0","typechecker":"^8.2.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.9.0","@typescript-eslint/eslint-plugin":"^6.11.0","@typescript-eslint/parser":"^6.11.0","assert-helpers":"^11.4.0","backbone":"^1.5.0","eslint":"^8.53.0","eslint-config-bevry":"^4.0.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.2.0","make-deno-edition":"^1.3.0","prettier":"^3.1.0","projectz":"^3.0.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.2.0","valid-module":"^2.2.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.1.0-next.1700025926.b54b39ecc9788fb8c4772188a35c472080f5dea0","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/balupton\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.1.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.1.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.1.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.1.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/index.cjs</code> which uses the <a href=\"https://github.com/bevry/editions\" title=\"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\">Editions Autoloader</a> to automatically select the correct edition for the consumer's environment</li>\n<li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-es2022/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es5/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES5 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2022-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/balupton\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-flattr\"><a href=\"https://flattr.com/profile/balupton\" title=\"Donate to this project using Flattr\"><img src=\"https://img.shields.io/badge/flattr-donate-yellow.svg\" alt=\"Flattr donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<span class=\"badge-wishlist\"><a href=\"https://bevry.me/wishlist\" title=\"Buy an item on our wishlist for us\"><img src=\"https://img.shields.io/badge/wishlist-donate-yellow.svg\" alt=\"Wishlist browse button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/Artistic-2.0.html\">Artistic License 2.0</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"b54b39ecc9788fb8c4772188a35c472080f5dea0","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-OyaSKoMKfp4CbyZvhyKjqk/WTCOetzgUGa/auCaaIo1ox3zClsODfiKho95orK0hCY0FgYqHidQ43X8LdSoz1w==","shasum":"05983dd505e6dd1f4024b4cdbc3ab15e7e75e1ce","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.1.0-next.1700025926.b54b39ecc9788fb8c4772188a35c472080f5dea0.tgz","fileCount":18,"unpackedSize":50540,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICt6BXke8ET5ADLuNlnbVfbRiC7n7wwbHVo1h9r+TaSSAiA/7XXDrkszpKWFVC7W0/qopcMyOkVy7be1Zyh52Zx4vw=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.1.0-next.1700025926.b54b39ecc9788fb8c4772188a35c472080f5dea0_1700025927889_0.8982398326225256"},"_hasShrinkwrap":false},"5.1.0":{"name":"getsetdeep","version":"5.1.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","flattr","liberapay","buymeacoffee","opencollective","crypto","paypal","wishlist"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"balupton","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"./compiled-types/","type":"module","main":"index.cjs","exports":{"node":{"import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.13.0","typechecker":"^8.2.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.9.0","@typescript-eslint/eslint-plugin":"^6.11.0","@typescript-eslint/parser":"^6.11.0","assert-helpers":"^11.4.0","backbone":"^1.5.0","eslint":"^8.53.0","eslint-config-bevry":"^4.0.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.2.0","make-deno-edition":"^1.3.0","prettier":"^3.1.0","projectz":"^3.0.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.2.0","valid-module":"^2.2.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:types":"tsc --project tsconfig.json --emitDeclarationOnly --declaration --declarationMap --declarationDir ./compiled-types && ( test ! -d compiled-types/source || ( mv compiled-types/source edition-temp && rm -rf compiled-types && mv edition-temp compiled-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.1.0","gitHead":"b54b39ecc9788fb8c4772188a35c472080f5dea0","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-3tgrulxD3+GA7L876vMHneLU74BXbux3E2PgN9q/PrRMqovC3S2Wyl6wvVYTci1dmWTk5E0IS0mTeqldga51Lw==","shasum":"8dfa908b326eb07fa31c4b24a67270a5679e64bc","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.1.0.tgz","fileCount":18,"unpackedSize":50482,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGJQNJiid8bGXAKo73Z2VQ0MY5vdOm7N5ya5rLccot0dAiEAoYq4nJuvvxUds359ZcmNqca/+j5EaocMSpDRvhJRKXw="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.1.0_1700025971042_0.7834921894151201"},"_hasShrinkwrap":false},"5.2.0":{"name":"getsetdeep","version":"5.2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.13.0","typechecker":"^8.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.9.3","@typescript-eslint/eslint-plugin":"^6.12.0","@typescript-eslint/parser":"^6.12.0","assert-helpers":"^11.5.0","backbone":"^1.5.0","eslint":"^8.54.0","eslint-config-bevry":"^5.1.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.3.0","make-deno-edition":"^1.3.0","prettier":"^3.1.0","projectz":"^3.2.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.4.0","valid-module":"^2.4.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.2.0","gitHead":"66b8493403c6f6fb82584007cb1c038042cae0f2","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-6Ick1+M+cszKlt7yXKPadu4zuJBbYAacaKd8r6Iy9smTMHAvGB880+McfZ80PmUUg7OROi/Vbd3ZXOrEFzmN2w==","shasum":"487bbb1b400b8b4ed426dfcb5ce1c2f9b20e82cb","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.2.0.tgz","fileCount":18,"unpackedSize":50966,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8ALpTlMwBHq7Ahoy5qmb/gRKTQh2CTHfFQwKrrUsbGAIgXHQXIgyiMCl1dNFdSkxOTppSHAc823t9W/zLPqdqTOw="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.2.0_1700566184152_0.1500273758430577"},"_hasShrinkwrap":false},"5.2.0-next.1700566183.66b8493403c6f6fb82584007cb1c038042cae0f2":{"name":"getsetdeep","version":"5.2.0-next.1700566183.66b8493403c6f6fb82584007cb1c038042cae0f2","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.13.0","typechecker":"^8.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.9.3","@typescript-eslint/eslint-plugin":"^6.12.0","@typescript-eslint/parser":"^6.12.0","assert-helpers":"^11.5.0","backbone":"^1.5.0","eslint":"^8.54.0","eslint-config-bevry":"^5.1.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.3.0","make-deno-edition":"^1.3.0","prettier":"^3.1.0","projectz":"^3.2.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.4.0","valid-module":"^2.4.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.2.0-next.1700566183.66b8493403c6f6fb82584007cb1c038042cae0f2","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-discord\"><a href=\"https://discord.gg/nQuXddV7VP\" title=\"Join this project's community on Discord\"><img src=\"https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord\" alt=\"Discord server badge\" /></a></span>\n<span class=\"badge-twitch\"><a href=\"https://www.twitch.tv/balupton\" title=\"Join this project's community on Twitch\"><img src=\"https://img.shields.io/twitch/status/balupton?logo=twitch\" alt=\"Twitch community badge\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.2.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.2.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.2.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.2.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/index.cjs</code> which uses the <a href=\"https://github.com/bevry/editions\" title=\"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\">Editions Autoloader</a> to automatically select the correct edition for the consumer's environment</li>\n<li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-es2022/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es5/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES5 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2022-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-types/index.d.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled Types with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/Artistic-2.0.html\">Artistic License 2.0</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"66b8493403c6f6fb82584007cb1c038042cae0f2","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-YVbml0aki68OLxb+xOFISom4Z7YvhpxRWg5RUZD65+drIb1/IiscnNMCxWq5phCJ/rah2hrQZF4y46unQlQ6tQ==","shasum":"537390392af332418325d8d6a77c37f6f83cd127","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.2.0-next.1700566183.66b8493403c6f6fb82584007cb1c038042cae0f2.tgz","fileCount":18,"unpackedSize":51024,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC27qAwZUdXJgJzlm3zX1M43bS7uJoXi6ehCRvEyGBiCgIhANqWcM08H1XSZMdmQARyab0FaBG2yuA2nNqjSC9xeAT5"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.2.0-next.1700566183.66b8493403c6f6fb82584007cb1c038042cae0f2_1700566248532_0.05520762565115156"},"_hasShrinkwrap":false},"5.3.0-next.1700848006.764d4a64a6f01d12c10cd96de833e284961a2eeb":{"name":"getsetdeep","version":"5.3.0-next.1700848006.764d4a64a6f01d12c10cd96de833e284961a2eeb","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.16.0","typechecker":"^8.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.10.0","@typescript-eslint/eslint-plugin":"^6.12.0","@typescript-eslint/parser":"^6.12.0","assert-helpers":"^11.6.0","backbone":"^1.5.0","eslint":"^8.54.0","eslint-config-bevry":"^5.2.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.3.0","make-deno-edition":"^2.0.0","prettier":"^3.1.0","projectz":"^3.3.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.5.0","valid-module":"^2.5.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.3.0-next.1700848006.764d4a64a6f01d12c10cd96de833e284961a2eeb","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-discord\"><a href=\"https://discord.gg/nQuXddV7VP\" title=\"Join this project's community on Discord\"><img src=\"https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord\" alt=\"Discord server badge\" /></a></span>\n<span class=\"badge-twitch\"><a href=\"https://www.twitch.tv/balupton\" title=\"Join this project's community on Twitch\"><img src=\"https://img.shields.io/twitch/status/balupton?logo=twitch\" alt=\"Twitch community badge\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.3.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.3.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.3.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.3.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/index.cjs</code> which uses the <a href=\"https://github.com/bevry/editions\" title=\"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\">Editions Autoloader</a> to automatically select the correct edition for the consumer's environment</li>\n<li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-es2022/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es5/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES5 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2022-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 12 || 14 || 16 || 18 || 20 || 21 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-types/index.d.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled Types with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/Artistic-2.0.html\">Artistic License 2.0</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"764d4a64a6f01d12c10cd96de833e284961a2eeb","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-6/WJdve0a8x3sm5jsOQ5UaCVr60a1wZyQ9R2Jgz3PQY2assIQ2V8IEazOOzECrzZxhFBZVigEyOxPqfyhTYyUw==","shasum":"4081070cd5eb3e712022476e4b628e48c5037e80","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.3.0-next.1700848006.764d4a64a6f01d12c10cd96de833e284961a2eeb.tgz","fileCount":18,"unpackedSize":51025,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBzy4tcf/KTWghMWYV4NdfCLU/nsz9emJ6Z6S7w8IGEYAiEA09+LzywfbBrfOfJ8xzPcuVKjSlSJIDd5RdweQaVLzCU="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.3.0-next.1700848006.764d4a64a6f01d12c10cd96de833e284961a2eeb_1700848007814_0.9914368252792523"},"_hasShrinkwrap":false},"5.3.0":{"name":"getsetdeep","version":"5.3.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.16.0","typechecker":"^8.5.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.10.0","@typescript-eslint/eslint-plugin":"^6.12.0","@typescript-eslint/parser":"^6.12.0","assert-helpers":"^11.6.0","backbone":"^1.5.0","eslint":"^8.54.0","eslint-config-bevry":"^5.2.0","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.3.0","make-deno-edition":"^2.0.0","prettier":"^3.1.0","projectz":"^3.3.0","surge":"^0.23.1","typedoc":"^0.25.3","typescript":"5.2.2","valid-directory":"^4.5.0","valid-module":"^2.5.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5"},"boundation":{"dom":true},"_id":"getsetdeep@5.3.0","gitHead":"764d4a64a6f01d12c10cd96de833e284961a2eeb","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-Bpw/UU09McuAAvmnPIeDG6JU7W/S4Sa9d6+GHRL6gPQ9yrq0/7xJcWTM6N9Or7hrHmbmt3eGRG9P0FkxOKSp/w==","shasum":"9f315cd6f913d538d820bdafbc89670b85a84bad","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.3.0.tgz","fileCount":18,"unpackedSize":50967,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAp0xvVD4u1rUY5SzepU1nOqJ1Bw2r4HLcAMUJ3s/px9AiEAuqUHZnq2mH0k12LeWnNdFdb+my3LexCV4eRObYyZM5Y="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.3.0_1700848052232_0.0882947099803515"},"_hasShrinkwrap":false},"5.4.0-next.1701817853.3ef15ee663d9a5b333cd394f464d92e190c3ed61":{"name":"getsetdeep","version":"5.4.0-next.1701817853.3ef15ee663d9a5b333cd394f464d92e190c3ed61","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.19.0","typechecker":"^9.2.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.10.3","@typescript-eslint/eslint-plugin":"^6.13.2","@typescript-eslint/parser":"^6.13.2","assert-helpers":"^11.9.0","backbone":"^1.5.0","eslint":"^8.55.0","eslint-config-bevry":"^5.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.5.0","make-deno-edition":"^2.0.1","prettier":"^3.1.0","projectz":"^3.4.0","typedoc":"^0.25.4","typescript":"5.3.2","valid-directory":"^4.6.0","valid-module":"^2.6.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5","endOfLine":"lf"},"boundation":{"dom":true},"_id":"getsetdeep@5.4.0-next.1701817853.3ef15ee663d9a5b333cd394f464d92e190c3ed61","readme":"<!-- TITLE/ -->\n\n<h1>getsetdeep</h1>\n\n<!-- /TITLE -->\n\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-discord\"><a href=\"https://discord.gg/nQuXddV7VP\" title=\"Join this project's community on Discord\"><img src=\"https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord\" alt=\"Discord server badge\" /></a></span>\n<span class=\"badge-twitch\"><a href=\"https://www.twitch.tv/balupton\" title=\"Join this project's community on Twitch\"><img src=\"https://img.shields.io/twitch/status/balupton?logo=twitch\" alt=\"Twitch community badge\" /></a></span>\n\n<!-- /BADGES -->\n\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n<h2>Install</h2>\n\n<a href=\"https://npmjs.com\" title=\"npm is a package manager for javascript\"><h3>npm</h3></a>\n<ul>\n<li>Install: <code>npm install --save getsetdeep</code></li>\n<li>Import: <code>import * as pkg from ('getsetdeep')</code></li>\n<li>Require: <code>const pkg = require('getsetdeep')</code></li>\n</ul>\n\n<a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\"><h3>Deno</h3></a>\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.4.0/edition-deno/index.ts'\n```\n\n<a href=\"https://www.skypack.dev\" title=\"Skypack is a JavaScript Delivery Network for modern web apps\"><h3>Skypack</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.4.0'\n</script>\n```\n\n<a href=\"https://unpkg.com\" title=\"unpkg is a fast, global content delivery network for everything on npm\"><h3>unpkg</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.4.0'\n</script>\n```\n\n<a href=\"https://jspm.io\" title=\"Native ES Modules CDN\"><h3>jspm</h3></a>\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.4.0'\n</script>\n```\n\n<h3><a href=\"https://editions.bevry.me\" title=\"Editions are the best way to produce and consume packages you care about.\">Editions</a></h3>\n\n<p>This package is published with the following editions:</p>\n\n<ul><li><code>getsetdeep</code> aliases <code>getsetdeep/index.cjs</code> which uses the <a href=\"https://github.com/bevry/editions\" title=\"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\">Editions Autoloader</a> to automatically select the correct edition for the consumer's environment</li>\n<li><code>getsetdeep/source/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-browsers/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for web browsers with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-es2022/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 21 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es5/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES5 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 4 with <a href=\"https://nodejs.org/dist/latest-v5.x/docs/api/modules.html\" title=\"Node/CJS Modules\">Require</a> for modules</li>\n<li><code>getsetdeep/edition-es2022-esm/index.js</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled against ES2022 for <a href=\"https://nodejs.org\" title=\"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\">Node.js</a> 21 with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-types/index.d.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> compiled Types with <a href=\"https://babeljs.io/docs/learn-es2015/#modules\" title=\"ECMAScript Modules\">Import</a> for modules</li>\n<li><code>getsetdeep/edition-deno/index.ts</code> is <a href=\"https://www.typescriptlang.org/\" title=\"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. \">TypeScript</a> source code made to be compatible with <a href=\"https://deno.land\" title=\"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\">Deno</a></li></ul>\n\n<!-- /INSTALL -->\n\n\n<!-- HISTORY/ -->\n\n<h2>History</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/HISTORY.md#files\">Discover the release history by heading on over to the <code>HISTORY.md</code> file.</a>\n\n<!-- /HISTORY -->\n\n\n<!-- CONTRIBUTE/ -->\n\n<h2>Contribute</h2>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /CONTRIBUTE -->\n\n\n<!-- BACKERS/ -->\n\n<h2>Backers</h2>\n\n<h3>Maintainers</h3>\n\nThese amazing people are maintaining this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<h3>Sponsors</h3>\n\nNo sponsors yet! Will you be the first?\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n\n<h3>Contributors</h3>\n\nThese amazing people have contributed code to this project:\n\n<ul><li><a href=\"https://github.com/balupton\">Benjamin Lupton</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=balupton\" title=\"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\">view contributions</a></li>\n<li><a href=\"https://github.com/sfrdmn\">Sean Fridman</a> — <a href=\"https://github.com/bevry/getsetdeep/commits?author=sfrdmn\" title=\"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\">view contributions</a></li></ul>\n\n<a href=\"https://github.com/bevry/getsetdeep/blob/master/CONTRIBUTING.md#files\">Discover how you can contribute by heading on over to the <code>CONTRIBUTING.md</code> file.</a>\n\n<!-- /BACKERS -->\n\n\n<!-- LICENSE/ -->\n\n<h2>License</h2>\n\nUnless stated otherwise all works are:\n\n<ul><li>Copyright &copy; <a href=\"http://bevry.me\">Bevry Pty Ltd</a></li></ul>\n\nand licensed under:\n\n<ul><li><a href=\"http://spdx.org/licenses/Artistic-2.0.html\">Artistic License 2.0</a></li></ul>\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"3ef15ee663d9a5b333cd394f464d92e190c3ed61","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-rdFYvY/CAf9KWLkUGC0JJZf8K9BU910iGBdANKb0DA2j5YknVIHdq5YXOwGXVyKxN8qoVCB+nxchkVnNndW7JA==","shasum":"77fc67059f78da33bcd9a8228092b6b9e82bcbf5","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.4.0-next.1701817853.3ef15ee663d9a5b333cd394f464d92e190c3ed61.tgz","fileCount":18,"unpackedSize":50768,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChSni9GjYaGcZBl5iAKSp0+Ua8pBUcJmYtL/wl7sKgigIgELsylWb72Ja+nTTYUYQ9XKuSYomsgpD43dbziel1kgc="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.4.0-next.1701817853.3ef15ee663d9a5b333cd394f464d92e190c3ed61_1701817854897_0.8604628254663917"},"_hasShrinkwrap":false},"5.4.0":{"name":"getsetdeep","version":"5.4.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","license":"Artistic-2.0","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"funding":"https://bevry.me/fund","author":{"name":"Bevry Pty Ltd","email":"us@bevry.me","url":"http://bevry.me"},"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://github.com/balupton"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://github.com/sfrdmn"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.19.0","typechecker":"^9.2.0"},"devDependencies":{"@bevry/update-contributors":"^1.23.0","@types/backbone":"^1.4.18","@types/node":"^20.10.3","@typescript-eslint/eslint-plugin":"^6.13.2","@typescript-eslint/parser":"^6.13.2","assert-helpers":"^11.9.0","backbone":"^1.5.0","eslint":"^8.55.0","eslint-config-bevry":"^5.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.0.1","kava":"^7.5.0","make-deno-edition":"^2.0.1","prettier":"^3.1.0","projectz":"^3.4.0","typedoc":"^0.25.4","typescript":"5.3.2","valid-directory":"^4.6.0","valid-module":"^2.6.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:contributors && npm run our:meta:docs && npm run our:meta:projectz","our:meta:contributors":"update-contributors","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz compile","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:directory && npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:directory":"valid-directory","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5","endOfLine":"lf"},"boundation":{"dom":true},"_id":"getsetdeep@5.4.0","gitHead":"3ef15ee663d9a5b333cd394f464d92e190c3ed61","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-hFKpN6ZyXoTQN7coFtBP92exhECr32RWAVzALuzI3qhB55uIUOA14nTNeVYRcjMiMSCaQqWKPaL5ta/2Foon2w==","shasum":"a05f3906d70152c1ccf7d4bcd3e278c24fedd8bd","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.4.0.tgz","fileCount":18,"unpackedSize":50710,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICnpSdBWzoDnwdcvp/9Yi1gfz2lyPS3k1pS07hntQ2h3AiEA8R9O7a+nzZh1v2e9Lu+Zv+cRFxHhpmeEmIgxL7Vc+c8="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.4.0_1701817926645_0.6735136116548763"},"_hasShrinkwrap":false},"5.5.0-next.1703693259.437799df26cf9710c74ffed7d619f9e016e18f44":{"name":"getsetdeep","version":"5.5.0-next.1703693259.437799df26cf9710c74ffed7d619f9e016e18f44","license":"Artistic-2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","funding":"https://bevry.me/fund","repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"author":{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},"authors":["Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton): Accelerating collaborative wisdom."],"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://seanfridman.com"}],"sponsors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew): Software engineer and researcher","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa): We're Balsa, and we're building tools for builders.","Codecov <hello-codecov@sentry.io> (https://codecov.io/) (https://github.com/codecov): Empower developers with tools to improve code quality and testing.","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Sentry (https://sentry.io) (https://github.com/getsentry): Real-time crash reporting for your web apps, mobile apps, and games.","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm): Syntax Podcast"],"donors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew)","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa)","Chad (https://opencollective.com/chad8)","Codecov <hello-codecov@sentry.io> (https://codecov.io/) (https://github.com/codecov)","entroniq (https://gitlab.com/entroniq) (https://thanks.dev/d/gl/entroniq)","Jean-Luc Geering (https://github.com/jlgeering) (https://opencollective.com/jlgeering) (https://twitter.com/jlgeering)","Michael Duane Mooring (https://bevry.me) (https://github.com/mikeumus) (https://opencollective.com/mikeumus) (https://twitter.com/mikeumus)","Mohammed Shah <shah@idk.uno> (https://github.com/smashah) (https://thanks.dev/d/gh/smashah) (https://twitter.com/smashah)","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Sentry (https://sentry.io) (https://github.com/getsentry)","ServieJS (https://github.com/serviejs) (https://thanks.dev/d/gh/serviejs)","Skunk Team (https://skunk.team) (https://github.com/skunkteam)","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm)"],"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.20.0","typechecker":"^9.3.0"},"devDependencies":{"@types/backbone":"^1.4.18","@types/node":"^20.10.5","@typescript-eslint/eslint-plugin":"^6.16.0","@typescript-eslint/parser":"^6.16.0","assert-helpers":"^11.11.0","backbone":"^1.5.0","eslint":"^8.56.0","eslint-config-bevry":"^5.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.2","kava":"^7.6.0","make-deno-edition":"^2.1.0","prettier":"^3.1.1","projectz":"^4.0.0","typedoc":"^0.25.4","typescript":"5.3.3","valid-directory":"^4.7.0","valid-module":"^2.6.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:docs && npm run our:meta:projectz","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"boundation":{"dom":true},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5","endOfLine":"lf"},"_id":"getsetdeep@5.5.0-next.1703693259.437799df26cf9710c74ffed7d619f9e016e18f44","readme":"<!-- TITLE/ -->\n\n# getsetdeep\n\n<!-- /TITLE -->\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-discord\"><a href=\"https://discord.gg/nQuXddV7VP\" title=\"Join this project's community on Discord\"><img src=\"https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord\" alt=\"Discord server badge\" /></a></span>\n<span class=\"badge-twitch\"><a href=\"https://www.twitch.tv/balupton\" title=\"Join this project's community on Twitch\"><img src=\"https://img.shields.io/twitch/status/balupton?logo=twitch\" alt=\"Twitch community badge\" /></a></span>\n\n<!-- /BADGES -->\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n## Install\n\n### [npm](https://npmjs.com \"npm is a package manager for javascript\")\n\n-   Install: `npm install --save getsetdeep`\n-   Import: `import * as pkg from ('getsetdeep')`\n-   Require: `const pkg = require('getsetdeep')`\n\n### [Deno](https://deno.land \"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\")\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.5.0/edition-deno/index.ts'\n```\n### [Skypack](https://www.skypack.dev \"Skypack is a JavaScript Delivery Network for modern web apps\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.5.0'\n</script>\n```\n### [unpkg](https://unpkg.com \"unpkg is a fast, global content delivery network for everything on npm\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.5.0'\n</script>\n```\n### [jspm](https://jspm.io \"Native ES Modules CDN\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.5.0'\n</script>\n```\n### [Editions](https://editions.bevry.me \"Editions are the best way to produce and consume packages you care about.\")\n\nThis package is published with the following editions:\n-   `getsetdeep` aliases `getsetdeep/index.cjs` which uses the [Editions Autoloader](https://github.com/bevry/editions \"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\") to automatically select the correct edition for the consumer's environment\n-   `getsetdeep/source/index.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") source code with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-browsers/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for web browsers with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-es2022/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with [Require](https://nodejs.org/dist/latest-v5.x/docs/api/modules.html \"Node/CJS Modules\") for modules\n-   `getsetdeep/edition-es5/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against ES5 for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with [Require](https://nodejs.org/dist/latest-v5.x/docs/api/modules.html \"Node/CJS Modules\") for modules\n-   `getsetdeep/edition-es2022-esm/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 12 || 14 || 16 || 18 || 20 || 21 with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-types/index.d.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled Types with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-deno/index.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") source code made to be compatible with [Deno](https://deno.land \"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\")\n\n<!-- /INSTALL -->\n\n<!-- HISTORY/ -->\n\n## History\n\n[Discover the release history by heading on over to the `HISTORY.md` file.](https://github.com/bevry/getsetdeep/blob/HEAD/HISTORY.md#files)\n\n<!-- /HISTORY -->\n\n<!-- BACKERS/ -->\n\n## Backers\n\n### Code\n\n[Discover how to contribute via the `CONTRIBUTING.md` file.](https://github.com/bevry/getsetdeep/blob/HEAD/CONTRIBUTING.md#files)\n\n#### Authors\n\n-   [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.\n\n#### Maintainers\n\n-   [Benjamin Lupton](https://github.com/balupton) — Accelerating collaborative wisdom.\n\n#### Contributors\n\n-   [Benjamin Lupton](https://github.com/balupton) — [view contributions](https://github.com/bevry/getsetdeep/commits?author=balupton \"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\")\n-   [Sean Fridman](https://github.com/sfrdmn) — [view contributions](https://github.com/bevry/getsetdeep/commits?author=sfrdmn \"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\")\n\n### Finances\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n\n#### Sponsors\n\n-   [Andrew Nesbitt](https://nesbitt.io) — Software engineer and researcher\n-   [Balsa](https://balsa.com) — We're Balsa, and we're building tools for builders.\n-   [Codecov](https://codecov.io/) — Empower developers with tools to improve code quality and testing.\n-   [Poonacha Medappa](https://poonachamedappa.com)\n-   [Rob Morris](https://github.com/Rob-Morris)\n-   [Sentry](https://sentry.io) — Real-time crash reporting for your web apps, mobile apps, and games.\n-   [Syntax](https://syntax.fm) — Syntax Podcast\n\n#### Donors\n\n-   [Andrew Nesbitt](https://nesbitt.io)\n-   [Balsa](https://balsa.com)\n-   [Chad](https://opencollective.com/chad8)\n-   [Codecov](https://codecov.io/)\n-   [entroniq](https://gitlab.com/entroniq)\n-   [Jean-Luc Geering](https://github.com/jlgeering)\n-   [Michael Duane Mooring](https://bevry.me)\n-   [Mohammed Shah](https://github.com/smashah)\n-   [Poonacha Medappa](https://poonachamedappa.com)\n-   [Rob Morris](https://github.com/Rob-Morris)\n-   [Sentry](https://sentry.io)\n-   [ServieJS](https://github.com/serviejs)\n-   [Skunk Team](https://skunk.team)\n-   [Syntax](https://syntax.fm)\n\n<!-- /BACKERS -->\n\n<!-- LICENSE/ -->\n\n## License\n\nUnless stated otherwise all works are:\n\n-   Copyright &copy; [Benjamin Lupton](https://balupton.com)\n\nand licensed under:\n\n-   [Artistic License 2.0](http://spdx.org/licenses/Artistic-2.0.html)\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"437799df26cf9710c74ffed7d619f9e016e18f44","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-V/puk2AojvFC1JyWMWDvPAOsB4/vVQpwWut4SASAmZwDHcwj7mQ/8hf+bs+IhqqNT+z5fOVm3InDtilQ3V4GzQ==","shasum":"5f7b1f0136ff0ce369de5b9c2167a07a029535f4","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.5.0-next.1703693259.437799df26cf9710c74ffed7d619f9e016e18f44.tgz","fileCount":18,"unpackedSize":53055,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCX/MbRqGhUqOc+wFe/Qrst7FU6KQjnYgSvlDBAly2+BQIhAInjKa1KfmJtcO7s7dTHsNu2F8fGs5RsdDhbFu3jGibR"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.5.0-next.1703693259.437799df26cf9710c74ffed7d619f9e016e18f44_1703693260920_0.8279626565956155"},"_hasShrinkwrap":false},"5.5.0":{"name":"getsetdeep","version":"5.5.0","license":"Artistic-2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","funding":"https://bevry.me/fund","repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"author":{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},"authors":["Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton): Accelerating collaborative wisdom."],"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://seanfridman.com"}],"sponsors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew): Software engineer and researcher","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa): We're Balsa, and we're building tools for builders.","Codecov <hello-codecov@sentry.io> (https://codecov.io/) (https://github.com/codecov): Empower developers with tools to improve code quality and testing.","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Sentry (https://sentry.io) (https://github.com/getsentry): Real-time crash reporting for your web apps, mobile apps, and games.","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm): Syntax Podcast"],"donors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew)","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa)","Chad (https://opencollective.com/chad8)","Codecov <hello-codecov@sentry.io> (https://codecov.io/) (https://github.com/codecov)","entroniq (https://gitlab.com/entroniq) (https://thanks.dev/d/gl/entroniq)","Jean-Luc Geering (https://github.com/jlgeering) (https://opencollective.com/jlgeering) (https://twitter.com/jlgeering)","Michael Duane Mooring (https://bevry.me) (https://github.com/mikeumus) (https://opencollective.com/mikeumus) (https://twitter.com/mikeumus)","Mohammed Shah <shah@idk.uno> (https://github.com/smashah) (https://thanks.dev/d/gh/smashah) (https://twitter.com/smashah)","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Sentry (https://sentry.io) (https://github.com/getsentry)","ServieJS (https://github.com/serviejs) (https://thanks.dev/d/gh/serviejs)","Skunk Team (https://skunk.team) (https://github.com/skunkteam)","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm)"],"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.20.0","typechecker":"^9.3.0"},"devDependencies":{"@types/backbone":"^1.4.18","@types/node":"^20.10.5","@typescript-eslint/eslint-plugin":"^6.16.0","@typescript-eslint/parser":"^6.16.0","assert-helpers":"^11.11.0","backbone":"^1.5.0","eslint":"^8.56.0","eslint-config-bevry":"^5.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.2","kava":"^7.6.0","make-deno-edition":"^2.1.0","prettier":"^3.1.1","projectz":"^4.0.0","typedoc":"^0.25.4","typescript":"5.3.3","valid-directory":"^4.7.0","valid-module":"^2.6.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:docs && npm run our:meta:projectz","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"boundation":{"dom":true},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5","endOfLine":"lf"},"_id":"getsetdeep@5.5.0","gitHead":"437799df26cf9710c74ffed7d619f9e016e18f44","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-vuchmeTIwYkf/9+5hDPdKV5DmIITesIH4fEihZJv2gqqOqT0HN8T5Y4aTPubSUZgr22X3g+FmDdpOfQgsTIijQ==","shasum":"38cc0be4ab8debaf44096c577d5fe9830d8d599f","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.5.0.tgz","fileCount":18,"unpackedSize":52998,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNmvEvMuVzg8Yt/I8gAwI1OGOou43EgMhrOMi1rnAdQwIhAKJ1bPC/JyUz3VQqXWFxN/MYovc09GLMiIBLH7d3lxZM"}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.5.0_1703693268215_0.45297055349544"},"_hasShrinkwrap":false},"5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a":{"name":"getsetdeep","version":"5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a","license":"Artistic-2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","funding":"https://bevry.me/fund","repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"author":{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},"authors":["Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton): Accelerating collaborative wisdom."],"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://seanfridman.com"}],"sponsors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew): Software engineer and researcher","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa): We're Balsa, and we're building tools for builders.","Codecov <hello-codecov@sentry.io> (https://codecov.io) (https://github.com/codecov): Empower developers with tools to improve code quality and testing.","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Sentry (https://sentry.io) (https://github.com/getsentry): Real-time crash reporting for your web apps, mobile apps, and games.","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm): Syntax Podcast"],"donors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew)","Armen Mkrtchian (https://mogoni.dev) (https://github.com/Armenm)","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa)","Chad (https://opencollective.com/chad8)","Codecov <hello-codecov@sentry.io> (https://codecov.io) (https://github.com/codecov)","dr.dimitru (https://veliovgroup.com) (https://github.com/dr-dimitru)","Elliott Ditman (https://elliottditman.com) (https://github.com/elliottditman)","entroniq (https://gitlab.com/entroniq) (https://thanks.dev/d/gl/entroniq)","GitHub (https://github.com/about) (https://github.com/github)","Hunter Beast (https://cryptoquick.com) (https://github.com/cryptoquick)","Jean-Luc Geering (https://github.com/jlgeering) (https://opencollective.com/jlgeering) (https://twitter.com/jlgeering)","Michael Duane Mooring (https://mdm.cc) (https://github.com/mikeumus) (https://opencollective.com/mikeumus) (https://twitter.com/mikeumus)","Michael Harry Scepaniak <mhs1.sys@gmail.com> (https://michaelscepaniak.com) (https://github.com/hispanic)","Mohammed Shah <shah@idk.uno> (https://github.com/smashah) (https://thanks.dev/d/gh/smashah) (https://twitter.com/smashah)","Mr. Henry <hello@mrhenry.be> (https://mrhenry.be) (https://github.com/mrhenry)","Nermal <nermalcat69@skiff.com> (https://arjunaditya.vercel.app) (https://github.com/nermalcat69)","Pleo (https://pleo.io) (https://github.com/pleo-io)","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Robert de Forest <guitar.robot@gmail.com> (https://github.com/rdeforest)","Sentry (https://sentry.io) (https://github.com/getsentry)","ServieJS (https://github.com/serviejs) (https://thanks.dev/d/gh/serviejs)","Skunk Team (https://skunk.team) (https://github.com/skunkteam)","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm)","WriterJohnBuck (https://github.com/WriterJohnBuck)"],"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.21.0","typechecker":"^9.3.0"},"devDependencies":{"@types/backbone":"^1.4.18","@types/node":"^20.10.5","@typescript-eslint/eslint-plugin":"^6.16.0","@typescript-eslint/parser":"^6.16.0","assert-helpers":"^11.12.0","backbone":"^1.5.0","eslint":"^8.56.0","eslint-config-bevry":"^5.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.2","kava":"^7.8.0","make-deno-edition":"^2.2.0","prettier":"^3.1.1","projectz":"^4.1.1","typedoc":"^0.25.4","typescript":"5.3.3","valid-directory":"^4.8.0","valid-module":"^2.6.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:docs && npm run our:meta:projectz","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz --offline","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"boundation":{"dom":true},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5","endOfLine":"lf"},"_id":"getsetdeep@5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a","readme":"<!-- TITLE/ -->\n\n# getsetdeep\n\n<!-- /TITLE -->\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-discord\"><a href=\"https://discord.gg/nQuXddV7VP\" title=\"Join this project's community on Discord\"><img src=\"https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord\" alt=\"Discord server badge\" /></a></span>\n<span class=\"badge-twitch\"><a href=\"https://www.twitch.tv/balupton\" title=\"Join this project's community on Twitch\"><img src=\"https://img.shields.io/twitch/status/balupton?logo=twitch\" alt=\"Twitch community badge\" /></a></span>\n\n<!-- /BADGES -->\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n## Install\n\n### [npm](https://npmjs.com \"npm is a package manager for javascript\")\n\n-   Install: `npm install --save getsetdeep`\n-   Import: `import * as pkg from ('getsetdeep')`\n-   Require: `const pkg = require('getsetdeep')`\n\n### [Deno](https://deno.land \"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\")\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.6.0/edition-deno/index.ts'\n```\n### [Skypack](https://www.skypack.dev \"Skypack is a JavaScript Delivery Network for modern web apps\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.6.0'\n</script>\n```\n### [unpkg](https://unpkg.com \"unpkg is a fast, global content delivery network for everything on npm\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.6.0'\n</script>\n```\n### [jspm](https://jspm.io \"Native ES Modules CDN\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.6.0'\n</script>\n```\n### [Editions](https://editions.bevry.me \"Editions are the best way to produce and consume packages you care about.\")\n\nThis package is published with the following editions:\n-   `getsetdeep` aliases `getsetdeep/index.cjs` which uses the [Editions Autoloader](https://github.com/bevry/editions \"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\") to automatically select the correct edition for the consumer's environment\n-   `getsetdeep/source/index.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") source code with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-browsers/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for web browsers with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-es2022/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with [Require](https://nodejs.org/dist/latest-v5.x/docs/api/modules.html \"Node/CJS Modules\") for modules\n-   `getsetdeep/edition-es5/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against ES5 for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with [Require](https://nodejs.org/dist/latest-v5.x/docs/api/modules.html \"Node/CJS Modules\") for modules\n-   `getsetdeep/edition-es2022-esm/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 12 || 14 || 16 || 18 || 20 || 21 with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-types/index.d.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled Types with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-deno/index.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") source code made to be compatible with [Deno](https://deno.land \"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\")\n\n<!-- /INSTALL -->\n\n<!-- HISTORY/ -->\n\n## History\n\n[Discover the release history by heading on over to the `HISTORY.md` file.](https://github.com/bevry/getsetdeep/blob/HEAD/HISTORY.md#files)\n\n<!-- /HISTORY -->\n\n<!-- BACKERS/ -->\n\n## Backers\n\n### Code\n\n[Discover how to contribute via the `CONTRIBUTING.md` file.](https://github.com/bevry/getsetdeep/blob/HEAD/CONTRIBUTING.md#files)\n\n#### Authors\n\n-   [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.\n\n#### Maintainers\n\n-   [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.\n\n#### Contributors\n\n-   [Benjamin Lupton](https://github.com/balupton) — [view contributions](https://github.com/bevry/getsetdeep/commits?author=balupton \"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\")\n-   [Sean Fridman](https://github.com/sfrdmn) — [view contributions](https://github.com/bevry/getsetdeep/commits?author=sfrdmn \"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\")\n\n### Finances\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n\n#### Sponsors\n\n-   [Andrew Nesbitt](https://nesbitt.io) — Software engineer and researcher\n-   [Balsa](https://balsa.com) — We're Balsa, and we're building tools for builders.\n-   [Codecov](https://codecov.io) — Empower developers with tools to improve code quality and testing.\n-   [Poonacha Medappa](https://poonachamedappa.com)\n-   [Rob Morris](https://github.com/Rob-Morris)\n-   [Sentry](https://sentry.io) — Real-time crash reporting for your web apps, mobile apps, and games.\n-   [Syntax](https://syntax.fm) — Syntax Podcast\n\n#### Donors\n\n-   [Andrew Nesbitt](https://nesbitt.io)\n-   [Armen Mkrtchian](https://mogoni.dev)\n-   [Balsa](https://balsa.com)\n-   [Chad](https://opencollective.com/chad8)\n-   [Codecov](https://codecov.io)\n-   [dr.dimitru](https://veliovgroup.com)\n-   [Elliott Ditman](https://elliottditman.com)\n-   [entroniq](https://gitlab.com/entroniq)\n-   [GitHub](https://github.com/about)\n-   [Hunter Beast](https://cryptoquick.com)\n-   [Jean-Luc Geering](https://github.com/jlgeering)\n-   [Michael Duane Mooring](https://mdm.cc)\n-   [Michael Harry Scepaniak](https://michaelscepaniak.com)\n-   [Mohammed Shah](https://github.com/smashah)\n-   [Mr. Henry](https://mrhenry.be)\n-   [Nermal](https://arjunaditya.vercel.app)\n-   [Pleo](https://pleo.io)\n-   [Poonacha Medappa](https://poonachamedappa.com)\n-   [Rob Morris](https://github.com/Rob-Morris)\n-   [Robert de Forest](https://github.com/rdeforest)\n-   [Sentry](https://sentry.io)\n-   [ServieJS](https://github.com/serviejs)\n-   [Skunk Team](https://skunk.team)\n-   [Syntax](https://syntax.fm)\n-   [WriterJohnBuck](https://github.com/WriterJohnBuck)\n\n<!-- /BACKERS -->\n\n<!-- LICENSE/ -->\n\n## License\n\nUnless stated otherwise all works are:\n\n-   Copyright &copy; [Benjamin Lupton](https://balupton.com)\n\nand licensed under:\n\n-   [Artistic License 2.0](http://spdx.org/licenses/Artistic-2.0.html)\n\n<!-- /LICENSE -->\n","readmeFilename":"README.md","gitHead":"f6581e89654fc884132595e66274c9bfc9f77a4a","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-k57jg4b7SnOrSXl9NNwcq3TvsXwmOJnjlwH3D+/tLuOkAV7vpFNyXlAy9JQMAeKMiQj8NL/z3yDZSTh9U3VDew==","shasum":"4b55b53118e1060b8a7eab119cd6e2ce1edf2d1f","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a.tgz","fileCount":18,"unpackedSize":54428,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBrwRS3ZfgoyQrJwm48SeafHUqghrBlN8Qgzp/sgzu84AiBSfzyysymQnjnOjGcKDbyB9dIMjVB2ovAjlTk7srliQw=="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a_1703868388069_0.261489661517456"},"_hasShrinkwrap":false},"5.6.0":{"name":"getsetdeep","version":"5.6.0","license":"Artistic-2.0","description":"Get and set nested variables of an object, includes support for Backbone Models","homepage":"https://github.com/bevry/getsetdeep","funding":"https://bevry.me/fund","repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"badges":{"list":["githubworkflow","npmversion","npmdownloads","---","githubsponsors","thanksdev","patreon","liberapay","buymeacoffee","opencollective","crypto","paypal","---","discord","twitch"],"config":{"githubWorkflow":"bevry","githubSponsorsUsername":"balupton","thanksdevGithubUsername":"bevry","buymeacoffeeUsername":"balupton","cryptoURL":"https://bevry.me/crypto","flattrUsername":"balupton","liberapayUsername":"bevry","opencollectiveUsername":"bevry","patreonUsername":"bevry","paypalURL":"https://bevry.me/paypal","wishlistURL":"https://bevry.me/wishlist","discordServerID":"1147436445783560193","discordServerInvite":"nQuXddV7VP","twitchUsername":"balupton","githubUsername":"bevry","githubRepository":"getsetdeep","githubSlug":"bevry/getsetdeep","npmPackageName":"getsetdeep"}},"author":{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},"authors":["Benjamin Lupton <b@lupton.cc> (https://balupton.com) (https://github.com/balupton): Accelerating collaborative wisdom."],"maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://seanfridman.com"}],"sponsors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew): Software engineer and researcher","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa): We're Balsa, and we're building tools for builders.","Codecov <hello-codecov@sentry.io> (https://codecov.io) (https://github.com/codecov): Empower developers with tools to improve code quality and testing.","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Sentry (https://sentry.io) (https://github.com/getsentry): Real-time crash reporting for your web apps, mobile apps, and games.","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm): Syntax Podcast"],"donors":["Andrew Nesbitt (https://nesbitt.io) (https://github.com/andrew)","Armen Mkrtchian (https://mogoni.dev) (https://github.com/Armenm)","Balsa <hello@balsa.com> (https://balsa.com) (https://github.com/balsa)","Chad (https://opencollective.com/chad8)","Codecov <hello-codecov@sentry.io> (https://codecov.io) (https://github.com/codecov)","dr.dimitru (https://veliovgroup.com) (https://github.com/dr-dimitru)","Elliott Ditman (https://elliottditman.com) (https://github.com/elliottditman)","entroniq (https://gitlab.com/entroniq) (https://thanks.dev/d/gl/entroniq)","GitHub (https://github.com/about) (https://github.com/github)","Hunter Beast (https://cryptoquick.com) (https://github.com/cryptoquick)","Jean-Luc Geering (https://github.com/jlgeering) (https://opencollective.com/jlgeering) (https://twitter.com/jlgeering)","Michael Duane Mooring (https://mdm.cc) (https://github.com/mikeumus) (https://opencollective.com/mikeumus) (https://twitter.com/mikeumus)","Michael Harry Scepaniak <mhs1.sys@gmail.com> (https://michaelscepaniak.com) (https://github.com/hispanic)","Mohammed Shah <shah@idk.uno> (https://github.com/smashah) (https://thanks.dev/d/gh/smashah) (https://twitter.com/smashah)","Mr. Henry <hello@mrhenry.be> (https://mrhenry.be) (https://github.com/mrhenry)","Nermal <nermalcat69@skiff.com> (https://arjunaditya.vercel.app) (https://github.com/nermalcat69)","Pleo (https://pleo.io) (https://github.com/pleo-io)","Poonacha Medappa (https://poonachamedappa.com) (https://github.com/km-Poonacha)","Rob Morris <rob@prismatik.com.au> (https://github.com/Rob-Morris)","Robert de Forest <guitar.robot@gmail.com> (https://github.com/rdeforest)","Sentry (https://sentry.io) (https://github.com/getsentry)","ServieJS (https://github.com/serviejs) (https://thanks.dev/d/gh/serviejs)","Skunk Team (https://skunk.team) (https://github.com/skunkteam)","Syntax <scott@syntax.fm> (https://syntax.fm) (https://github.com/syntaxfm)","WriterJohnBuck (https://github.com/WriterJohnBuck)"],"engines":{"node":">=4"},"editions":[{"description":"TypeScript source code with Import for modules","directory":"source","entry":"index.ts","tags":["source","typescript","import"],"engines":false},{"description":"TypeScript compiled against ES2022 for web browsers with Import for modules","directory":"edition-browsers","entry":"index.js","tags":["compiled","javascript","import"],"engines":{"node":false,"browsers":"defaults"}},{"description":"TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es2022","entry":"index.js","tags":["compiled","javascript","es2022","require"],"engines":{"node":"6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modules","directory":"edition-es5","entry":"index.js","tags":["compiled","javascript","es5","require"],"engines":{"node":"4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modules","directory":"edition-es2022-esm","entry":"index.js","tags":["compiled","javascript","es2022","import"],"engines":{"node":"12 || 14 || 16 || 18 || 20 || 21","browsers":false}},{"description":"TypeScript compiled Types with Import for modules","directory":"edition-types","entry":"index.d.ts","tags":["compiled","types","import"],"engines":false},{"description":"TypeScript source code made to be compatible with Deno","directory":"edition-deno","entry":"index.ts","tags":["typescript","import","deno"],"engines":{"deno":true,"browsers":true}}],"types":"edition-types/index.d.ts","type":"module","main":"index.cjs","exports":{"node":{"types":"./edition-types/index.d.ts","import":"./edition-es2022-esm/index.js","default":"./index.cjs","require":"./edition-es2022/index.js"},"browser":{"types":"./edition-types/index.d.ts","import":"./edition-browsers/index.js"}},"deno":"edition-deno/index.ts","browser":"edition-browsers/index.js","module":"edition-browsers/index.js","dependencies":{"editions":"^6.21.0","typechecker":"^9.3.0"},"devDependencies":{"@types/backbone":"^1.4.18","@types/node":"^20.10.5","@typescript-eslint/eslint-plugin":"^6.16.0","@typescript-eslint/parser":"^6.16.0","assert-helpers":"^11.12.0","backbone":"^1.5.0","eslint":"^8.56.0","eslint-config-bevry":"^5.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.2","kava":"^7.8.0","make-deno-edition":"^2.2.0","prettier":"^3.1.1","projectz":"^4.1.1","typedoc":"^0.25.4","typescript":"5.3.3","valid-directory":"^4.8.0","valid-module":"^2.6.0"},"scripts":{"our:clean":"rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next","our:compile":"npm run our:compile:deno && npm run our:compile:edition-browsers && npm run our:compile:edition-es2022 && npm run our:compile:edition-es2022-esm && npm run our:compile:edition-es5 && npm run our:compile:edition-types","our:compile:deno":"make-deno-edition --attempt","our:compile:edition-browsers":"tsc --module ESNext --target ES2022 --outDir ./edition-browsers --project tsconfig.json && ( test ! -d edition-browsers/source || ( mv edition-browsers/source edition-temp && rm -rf edition-browsers && mv edition-temp edition-browsers ) )","our:compile:edition-es2022":"tsc --module commonjs --target ES2022 --outDir ./edition-es2022 --project tsconfig.json && ( test ! -d edition-es2022/source || ( mv edition-es2022/source edition-temp && rm -rf edition-es2022 && mv edition-temp edition-es2022 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es2022/package.json","our:compile:edition-es2022-esm":"tsc --module ESNext --target ES2022 --outDir ./edition-es2022-esm --project tsconfig.json && ( test ! -d edition-es2022-esm/source || ( mv edition-es2022-esm/source edition-temp && rm -rf edition-es2022-esm && mv edition-temp edition-es2022-esm ) ) && printf '%s' '{\"type\": \"module\"}' > edition-es2022-esm/package.json","our:compile:edition-es5":"tsc --module commonjs --target ES5 --outDir ./edition-es5 --project tsconfig.json && ( test ! -d edition-es5/source || ( mv edition-es5/source edition-temp && rm -rf edition-es5 && mv edition-temp edition-es5 ) ) && printf '%s' '{\"type\": \"commonjs\"}' > edition-es5/package.json","our:compile:edition-types":"tsc --emitDeclarationOnly --declaration --declarationMap --declarationDir ./edition-types --project tsconfig.json && ( test ! -d edition-types/source || ( mv edition-types/source edition-temp && rm -rf edition-types && mv edition-temp edition-types ) )","our:deploy":"printf '%s\n' 'no need for this project'","our:meta":"npm run our:meta:docs && npm run our:meta:projectz","our:meta:docs":"npm run our:meta:docs:typedoc","our:meta:docs:typedoc":"rm -rf ./docs && typedoc --exclude '**/+(*test*|node_modules)' --excludeExternals --out ./docs ./source","our:meta:projectz":"projectz --offline","our:release":"npm run our:release:prepare && npm run our:release:check-changelog && npm run our:release:check-dirty && npm run our:release:tag && npm run our:release:push","our:release:check-changelog":"cat ./HISTORY.md | grep \"v$npm_package_version\" || (printf '%s\n' \"add a changelog entry for v$npm_package_version\" && exit -1)","our:release:check-dirty":"git diff --exit-code","our:release:prepare":"npm run our:clean && npm run our:compile && npm run our:test && npm run our:meta","our:release:push":"git push origin && git push origin --tags","our:release:tag":"export MESSAGE=$(cat ./HISTORY.md | sed -n \"/## v$npm_package_version/,/##/p\" | sed 's/## //' | awk 'NR>1{print buf}{buf = $0}') && test \"$MESSAGE\" || (printf '%s\n' 'proper changelog entry not found' && exit -1) && git tag \"v$npm_package_version\" -am \"$MESSAGE\"","our:setup":"npm run our:setup:install","our:setup:install":"npm install","our:test":"npm run our:verify && npm test","our:verify":"npm run our:verify:eslint && npm run our:verify:module && npm run our:verify:prettier","our:verify:eslint":"eslint --fix --ignore-pattern '**/*.d.ts' --ignore-pattern '**/vendor/' --ignore-pattern '**/node_modules/' --ext .mjs,.js,.jsx,.ts,.tsx ./source","our:verify:module":"valid-module","our:verify:prettier":"prettier --write .","test":"node ./test.cjs"},"boundation":{"dom":true},"eslintConfig":{"extends":["bevry"]},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"es5","endOfLine":"lf"},"_id":"getsetdeep@5.6.0","gitHead":"f6581e89654fc884132595e66274c9bfc9f77a4a","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-D47Day+VHl2meOUyE/lcvllZhKsKk9OBSqhKbY8GTaxwZ1G+rMdXZW2F9Oz5x8vHRmeQ53C15uQ8mFL6ahzDbg==","shasum":"5d4ae354f831a470e2f65c4707dfe4bd0e51454f","tarball":"https://registry.npmjs.org/getsetdeep/-/getsetdeep-5.6.0.tgz","fileCount":18,"unpackedSize":54371,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDN0c3cnVe0x4r2y5T5MpCLe3IySFbtb5LeDTaVxaWeawIgEcsB4BMvV79xqKx1KbypW1BzofmccMUryLbwvJPVOFs="}]},"_npmUser":{"name":"bevryme","email":"us@bevry.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/getsetdeep_5.6.0_1703868429361_0.970630636427805"},"_hasShrinkwrap":false}},"readme":"<!-- TITLE/ -->\n\n# getsetdeep\n\n<!-- /TITLE -->\n\n<!-- BADGES/ -->\n\n<span class=\"badge-githubworkflow\"><a href=\"https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry\" title=\"View the status of this project's GitHub Workflow: bevry\"><img src=\"https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg\" alt=\"Status of the GitHub Workflow: bevry\" /></a></span>\n<span class=\"badge-npmversion\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/v/getsetdeep.svg\" alt=\"NPM version\" /></a></span>\n<span class=\"badge-npmdownloads\"><a href=\"https://npmjs.org/package/getsetdeep\" title=\"View this project on NPM\"><img src=\"https://img.shields.io/npm/dm/getsetdeep.svg\" alt=\"NPM downloads\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n<br class=\"badge-separator\" />\n<span class=\"badge-discord\"><a href=\"https://discord.gg/nQuXddV7VP\" title=\"Join this project's community on Discord\"><img src=\"https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord\" alt=\"Discord server badge\" /></a></span>\n<span class=\"badge-twitch\"><a href=\"https://www.twitch.tv/balupton\" title=\"Join this project's community on Twitch\"><img src=\"https://img.shields.io/twitch/status/balupton?logo=twitch\" alt=\"Twitch community badge\" /></a></span>\n\n<!-- /BADGES -->\n\n<!-- DESCRIPTION/ -->\n\nGet and set nested variables of an object, includes support for Backbone Models\n\n<!-- /DESCRIPTION -->\n\n\n## Usage\n\n[Complete API Documentation.](http://master.getsetdeep.bevry.surge.sh/docs/)\n\n### Example\n\n```javascript\n// Import\nimport { setDeep, getDeep } from 'getsetdeep'\n\n// Prepare\nconst obj = {\n    a: {\n        b: {\n            c: 3,\n        },\n    },\n}\n\n// Get\nconsole.log(getDeep(obj, 'a.b.c')) // 3\nconsole.log(setDeep(obj, 'a.b.c', 4)) // 4\nconsole.log(getDeep(obj, 'a.b.c')) // 4\n```\n\n### Notes\n\n-   `setDeep` also has a fourth argument `opts` for options, currently we support the options:\n    -   `onlyIfEmpty` defaults to `false`, if specified to `true` then `setDeep` will only set the value if the current value is `null` or `undefined`\n-   We also work with getters `get(key)` and setters `set(attrs, opts)`, enabling support for Backbone.js models as well as others\n\n### Security\n\nTo satisfy the egos of some security researchers, just as you wouldn't do `obj[prompt('some user input')] = 'value'` don't do `setDeep(obj, prompt('some user input'), 'value')`, [obviously](https://medium.com/intrinsic/javascript-prototype-poisoning-vulnerabilities-in-the-wild-7bc15347c96). Rather than `getsetdeep` preventing `__proto__` access, we assume the consumers of this library are intelligent enough to do what they intend.\n\n<!-- INSTALL/ -->\n\n## Install\n\n### [npm](https://npmjs.com \"npm is a package manager for javascript\")\n\n-   Install: `npm install --save getsetdeep`\n-   Import: `import * as pkg from ('getsetdeep')`\n-   Require: `const pkg = require('getsetdeep')`\n\n### [Deno](https://deno.land \"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative for Node.js\")\n\n``` typescript\nimport * as pkg from 'https://unpkg.com/getsetdeep@^5.6.0/edition-deno/index.ts'\n```\n### [Skypack](https://www.skypack.dev \"Skypack is a JavaScript Delivery Network for modern web apps\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.6.0'\n</script>\n```\n### [unpkg](https://unpkg.com \"unpkg is a fast, global content delivery network for everything on npm\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//unpkg.com/getsetdeep@^5.6.0'\n</script>\n```\n### [jspm](https://jspm.io \"Native ES Modules CDN\")\n\n``` html\n<script type=\"module\">\n    import * as pkg from '//dev.jspm.io/getsetdeep@5.6.0'\n</script>\n```\n### [Editions](https://editions.bevry.me \"Editions are the best way to produce and consume packages you care about.\")\n\nThis package is published with the following editions:\n-   `getsetdeep` aliases `getsetdeep/index.cjs` which uses the [Editions Autoloader](https://github.com/bevry/editions \"You can use the Editions Autoloader to autoload the appropriate edition for your consumers environment\") to automatically select the correct edition for the consumer's environment\n-   `getsetdeep/source/index.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") source code with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-browsers/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for web browsers with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-es2022/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with [Require](https://nodejs.org/dist/latest-v5.x/docs/api/modules.html \"Node/CJS Modules\") for modules\n-   `getsetdeep/edition-es5/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against ES5 for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with [Require](https://nodejs.org/dist/latest-v5.x/docs/api/modules.html \"Node/CJS Modules\") for modules\n-   `getsetdeep/edition-es2022-esm/index.js` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled against [ES2022](https://en.wikipedia.org/wiki/ES2022 \"ECMAScript 2022\") for [Node.js](https://nodejs.org \"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine\") 12 || 14 || 16 || 18 || 20 || 21 with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-types/index.d.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") compiled Types with [Import](https://babeljs.io/docs/learn-es2015/#modules \"ECMAScript Modules\") for modules\n-   `getsetdeep/edition-deno/index.ts` is [TypeScript](https://www.typescriptlang.org/ \"TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.\") source code made to be compatible with [Deno](https://deno.land \"Deno is a secure runtime for JavaScript and TypeScript, it is an alternative to Node.js\")\n\n<!-- /INSTALL -->\n\n<!-- HISTORY/ -->\n\n## History\n\n[Discover the release history by heading on over to the `HISTORY.md` file.](https://github.com/bevry/getsetdeep/blob/HEAD/HISTORY.md#files)\n\n<!-- /HISTORY -->\n\n<!-- BACKERS/ -->\n\n## Backers\n\n### Code\n\n[Discover how to contribute via the `CONTRIBUTING.md` file.](https://github.com/bevry/getsetdeep/blob/HEAD/CONTRIBUTING.md#files)\n\n#### Authors\n\n-   [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.\n\n#### Maintainers\n\n-   [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.\n\n#### Contributors\n\n-   [Benjamin Lupton](https://github.com/balupton) — [view contributions](https://github.com/bevry/getsetdeep/commits?author=balupton \"View the GitHub contributions of Benjamin Lupton on repository bevry/getsetdeep\")\n-   [Sean Fridman](https://github.com/sfrdmn) — [view contributions](https://github.com/bevry/getsetdeep/commits?author=sfrdmn \"View the GitHub contributions of Sean Fridman on repository bevry/getsetdeep\")\n\n### Finances\n\n<span class=\"badge-githubsponsors\"><a href=\"https://github.com/sponsors/balupton\" title=\"Donate to this project using GitHub Sponsors\"><img src=\"https://img.shields.io/badge/github-donate-yellow.svg\" alt=\"GitHub Sponsors donate button\" /></a></span>\n<span class=\"badge-thanksdev\"><a href=\"https://thanks.dev/u/gh/bevry\" title=\"Donate to this project using ThanksDev\"><img src=\"https://img.shields.io/badge/thanksdev-donate-yellow.svg\" alt=\"ThanksDev donate button\" /></a></span>\n<span class=\"badge-patreon\"><a href=\"https://patreon.com/bevry\" title=\"Donate to this project using Patreon\"><img src=\"https://img.shields.io/badge/patreon-donate-yellow.svg\" alt=\"Patreon donate button\" /></a></span>\n<span class=\"badge-liberapay\"><a href=\"https://liberapay.com/bevry\" title=\"Donate to this project using Liberapay\"><img src=\"https://img.shields.io/badge/liberapay-donate-yellow.svg\" alt=\"Liberapay donate button\" /></a></span>\n<span class=\"badge-buymeacoffee\"><a href=\"https://buymeacoffee.com/balupton\" title=\"Donate to this project using Buy Me A Coffee\"><img src=\"https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg\" alt=\"Buy Me A Coffee donate button\" /></a></span>\n<span class=\"badge-opencollective\"><a href=\"https://opencollective.com/bevry\" title=\"Donate to this project using Open Collective\"><img src=\"https://img.shields.io/badge/open%20collective-donate-yellow.svg\" alt=\"Open Collective donate button\" /></a></span>\n<span class=\"badge-crypto\"><a href=\"https://bevry.me/crypto\" title=\"Donate to this project using Cryptocurrency\"><img src=\"https://img.shields.io/badge/crypto-donate-yellow.svg\" alt=\"crypto donate button\" /></a></span>\n<span class=\"badge-paypal\"><a href=\"https://bevry.me/paypal\" title=\"Donate to this project using Paypal\"><img src=\"https://img.shields.io/badge/paypal-donate-yellow.svg\" alt=\"PayPal donate button\" /></a></span>\n\n#### Sponsors\n\n-   [Andrew Nesbitt](https://nesbitt.io) — Software engineer and researcher\n-   [Balsa](https://balsa.com) — We're Balsa, and we're building tools for builders.\n-   [Codecov](https://codecov.io) — Empower developers with tools to improve code quality and testing.\n-   [Poonacha Medappa](https://poonachamedappa.com)\n-   [Rob Morris](https://github.com/Rob-Morris)\n-   [Sentry](https://sentry.io) — Real-time crash reporting for your web apps, mobile apps, and games.\n-   [Syntax](https://syntax.fm) — Syntax Podcast\n\n#### Donors\n\n-   [Andrew Nesbitt](https://nesbitt.io)\n-   [Armen Mkrtchian](https://mogoni.dev)\n-   [Balsa](https://balsa.com)\n-   [Chad](https://opencollective.com/chad8)\n-   [Codecov](https://codecov.io)\n-   [dr.dimitru](https://veliovgroup.com)\n-   [Elliott Ditman](https://elliottditman.com)\n-   [entroniq](https://gitlab.com/entroniq)\n-   [GitHub](https://github.com/about)\n-   [Hunter Beast](https://cryptoquick.com)\n-   [Jean-Luc Geering](https://github.com/jlgeering)\n-   [Michael Duane Mooring](https://mdm.cc)\n-   [Michael Harry Scepaniak](https://michaelscepaniak.com)\n-   [Mohammed Shah](https://github.com/smashah)\n-   [Mr. Henry](https://mrhenry.be)\n-   [Nermal](https://arjunaditya.vercel.app)\n-   [Pleo](https://pleo.io)\n-   [Poonacha Medappa](https://poonachamedappa.com)\n-   [Rob Morris](https://github.com/Rob-Morris)\n-   [Robert de Forest](https://github.com/rdeforest)\n-   [Sentry](https://sentry.io)\n-   [ServieJS](https://github.com/serviejs)\n-   [Skunk Team](https://skunk.team)\n-   [Syntax](https://syntax.fm)\n-   [WriterJohnBuck](https://github.com/WriterJohnBuck)\n\n<!-- /BACKERS -->\n\n<!-- LICENSE/ -->\n\n## License\n\nUnless stated otherwise all works are:\n\n-   Copyright &copy; [Benjamin Lupton](https://balupton.com)\n\nand licensed under:\n\n-   [Artistic License 2.0](http://spdx.org/licenses/Artistic-2.0.html)\n\n<!-- /LICENSE -->\n","maintainers":[{"name":"bevryme","email":"us@bevry.me"}],"time":{"modified":"2023-12-29T16:47:09.731Z","created":"2013-03-28T09:21:05.981Z","2.0.0":"2013-03-28T09:21:23.284Z","2.1.0":"2013-04-10T04:58:53.534Z","3.0.0":"2018-01-26T07:01:16.299Z","3.1.0":"2019-09-10T13:56:41.795Z","3.2.0":"2019-11-13T00:58:56.790Z","3.2.0-next.1573610869.45439ac111ad6971d702f22530258c20ef509216":"2019-11-13T02:07:51.559Z","3.2.0-next.1573687530.b46c5ba4eefd0756c6589badf681369f74db0e21":"2019-11-13T23:25:31.917Z","3.2.0-next.1573739143.86daf3605958ff3b50f3ce7658d52f7186f6d97d":"2019-11-14T13:45:44.957Z","3.3.0-next.1574051324.db8d4573c96195db03a46275dc893679c4b5375e":"2019-11-18T04:28:46.657Z","3.3.0":"2019-11-18T04:29:13.633Z","3.3.0-next.1574650550.552efa10749615ac128715b9f149d9f4d4efc8f1":"2019-11-25T02:56:01.385Z","3.3.0-next.1574658406.8386684d3007d0385dc38d1992bf4068cfe64eb0":"2019-11-25T05:07:05.103Z","3.4.0-next.1575149098.ccce6358cd4dab945424c3b0bec293cc4613b917":"2019-11-30T21:25:00.337Z","3.4.0":"2019-11-30T21:26:07.812Z","3.5.0-next.1575176034.e0480089976bc92e70f8d5cb7c6c7155de85c829":"2019-12-01T04:53:55.867Z","3.5.0":"2019-12-01T04:55:06.740Z","3.6.0":"2019-12-09T09:11:25.350Z","3.6.0-next.1575882740.68eb5a738e880e7fd2f19f6c3257349e06ad9ba1":"2019-12-09T09:12:22.314Z","3.7.0-next.1576641801.7067daca54232c7786f96a68cb2a578de64e8ddd":"2019-12-18T04:03:23.046Z","3.7.0":"2019-12-18T04:04:30.148Z","4.0.0-next.1588742289.1622909b878cc800f70b0ef74acaddc40b2fea3a":"2020-05-06T05:18:10.861Z","4.0.0":"2020-05-06T05:19:23.850Z","4.1.0-next.1589990534.63e16f8d64d5fb030aa9d4417f933d13060c1663":"2020-05-20T16:02:15.934Z","4.1.0":"2020-05-20T16:03:35.679Z","4.2.0-next.1590038987.a0d2dcf4db6b8fcb0a9bc938e0f4e612dc25f495":"2020-05-21T05:29:48.595Z","4.2.0":"2020-05-21T05:31:06.934Z","4.3.0-next.1590075564.8bcbbe78ea07d98942d80c7837d76a2ec891cf2c":"2020-05-21T15:39:25.598Z","4.3.0":"2020-05-21T15:40:46.411Z","4.4.0-next.1591779284.03c1f388ce8c9de428d07c39301f4a2fa758159d":"2020-06-10T08:54:46.005Z","4.4.0":"2020-06-10T08:56:01.073Z","4.5.0-next.1591796420.5cc979fe1db33c56266dd39419b852ff70e6627b":"2020-06-10T13:40:22.251Z","4.5.0":"2020-06-10T13:41:38.207Z","4.6.0-next.1592614127.ff32970229ce02303659ef4dc91da1fa34df3165":"2020-06-20T00:48:49.195Z","4.6.0":"2020-06-20T00:50:05.364Z","4.7.0-next.1592694594.bd2591ad7917f4db557b30e318a8fc68e4a2c7a3":"2020-06-20T23:09:56.665Z","4.7.0":"2020-06-20T23:11:06.588Z","4.8.0-next.1592741406.a93d206306bc2ce32aca6d5b260bcc2846c92a26":"2020-06-21T12:10:07.483Z","4.8.0":"2020-06-21T12:11:12.408Z","4.9.0-next.1593055243.6a2a8a9dcd4ad3fe88c1e5a658a35b3ddc3d37c3":"2020-06-25T03:20:44.547Z","4.9.0":"2020-06-25T03:22:01.237Z","4.10.0-next.1595346425.e73200684df6a6f53aae3ddb67c4ac58527b65a1":"2020-07-21T15:47:07.044Z","4.10.0":"2020-07-21T15:48:25.437Z","4.11.0-next.1595354998.68eac2afcb96c13e1b536e8893bc4d659c4b9de6":"2020-07-21T18:10:00.197Z","4.11.0":"2020-07-21T18:11:31.235Z","4.12.0":"2020-08-04T04:51:37.697Z","4.13.0-next.1597696212.73b203b58c241663d31ea82d8d46ebe84d91c376":"2020-08-17T20:30:14.136Z","4.13.0":"2020-08-17T20:31:41.230Z","4.13.0-next.1597696319.47ad792cdaa343f4f818fb4b60f39eab60c4ff32":"2020-08-17T20:32:01.019Z","4.13.0-next.1598189069.3e9c3bf452d1cc0d4e23d84f28dcb1bc3211ae00":"2020-08-23T13:24:30.517Z","4.13.0-next.1598781702.20d967ad7c5ad224e09feeb8c8665a5c6e99220a":"2020-08-30T10:01:43.519Z","4.13.0-next.1599076419.60541f0d27c849706157976f9d9f0d23b3ac9eff":"2020-09-02T19:53:41.047Z","4.13.0-next.1599201543.01981f3fec2cb05611198625f5355148108b7d13":"2020-09-04T06:39:05.051Z","4.14.0-next.1599226282.8be7a825208f47498294062cca55d16a1f9c6e09":"2020-09-04T13:31:24.208Z","4.14.0":"2020-09-04T13:32:54.251Z","4.14.0-next.1599396760.2cd886dd0b9f4109854fa369e46038a3b83d82ef":"2020-09-06T12:52:42.180Z","4.14.0-next.1599996159.aa5c68ddde736071773a6f450a905539003fe7e5":"2020-09-13T11:22:41.449Z","4.14.0-next.1599999215.c49186232e37a8799089a93963e978ee508a066f":"2020-09-13T12:13:36.833Z","4.14.0-next.1600605197.3d7c83b0fe71e9050b1dc58fe7f6d7aa94f1df05":"2020-09-20T12:33:19.009Z","4.14.0-next.1600607406.c3d002ca6b229db20eba19ba0958f4348b7b4793":"2020-09-20T13:10:08.026Z","4.14.0-next.1600861509.4219ecf6401c83075cc3a9df5dbba7ea590f470c":"2020-09-23T11:45:11.330Z","4.14.0-next.1600861592.788f17e8b965ce47645f81048e6ceeff24e94afc":"2020-09-23T11:46:33.787Z","4.14.0-next.1601214071.bb92576055ef64a0f9fbe435a26858de3153b860":"2020-09-27T13:41:12.780Z","4.14.0-next.1601797746.0472fc9b4ba0164acb27d66dc5defe1e048b89b7":"2020-10-04T07:49:07.779Z","4.14.0-next.1602407232.e4a333d18e6f2bd5f9867289664be265b5bf2aeb":"2020-10-11T09:07:14.062Z","4.14.0-next.1602412816.38f19ade1cca333070d66410b4f2d9326424267a":"2020-10-11T10:40:18.139Z","4.14.0-next.1603015865.7980f951b3bab28c77747f13fe51a4bc4acf886a":"2020-10-18T10:11:07.446Z","4.14.0-next.1603622536.f2dbe79ced97436f7f5cba4e75f0784d78e9f3a9":"2020-10-25T10:42:18.067Z","4.14.0-next.1603630234.0f20a2b5cbb9038a00aa01abf3506ac094dd426b":"2020-10-25T12:50:35.973Z","4.15.0-next.1603937174.a3e916853ad1aa3a1dd80dcf53354bd93e0bae8f":"2020-10-29T02:06:15.663Z","4.15.0":"2020-10-29T02:06:19.760Z","4.15.0-next.1604235751.4019c771e5bd7b99280647509a5428dbe45cf005":"2020-11-01T13:02:32.794Z","4.16.0-next.1627424346.8c183497ce555821a94ab73a80fb135f7d860731":"2021-07-27T22:19:08.246Z","4.16.0":"2021-07-27T22:22:40.755Z","4.17.0-next.1627507756.c57a31fd1958c573eb6568345b553fa4127055b7":"2021-07-28T21:29:17.750Z","4.17.0":"2021-07-28T21:31:53.299Z","4.18.0-next.1627593998.b7495d0e851658dfb882bf6a049ccf1c58b0f0f6":"2021-07-29T21:26:40.248Z","4.18.0":"2021-07-29T21:31:31.310Z","4.19.0-next.1698807674.0aa0e0cdd98dcfa20f2fc22734239ed6abd8d283":"2023-11-01T03:01:16.321Z","4.19.0":"2023-11-01T03:02:49.542Z","5.0.0-next.1699907734.3413e3101a903eae8dfad3f3948754969c5d30eb":"2023-11-13T20:35:36.350Z","5.0.0":"2023-11-13T20:35:45.962Z","5.1.0-next.1700025926.b54b39ecc9788fb8c4772188a35c472080f5dea0":"2023-11-15T05:25:28.144Z","5.1.0":"2023-11-15T05:26:11.241Z","5.2.0":"2023-11-21T11:29:44.439Z","5.2.0-next.1700566183.66b8493403c6f6fb82584007cb1c038042cae0f2":"2023-11-21T11:30:48.689Z","5.3.0-next.1700848006.764d4a64a6f01d12c10cd96de833e284961a2eeb":"2023-11-24T17:46:48.021Z","5.3.0":"2023-11-24T17:47:32.392Z","5.4.0-next.1701817853.3ef15ee663d9a5b333cd394f464d92e190c3ed61":"2023-12-05T23:10:55.099Z","5.4.0":"2023-12-05T23:12:06.953Z","5.5.0-next.1703693259.437799df26cf9710c74ffed7d619f9e016e18f44":"2023-12-27T16:07:41.126Z","5.5.0":"2023-12-27T16:07:48.426Z","5.6.0-next.1703868346.f6581e89654fc884132595e66274c9bfc9f77a4a":"2023-12-29T16:46:28.236Z","5.6.0":"2023-12-29T16:47:09.580Z"},"author":{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},"repository":{"type":"git","url":"git+https://github.com/bevry/getsetdeep.git"},"homepage":"https://github.com/bevry/getsetdeep","keywords":["backbone","backbone.js","browser","deno","deno-edition","deno-entry","denoland","dom","es2022","es5","get","getDeep","getter","module","node","set","setDeep","setter","typed","types","typescript"],"contributors":[{"name":"Benjamin Lupton","email":"b@lupton.cc","url":"https://balupton.com"},{"name":"Sean Fridman","email":"mail@seanfridman.com","url":"https://seanfridman.com"}],"bugs":{"url":"https://github.com/bevry/getsetdeep/issues"},"readmeFilename":"README.md","license":"Artistic-2.0"}