{"_id":"norm","_rev":"77-414eb39b9b19b2333a213acab7dbdb01","name":"norm","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","dist-tags":{"latest":"4.0.4"},"versions":{"0.0.1":{"name":"norm","version":"0.0.1","description":"Primitive ORM for Node.JS","tags":["db","orm","pg","postgresql"],"author":{"name":"napa3um","email":"napa3um@google.com"},"homepage":"https://github.com/napa3um/norm","repository":{"type":"git","url":"git://github.com/napa3um/norm.git"},"dependencies":{"underscore":"1.1.7","pg":"0.5.5"},"main":"./lib","engines":{"node":">= 0.4.10"},"licenses":[{"type":"LGPLv3","url":"http://www.gnu.org/copyleft/lesser.html"}],"_npmJsonOpts":{"file":"/home/napa3um/.npm/norm/0.0.1/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"norm@0.0.1","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.26","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"8e112660f863cec02a7aab3fb39050d9b3fa1c13","tarball":"https://registry.npmjs.org/norm/-/norm-0.0.1.tgz","integrity":"sha512-ExlxQilo4FUZDuMeODQG17mFDLBvFglyJ2LyU5i0F19BOUK5mscXXqDF3okbmKtOM4PwWfEl953ROTA0cfKO9A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGSQ7qA1sJrShTm/MY3rXtsH292/NOPFG5Guqmypi1OZAiArMLvAHG534H1ohWMDAz4Y8lx9KZRG39AJpPPv0KP7Vw=="}]},"scripts":{},"maintainers":[{"name":"napa3um","email":"napa3um@gmail.com"}],"directories":{}},"0.0.2":{"name":"norm","version":"0.0.2","description":"Primitive ORM for Node.JS","tags":["db","orm","pg","postgresql"],"author":{"name":"napa3um","email":"napa3um@google.com"},"homepage":"https://github.com/napa3um/norm","repository":{"type":"git","url":"git://github.com/napa3um/norm.git"},"dependencies":{"underscore":"1.1.7","pg":"0.5.5"},"main":"./lib","engines":{"node":">= 0.4.10"},"licenses":[{"type":"LGPLv3","url":"http://www.gnu.org/copyleft/lesser.html"}],"_npmJsonOpts":{"file":"/home/napa3um/.npm/norm/0.0.2/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"norm@0.0.2","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.26","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"bbd74640d96fc66355c8abecdb6b19f2f82ac390","tarball":"https://registry.npmjs.org/norm/-/norm-0.0.2.tgz","integrity":"sha512-gav/sN3HLBP5rvaaXjoUNQ/p8vFdj30XjHowMX8SYlqnaOk4BEXuQ+jrKQiSpnkZm4spj86sh9QXPuCSmfu5hw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/RsvIMrRZDchDctPX2UPCn0h06y49JI4ZzR5IouD8rwIhAPCGHu+fVO9dRc+emaScp6AlC/3q6GOfjw5HD81PNYIr"}]},"scripts":{},"maintainers":[{"name":"napa3um","email":"napa3um@gmail.com"}],"directories":{}},"1.3.0":{"name":"norm","version":"1.3.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":"","license":"ISC","dependencies":{"is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","traverse":"0.6.6"},"devDependencies":{"mongodb":"2.0.34","chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5"},"gitHead":"9638fcd4ba08d578a20b32987fadb2ea5b6b8141","_id":"norm@1.3.0","_shasum":"883ba3254b6941141904244a39d170b964887ee4","_from":".","_npmVersion":"2.11.1","_nodeVersion":"0.10.38","_npmUser":{"name":"classdojo","email":"gregg@classdojo.com"},"dist":{"shasum":"883ba3254b6941141904244a39d170b964887ee4","tarball":"https://registry.npmjs.org/norm/-/norm-1.3.0.tgz","integrity":"sha512-0eWXqFDjzC3M89CVzrMlmg3nM9u2BXoleyOvbl/b5aWYJmVDJP7Rvv9VC+mLo81p9EPI+8cdzbtMhmauGpSetA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICEK+kDF1qhykWTp56X2m9h4CYxNHbRLgyKCczuSpkmYAiB/KkxZ9vLdSKnVI8KeG/PqY2Li2Il6s41AjcIXjGVWMw=="}]},"maintainers":[{"name":"classdojo","email":"gregg@classdojo.com"}],"directories":{}},"1.4.0":{"name":"norm","version":"1.4.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha","test-watch":"mocha -w"},"author":"","license":"ISC","dependencies":{"is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","traverse":"0.6.6"},"devDependencies":{"mongodb":"2.0.34","chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5"},"gitHead":"83e31eedbfe741ec9b2d38dad561a124ff2f2f37","_id":"norm@1.4.0","_shasum":"e68046170d22e7ed2b95c22106745efea10824e2","_from":".","_npmVersion":"3.3.9","_nodeVersion":"4.2.1","_npmUser":{"name":"classdojo","email":"gregg@classdojo.com"},"dist":{"shasum":"e68046170d22e7ed2b95c22106745efea10824e2","tarball":"https://registry.npmjs.org/norm/-/norm-1.4.0.tgz","integrity":"sha512-74DrRNrMyY1j+9gjsXrkt93TztgkasX+HRzPWni5zP2gXnkWtiObPBKN2Ya4SkvEVZ9UeKLpZSV9nA5R//ctkw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDS0S1z1sVQpqjmfAwX3d21f5aUqRTv7jWqBgZti/AIYwIgHocJPcPIHpi1Dx8oFcK44x0pbeYZV+8SSGs7GHZjNyk="}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"classdojo","email":"gregg@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"directories":{}},"1.5.0":{"name":"norm","version":"1.5.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":"","license":"ISC","dependencies":{"is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2.0.34"},"gitHead":"911f4763373434e433a21b41df615923fbe72fae","_id":"norm@1.5.0","_shasum":"57818e985fd0f264f1b041514dcc3dd16db9d0c3","_from":".","_npmVersion":"3.3.9","_nodeVersion":"4.2.1","_npmUser":{"name":"classdojo","email":"gregg@classdojo.com"},"dist":{"shasum":"57818e985fd0f264f1b041514dcc3dd16db9d0c3","tarball":"https://registry.npmjs.org/norm/-/norm-1.5.0.tgz","integrity":"sha512-kgEX77XjMaU8xIEtncq5bHmmHVv2xKSAfVznEZW7zvm6hBuCYDZDRjYEzGE+kZu3WM23ax5U2hjbjXIp4WnZDw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUGmU6r1+SPn09K6h7G718/CwHyhfk2Iw/DAlfeaYivgIhAJBG2Vc5UZJWbVM0EQqOiLl6WOMUI684CebCqcUPDrte"}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"classdojo","email":"gregg@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"directories":{}},"2.0.0":{"name":"norm","version":"2.0.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":"","license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"gitHead":"e78b7b614cc9a15edd5d7448f8ec89e0cb0e1a94","_id":"norm@2.0.0","_shasum":"e3e46fa29e89aab976bc3792994fac1c6ba06edc","_from":".","_npmVersion":"3.3.6","_nodeVersion":"4.2.1","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"shasum":"e3e46fa29e89aab976bc3792994fac1c6ba06edc","tarball":"https://registry.npmjs.org/norm/-/norm-2.0.0.tgz","integrity":"sha512-miVmkhbfW1Ihi93yCaEFwPVgQO4Rh3iuQzbcdmklBMTet2XVkTXeiwE7J7trztDJ3iuWzPIrv3lb0BkcFMUHoA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBFSUlTOUHJeoboOIjYVCYZ/01pKTnLzl3LekxEJdhnzAiAvampUNVwZsh7IGUROtbO3/zNGGWcDsgH9t6wrzx5/GA=="}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"directories":{}},"2.0.1":{"name":"norm","version":"2.0.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":"","license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"gitHead":"95150c1baca2ca7ebbe281af719ab5bac3a99c2f","_id":"norm@2.0.1","_shasum":"eb7c7edd4e06a8d3e62cbfe715e59b3c32742bae","_from":".","_npmVersion":"3.3.6","_nodeVersion":"4.2.1","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"shasum":"eb7c7edd4e06a8d3e62cbfe715e59b3c32742bae","tarball":"https://registry.npmjs.org/norm/-/norm-2.0.1.tgz","integrity":"sha512-e03ZlCarFserGdzeij8zRFtlMmKisLy7nfYPGi1iTEKwEd5F6k45Br68TzY2fAGSPfG28y1K75CfeL4i5ameIg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQUlK4dQdLIrFiaVAMmdXjE+HhVtPW2nejVt2Myl3l/AIhAKIHK8gjcKmLkwma6Ylh3B/kq3/ZB8V5L7O1ToZrPelO"}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"directories":{}},"2.0.2":{"name":"norm","version":"2.0.2","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"321775eceb0d8f13e8767c487bc820969bc092ee","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.0.2","_shasum":"d8b89c164ba77b71c13e34d64afd0ac87bcd01e8","_from":".","_npmVersion":"3.3.9","_nodeVersion":"4.2.1","_npmUser":{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},"dist":{"shasum":"d8b89c164ba77b71c13e34d64afd0ac87bcd01e8","tarball":"https://registry.npmjs.org/norm/-/norm-2.0.2.tgz","integrity":"sha512-TG/r8kwr5sbwe2ArBBsBShXpxLCxz9g7pylowD8OC+907vZRBLZCfeEH2hIWVOH2IuQ3qOyc4aXMyLQUD8EK9A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBlZZLhArMYM0ZZ3S/lnHwxqqI2OrYC1NrCdY1m0LOdpAiBedB4h3BHLOg1c36DmezluJHhS1+v4ZpMyFVdEHOZHqA=="}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/norm-2.0.2.tgz_1455930530712_0.16208079899661243"},"directories":{}},"2.1.0":{"name":"norm","version":"2.1.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"824ce06ad496f3d806f943e71b273dad114fd58f","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.1.0","_shasum":"8335d031e86e58c99bc0fc42bc26491c4e697137","_from":".","_npmVersion":"3.9.2","_nodeVersion":"4.2.1","_npmUser":{"name":"nickbottomley","email":"nhbottomley@gmail.com"},"dist":{"shasum":"8335d031e86e58c99bc0fc42bc26491c4e697137","tarball":"https://registry.npmjs.org/norm/-/norm-2.1.0.tgz","integrity":"sha512-zuKOLiASD7i9g3I94T/KI0P47Z+TQL740BLI5v1+AEPWfPGb6ggWaK3NWm5MyGqQkpkSrWHjz4RRQ8ralF1FWQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC93IB50szeEcwjjDVGLZdLNK/DIgLaqAOWKs5Ikku5XAIhANwxGUg6n+3xRSN2+z37V8CQaGWyFIex4z5Ar6llpTYD"}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/norm-2.1.0.tgz_1464375806899_0.3471684679389"},"directories":{}},"2.2.0":{"name":"norm","version":"2.2.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"19217a263767499294174543271a3716ca9a3287","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.2.0","_shasum":"145d3131ab4ea0d6addf020fd4c6720d932ecae3","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},"dist":{"shasum":"145d3131ab4ea0d6addf020fd4c6720d932ecae3","tarball":"https://registry.npmjs.org/norm/-/norm-2.2.0.tgz","integrity":"sha512-nHAM58HbJvsAeShOWhGNerPkKSh+9OpTj2khIfeXec3b8RrfSSPOQPEdVwXkrW1We0ojA18l9W9BlNjcCNraTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCML4yDfpKnicQ5/cQznHepdzqzf+IYyJRGeIM3sXSCjAIhAJjP9k4NKiOKE+bEQVw1ZRqfowzHbBO3myBk8VQspi8F"}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/norm-2.2.0.tgz_1476318592022_0.6929155588150024"},"directories":{}},"2.2.1":{"name":"norm","version":"2.2.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"406393ae4593492412e3a90198a2bff4da931ed5","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.2.1","_shasum":"0d1c1cc7adec3221eed723af3f5f0be3c16d4d06","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},"dist":{"shasum":"0d1c1cc7adec3221eed723af3f5f0be3c16d4d06","tarball":"https://registry.npmjs.org/norm/-/norm-2.2.1.tgz","integrity":"sha512-8M7J8DGQp4bp0X+uO5HBPx68vCFfMQQkO0PpgbHpnw+X/pPlVJhcHTAb3dCU5YR6KlMVshbVcxvxcJo3k33Nqw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtzCTtJwLODR7D/i+ljY6xPqehwt3Oco7O1T+4aFsi1QIgbdhf3M5xLenmnFi3MkJ4fK81f8UXfWSzhiZ892uycLE="}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/norm-2.2.1.tgz_1478815427443_0.9351052739657462"},"directories":{}},"2.3.0":{"name":"norm","version":"2.3.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"cbb3776aa2d54cdf5d4acc02c3b7747ca9444d26","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.3.0","_shasum":"fd8d8e93f2ccabf9ef0e63d337ef7223192ea9a3","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"jetzhou","email":"jet@classdojo.com"},"dist":{"shasum":"fd8d8e93f2ccabf9ef0e63d337ef7223192ea9a3","tarball":"https://registry.npmjs.org/norm/-/norm-2.3.0.tgz","integrity":"sha512-8W0KyGcsDOr+yr+qmjc7If2g7F2kSdWAjtXMlyYO8chWhb/KhhifbZ7uiXduMHbU9YnsbZgbQfSppzttqfnkag==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG9Gdpp7X2Myc6y7Skq61NzsFklf6AOitWyYooXaetRBAiEAtn4wkTXR8DsbgdpZQL5rdlZt2fW+JziBJ8u2KrXTIvA="}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/norm-2.3.0.tgz_1479857141106_0.6112179781775922"},"directories":{}},"2.3.1":{"name":"norm","version":"2.3.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"89f7d66b2186b6ce210419c5c9f9c7a3dfef4c0a","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.3.1","_shasum":"fc1a4decdabe5c44f810f5beda6f9204fd34b5d6","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"jetzhou","email":"jet@classdojo.com"},"dist":{"shasum":"fc1a4decdabe5c44f810f5beda6f9204fd34b5d6","tarball":"https://registry.npmjs.org/norm/-/norm-2.3.1.tgz","integrity":"sha512-PJWMXGHMHh+eFOXk9SkQyoSBxJyqGrzyS8gqHgwnsPKoe0pxp5ZHqktNGkzbdObO5x1sGaGpGRNvaZFyiOitNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDDWPk3QNStDPC7hWnpVOroXAyY2d2Wel06qti6HF1KdAiEAgHWdHmyCu9fL9F9r4yPLZIKYPNy5lujklG95QC7tsn4="}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/norm-2.3.1.tgz_1479936940786_0.03205674258060753"},"directories":{}},"2.3.2":{"name":"norm","version":"2.3.2","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"2.10.1","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"bd1267399f790033539b35c01d99c782743f01a1","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.3.2","_shasum":"67759e81a08ccf7bd942b0cca62b0c47f1c9629e","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},"dist":{"shasum":"67759e81a08ccf7bd942b0cca62b0c47f1c9629e","tarball":"https://registry.npmjs.org/norm/-/norm-2.3.2.tgz","integrity":"sha512-rOkhGi6PIYncFc/aFjRfNFZ5sMG79SqpUOaKNus0N9qJ+yM1SqHMfkc2xOFFwHTht5MDuP422wpf7O66JCq5kg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCT3nWgLdD81lwcXORHaYg0Bke2WtQjB2N/t0l13qkqLAIhAKIPoCko6CfynQufWWv7G87TDaJ66IQY0ExDGTk3TxKw"}]},"maintainers":[{"name":"banders","email":"blake@classdojo.com"},{"name":"byronmwong","email":"byronmwong@gmail.com"},{"name":"cainus","email":"gregg@caines.ca"},{"name":"cdolivares","email":"chris@classdojo.com"},{"name":"daniel_classdojo","email":"daniel.ondruj@strv.com"},{"name":"gianu","email":"sgianazza@gmail.com"},{"name":"jakub_classdojo","email":"jakub.kaspar@strv.com"},{"name":"jaroslav_classdojo","email":"jaroslav.mach@strv.com"},{"name":"jetzhou","email":"jet@classdojo.com"},{"name":"jiri_classdojo","email":"jiri.prochazka@strv.com"},{"name":"juraj_classdojo","email":"juraj.kuliska@strv.com"},{"name":"kelwill","email":"will.keleher@gmail.com"},{"name":"lexiross","email":"lexiberylross@gmail.com"},{"name":"liamdon","email":"liamdon@gmail.com"},{"name":"martin_classdojo","email":"martin.petrus@strv.com"},{"name":"mojodojo","email":"gregg@classdojo.com"},{"name":"nathaneidelson","email":"nathane280@gmail.com"},{"name":"nickbottomley","email":"nhbottomley@gmail.com"},{"name":"peterkhayes","email":"peter.k.hayes@gmail.com"},{"name":"psk239","email":"paul.kim89@gmail.com"},{"name":"rafaelchiti","email":"rafaelchiti@gmail.com"},{"name":"roman_classdojo","email":"roman.palkoci@strv.com"},{"name":"sanjay-shah","email":"sanjay_y2k@yahoo.com"},{"name":"urjit","email":"urjit@classdojo.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/norm-2.3.2.tgz_1485285595232_0.29379205545410514"},"directories":{}},"2.3.3":{"name":"norm","version":"2.3.3","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublish":"coffee -c -o ./lib ./src","watch":"coffee -cw -o ./lib ./src","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"f88c48a7dd46d2e74d18b18c1710d07f9f02d04f","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.3.3","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-MOxNtkyyMYZwlcVSjqNZTzhbtDZM/PAS+jxmSRhFWfGVfSIjVK5TB/mn4fl6+Y6fhz8XK0cZwDBMlkD2biytNQ==","shasum":"b2deb669dbabb705c2e53c43f87c479c380acddd","tarball":"https://registry.npmjs.org/norm/-/norm-2.3.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVfv7HBIDcL/fwM5sPjslNptuag5W1/yZ1qBCOeZ7QHQIhAO48buBzMcCRcRiajOBBlKSrQb8mEirDUp9Yd+aLiqb3"}]},"maintainers":[{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.3.3.tgz_1512412508945_0.8980079949833453"},"directories":{}},"2.3.4":{"name":"norm","version":"2.3.4","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"cp src/* lib","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"^2.1.0","stream-to-array":"^2.2.0"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"gitHead":"32d516455ebbfa2a259e7b4b6498d8ad1ec10201","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.3.4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-/g4i8/mDM4kBTEA/BmIxWoc0cgdIMD2fmnVmst7ol6284F4pee6DZrPRRb29D5agevhy/5r6e+DrasMbH/7h/Q==","shasum":"5ea7942de4df27221ad5283bb74925647bd855d9","tarball":"https://registry.npmjs.org/norm/-/norm-2.3.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDuOxoHH2jq0xcrDHNRdOq9PqPitFUdi9ov/m4JxITe8AIhAMiU2qw5FDNFLZ6YSdYuc4miAT/giRbxogLaY1vAXtE6"}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.3.4.tgz_1516126976569_0.6773457946255803"},"directories":{}},"2.4.0-beta.0":{"name":"norm","version":"2.4.0-beta.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","stream-to-array":"^2.2.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"34a84805da1318a23b7a8af2dcffa6db1728077d","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.0-beta.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-4fh6w5df+GS+0ruAQK2BQn86flAveZM+pU0vkBmaVZdfsHEvqpyNY4Y7G1INDfTkLfrw81OX3U2VlEw9msE1+w==","shasum":"9af04e93e284598b8ae73c227bd3bb41995a6c35","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.0-beta.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICZlcP2WY89AaUT23WlS6hFgmSWsP5yU2GTbIzqYpx0XAiEAx8BgBx9PUuEg284TqOOhn0l/j40E2DRJ/Ur/BtUbZKc="}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.4.0-beta.0.tgz_1516244896783_0.5873539377935231"},"directories":{}},"2.4.0-beta.1":{"name":"norm","version":"2.4.0-beta.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","stream-to-array":"^2.2.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"34a84805da1318a23b7a8af2dcffa6db1728077d","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.0-beta.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-vMjyWwmM9FzW/lwTzgdZEXqDBMtoiDvWuXoyxWo0908jKtvMpcg5hDz80k8uWDhL/7SSJ9sRLekoPoJ8dn4edA==","shasum":"0cb7499cfcd77de9c8ea467b5a812de55ccc3aa4","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.0-beta.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMoXgFQdrYrMx/xfORLmRx9BzQG7wNG4UL+AtLyN4/+gIhAICw7rkklKBOQvohjUa0VrjmAq+RYq24TVVwpQf4jO/6"}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.4.0-beta.1.tgz_1516245898029_0.7370659080334008"},"directories":{}},"2.4.0":{"name":"norm","version":"2.4.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"3.10.0","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","stream-to-array":"^2.2.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"b7943c9f26be4752c692a08d063af49008f0759f","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-bOtqSs5LAnFeu0J/YyA0kZspRod5KocXfKn1VieIBEtOPiTrH9kRCRpp3rp587Dm1Gg/HRRPlYjQ+mPTOG0TPw==","shasum":"0fc8d8a64fabd8c1f49357851cdb90c17587ce1b","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpog/Lm/BjZE/kISGhZogZNVya/pSQd28Iul4Okza7/AIgEXYMEu/YYYEaznlcpsI6bzd5ZTkmDfG5ktIfDslemAI="}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.4.0.tgz_1516246224955_0.7938653288874775"},"directories":{}},"2.4.1-beta.0":{"name":"norm","version":"2.4.1-beta.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"2f50afc4e66f38e16f47703d86ab194292df67d1","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.1-beta.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-oKfgB7S6lgxsDGE/PvCvui4bR6VtR34Cjwbj+rHxe2+bLHzTFvi/pNe3jR9ozgSYFsgjulSpi4sbqqNfz8jhfQ==","shasum":"4302d429c8adcc8e0de5ede4487582da410e332a","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.1-beta.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGMXKN8XgRnH29vfHnmEqWoEAktqpbivsylEqI7KckKVAiEAwgtbDbu0HlpgzSPjtlxj9CoYrs0iDIzlW2o562sTXbE="}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.4.1-beta.0.tgz_1516340118420_0.38797423359937966"},"directories":{}},"2.4.1":{"name":"norm","version":"2.4.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"2f50afc4e66f38e16f47703d86ab194292df67d1","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-I629E6i5bXry8841goMNn0Rc0oXiAYNbkgUPYNK11XkkkJOClrFyyczO/LPF8f9INwy3DqC2xcv8SKFkF7Sk2A==","shasum":"7fd5eada973bcb9edaa31caf2bf798b98ccc1b38","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAi5IFnBt3bFckV/LugQtWUWLFTefCgYhdIlNqubKyDQIgIGr1ozPlGrG3o+dOKwEqOhKruALJM0wcT3cm9M39Nio="}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.4.1.tgz_1517258271645_0.6662014964967966"},"directories":{}},"2.4.2":{"name":"norm","version":"2.4.2","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"f353b95d22f0463052e91c516e4eaca40ce3bfde","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-Znn53V9VmneQ8/8w4HL3G1mPUZ2y97yLtGMnMMXkvmG8xk+iZHwUYXzZvTfr3eIP3BQoXRiF44t+VReYdT35Aw==","shasum":"65be1d42bd1230000edf36e251eae7f325a05f53","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/+kGNIDjMxsVmpepHW4mK1xpYLUfFvuIWP41mamYqPAIgA2ekFpuwooKDnad8CEcCjQz1htFFq5ikgAH4h/nrzU0="}]},"maintainers":[{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"blake@classdojo.com","name":"banders"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"jet@classdojo.com","name":"jetzhou"},{"email":"urjit@classdojo.com","name":"urjit"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"gregg@caines.ca","name":"cainus"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm-2.4.2.tgz_1517602969813_0.7597137514967471"},"directories":{}},"2.4.3":{"name":"norm","version":"2.4.3","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"e183896edcb065ea438010f0504664a336903439","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-y00aiqmouOgnTIX2U8AtBuuIH908zNsbtd0fBnMDOrHWz5KdSvh04K/i8grZajH0U5f1i3XfKrheEq9sZSWGZQ==","shasum":"8981d5dc7d2f74b855f136e0bf44b834d9163d4c","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.3.tgz","fileCount":17,"unpackedSize":110158,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9f5ZfwkBfzMYADrfDNTKwbE4LwwR3lMah3s0vxR4YFQIgGhwoDrv4L1tW7CzvLlRGWzy66gehECrOjtVBNR183+k="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_2.4.3_1519450463797_0.2183986701683598"},"_hasShrinkwrap":false},"2.4.4":{"name":"norm","version":"2.4.4","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"eb6f9bfe31a5e83b2235ddaf0a9ffd6295f02ab5","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@2.4.4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"dist":{"integrity":"sha512-/TKZBGaBCI3T121KvS3hbyt6VhGBXQO5fblYbdIg+hGzcdkEYPKD+2DHwRglqyQrwDQrUtBs8ncJLRViwgUcPw==","shasum":"f157a8409348908b257e0d9a8cfb266585d0c5a2","tarball":"https://registry.npmjs.org/norm/-/norm-2.4.4.tgz","fileCount":18,"unpackedSize":111644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDzJjCRA9TVsSAnZWagAAfGsP/A1VaM31yY6KuKiOtqVt\ndKM/nUAA3AX880HdoHzdADHij1jUa0ySPPyxojQFpUTI93FLp9fXO5IHOkfY\n+NLa2t7JI0g9KXls9Q2ue4kfx3izddaNYTzygd9Rh2c1wiyAejtcPR1LCD8y\n3Db0izXxGBlBM1kH7DndhihmC2Q8oGM++Awam0ZXPmpqHGuh8ijIoujGLSOY\nHUPCvVgBuB7QhMq42RmXdUyMYITPIkD9KyvrUdEXe9RXiH7rPUt8GX//PUZA\nNzVWtSJ1KdzfPHjwr7iuLZ/UDJhfQOjxzOCW5rj5la7N2fONFCKJkSxXEVK/\n0FvI02+igkY19Xi3lCvgp0hxNwL+rOnS2xeSi/gnjkD6skslwzRn2ogg+Dod\nbH8/xrevl5csA0Ayu7Vjo8b4ZrkySdfwuF6gmSGPBUI721IVgRvwg5XQVPD3\n5DUGt1rXaD6Lz2bT8/LbPyBn6Gjf+mexmbSv1hmuLvDexZK3aHj4D10CUq4N\nX7Tkm34C4nspI45iFlhjl4vfjo/aJFHvfDHUd6V6w5+FtI4/hvvm7qhw5IiF\ndDkvbdJXaDdcRsiKVhEU0cnHheOIwC8Bzap5y+4PyoMH0+Vk/pFH76WvalFZ\nk0xWVWXCpr8SateArZbwBxvw2vM6ikJaYg+VNxJsGwdDhBLur412zJc013U7\nbKej\r\n=rWid\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEwzqDXJvZ+EJvdmC8moR6UD9ZCohNftm3dWPN93F+WIAiEAxzMWnBzCxLk5OMPFJrgC/9qpgD9I7hsWmWfHjS9Mv6I="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_2.4.4_1527722593590_0.788975667663347"},"_hasShrinkwrap":false},"3.0.0":{"name":"norm","version":"3.0.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"index.js","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"641feccad0e59f165c74f61e6fcafb6f9753dcdd","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"dist":{"integrity":"sha512-V21zT0KRIfGSvjv+Kxjm4AJuRadsRk12+ZKbu8ldVGAcX0+p64s7sPqt7Bhd2QF4xlZF2LBbMIUOmJ1rn7aMWg==","shasum":"7b840b8514bdd59a8948c6ab6be278206f64788f","tarball":"https://registry.npmjs.org/norm/-/norm-3.0.0.tgz","fileCount":18,"unpackedSize":112876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbMSOyCRA9TVsSAnZWagAAJAsP/3/Solp3rWlbI7nwM9DH\nQ8Wev1Wd74xsmGAm26NJ+IbkP7jdARDoFLl51hvxjkjjdaiRD6LYAAzDGDFx\nOSoNU47RpRZ9adWyXqvOUvh9GcdEP5+Fkes/peW2xYEdPf9p7gRL61etnMYV\nK68f8uUGVcvu1ICw6fyOfMncz34j5qUvWHRWjDtDc8GRpfX92/xV3tgnFWyE\nQJxo6N+aXlYHNs15iBaqe/7kLE7rkvnlbW0ea3NTr826uNsS5SgFaTOTgw3t\nxNpFb0HngPJrsA4Hx75DIabxnoiF5k5nn3r9PUj668mIDFdY5YzrpAiiqiyX\n0QLFb0Yif1WbPEaLUOj1RcjYSzbSrAUi2d8Fj7dQyaAG/9yt4HimaXJza9k2\n42OFsLG1z9cvnBQSa/y31w+pf1Jd8tW1vCQFZt+IvjeaN/QTC7Vtqa4PW2aX\nRkdqtXkdD3cD3UnHKizrIqQrTzihhQEvVj/sAYlgYl8UuGr43ps/x6hO6V0R\nJetCb/aobLbTda1p3UWDmpPb4MaWnq/l80ksMm9gmtiuqEODVHthDZOwE9bz\ncnRChhwm1uLnAovzfnGWuW6UPDyr5idYOAjnERfEXwLsMtwInzDS7m+QFeV8\nl7pcd03qZjMEh2DHDebCBxmn2J4yfYd/DWUkElo4gjZAW7U0tJXrJLJIMA//\nAxIU\r\n=8Ksg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxVES8jXDO7lUU9YWldxiCt6wIMR+pFeVGsaBjAqXg0wIgIg8eYZX4ZDmYggL8d0AVFViVsoPs2nt9tt2t0OtkKfU="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.0.0_1529947058606_0.5609792926741968"},"_hasShrinkwrap":false},"3.0.1":{"name":"norm","version":"3.0.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"ebcd64f2c64dfd1a55eae862000fe4b424d6fc9b","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.0.1","_npmVersion":"6.2.0","_nodeVersion":"8.4.0","_npmUser":{"name":"cainus","email":"gregg@caines.ca"},"dist":{"integrity":"sha512-FmgoUCTJbkuRDhCFNB94F1sEteJQiYuLcvDzM8auA3TBR8x220aFm9+rwu/Y0dD/T0iXN9BEpNJmU5VPB9wCRA==","shasum":"063ead40042d0e735895d40918efc937969da610","tarball":"https://registry.npmjs.org/norm/-/norm-3.0.1.tgz","fileCount":17,"unpackedSize":110521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbWdZDCRA9TVsSAnZWagAAlu0P+QGigBRVbUUvVY/N5zDo\nyQjxHHGdbiNhg4kZe7+a8/kBIrYRGdGiSgCLdroM1NsaBuxNmxP05lfNln2F\nQbRxv/MurSkh/ZpABdDuNkLs7Yxya85oGI2BpiAOgAW+0t38eRRA+3TIqZQZ\n5WKRjFwgCgce/e5HOrdgKck3NpEJDzWIlkYcgdcsVMYbnSBYHIzd5jLpLodx\nE+d0TBRHmew6sTGKo8Keh4Oo3x0hagh/pfJQxDJnp1/PZFVyldrNhBtNVCV0\n91NC3ZdsbJSkn8YkeHmpydt1BSEe3sb01kfUV9qC+AI3I7Zq8tgWLp+c7zB7\noRQdp5N8Tk34Aho6/XPQ7YFluysUGSZwkxyhfoATA5hNuAbbfczZdPyWhuZj\njR/y99PfLMmAimPpu4IvOceEksITpGEKnIN0GsHMq9jlP8+gte4sEFB+rgok\n1APAQKVoJpMqx+DcBhXRfkk+JQ33s7DYFs7l/zShYlCeuBl15mE+58Ijgb9F\nj2EnNBDcP64UEjAZ+W8OCPY8raCWHLa1CHVYU7XBotkzZtrOP1QpPBy2UWvM\nArLvCRQmpJg58syu7hPGXuJIylsVTa1n5GoFlqqb7qk3edm+h/VXIbtZjWt2\nmnxzrZkVV22FJJJfRogAG4MEKpZdVU1Ebk/zVZ2JbPVyWhBNpXRaoRDEbLUu\nWb7N\r\n=/kXY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDLIEzYPHbtQpeyXQ4T/hnGrDIy17P7Q1xwutCqK4KwgQIgVUTNVK9hKKY5UQYwq59YdmpI4U4VNa92xTbzFdejN3I="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.0.1_1532614211154_0.4806630372387919"},"_hasShrinkwrap":false},"3.0.2":{"name":"norm","version":"3.0.2","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"a2ed4928df3e6305d7e01185bfc0bde819aef161","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.0.2","_npmVersion":"6.2.0","_nodeVersion":"8.4.0","_npmUser":{"name":"cainus","email":"gregg@caines.ca"},"dist":{"integrity":"sha512-+rO2p5V6r0rBWlZql9+QwSJRie7nHis3lBYcsOy7jannBA2TYC32stJhC3DAPPcGcoZTXZtNqfYqfoe97HVGEA==","shasum":"6ef8c9f60e204102788c7d4cd67cc93550ec81f4","tarball":"https://registry.npmjs.org/norm/-/norm-3.0.2.tgz","fileCount":17,"unpackedSize":110525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbWfI4CRA9TVsSAnZWagAAVl4P+wdA/MPJUr3AfjhFnX3V\n18e8rUMFv+kIGqTDN3ZcPZ5FnejIAejNRnDEAL3J0Tjz0nPq1Q+ResUUtIQz\n5t4bIOMwhcF44ysB7pGHWUY5FBTOAffS5A9YOYbMTJ4WuCbf/x6WZh6CR2lo\nu8iMIXxAiy2I6kNoHAUqEtMDQa0xkfmr0lkU/SIQ+MRvhtPpCcqxeQ1Uwzvh\n/2+KqwKPVAznqxUUHIwEayUcvwwsGoQl+BIOZWpLqfEzMQNcAGA5fMGTXrGB\ndK4R2SFzqOB207NksJeZq6iQ6hVsvVU2Z/fLlc+HtxhPmE0qexwC7Q7diMD/\n8CSqAu1O/4F8J3ECla1mkLllZal4gmr+JX4g2L8IpGyUTohmBINLKW3znvwp\naq3anLogP88D73DbXnfouaT09HagmpXo5rrXof27rUJ4EmHB7/mZHuOWcovb\n4hGBfE+izYG9xT0ytOBNtKTC5akLuRtR5wZm8FGgYvpBmhpvjm42QbycY2gd\nnkjVIhxgzYvFsokzttNTSOxYm9eYboCBT2/flbjvSOUHlXjDknCNRQK2W/LU\nLWNlZqSYWxEdbkPsTdJwAEu4NF93A45lWo0lwbi8KcW0Ul/5ZRJO7QvXGtad\nB7LWcOZTHEpSgMZlEalCWQc0WwPzNLnFWEAyZhFW6G7bhDfuKkOlxaE7M26Q\nG6jo\r\n=1s+v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBYqfqOdu5ab/5aUTwXArack02iqvAjUe5XS9Zmu+yG2AiEAtCiyR4YQuNJjGuuRsLC6kN+vokQTIH3VSFZpTk/2DUQ="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.0.2_1532621368618_0.06124725045367807"},"_hasShrinkwrap":false},"3.0.3":{"name":"norm","version":"3.0.3","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"b7bd7788382df164018463c4e09c457e20f6cae4","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.0.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"dist":{"integrity":"sha512-J7U8UJhnwCXYkPiiWMBfmE+LruGcSPBCzkNe4dVqpqRgxZxNEfo/8HU+XII0pF+4G94SGsR3HchzHbK5Vcjtcg==","shasum":"9b125c0da11508dd22f95a9f30b2782ec699f8f8","tarball":"https://registry.npmjs.org/norm/-/norm-3.0.3.tgz","fileCount":18,"unpackedSize":113796,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjXjMCRA9TVsSAnZWagAAcGMP/21u9ArBHi7MSm3hSuIQ\njWM3rKuQs/6npcHD0GqHPErj4U27tmOZz7suNSBFBhxjqrTHNUdZ/FBAGSTY\nov9KRyYw1NkzBtsInrtQcVx7fgsEs4FVO500kjJ7NhwiXQdH9f7+/Mzg6zF9\nv/TF2eXex6R2D2BQXe5zv2oFt+EcVIrCI1/PKyKnlMatYgWYlRpLn5ms+KPS\nVSzX1Futi2BDSMSgYQrSZfUAwzfJymdhcBsUissuQS6u4QsEFYTXJ+wvlbwf\ni3Wc7YaHh8Lf3v6e5Jr2JQlyIoUd8kU0ldVpDuHdrhv5yM28E23yCLzy7xHs\nQG9QhDfqCussBafvRG4ItTnhdtcd5YRcry64KAcSvqCsbctFU2qw4P9TyrUh\n5GP+2TIPVxj4wA769P/eKcUHADoPkX6kD+dLmqpP0zTHz3/iwDjCGN/0GNBn\nb/swZcVcZfnRlue9Fpl1mjDjivR2PrF4YgDSb5yq4rbbWycBx8xluvo8Lh/I\niSAr+CI0LOEluIUdo4+ESIVkFSGtD0qWF9O9mCUvSYTNoqZHw4zxAfIIWSt6\nKZQHpH6JEjVenEaTWMxaK4POStQGCe/MO9v/ZY373y0733OD4Jli+3rUbDTC\nG9cDOQzZBsjJ0vMnKCuOqqQ3QGn0terkmdJJ5ANBkMl4UIlEDq3BJTXAsKo3\n2+a5\r\n=czpo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhb8a+vRBFR+nIKVRDsuGGP0ohy+QEvPXoGFg3AwgikgIgEIhYx1bZErDGLMpzUaPHDn9o9VK+Ca+V7mbHloGoXBw="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.0.3_1535998155959_0.791956438033028"},"_hasShrinkwrap":false},"3.1.0":{"name":"norm","version":"3.1.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"7c1a2fc0d70bd78070fb7be2bd648ece15732f42","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"nickbottomley","email":"nhbottomley@gmail.com"},"dist":{"integrity":"sha512-jXQVKOKIIpOf7aqbnwz/7RzBqfV/+JNq2xh+F2FQM3zAAOBYAzAlqeWT0X5zvCIVHP5J2UMYrLhODLAROvjYqQ==","shasum":"d17cbec602461923a4085abe929198850755e37f","tarball":"https://registry.npmjs.org/norm/-/norm-3.1.0.tgz","fileCount":17,"unpackedSize":110951,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqVOYCRA9TVsSAnZWagAAi7MP/0a56WwWcshTp8pNMkkW\n/0gDefWxEc9BXkobEEQ2rEVHMMi4aChaDwSKsE4BUA5P4mjy/dhvksmf8GzN\nTJ5NALKaIt4bP9HFjFTBUTRTCLRHjkMsQ5kCIPhoS4LBrIqkcYHHy8OSUcXD\nSdvAFrx1H4ygz6LvulqLYI8PfOLZ1PEpBdFyspmut7Rl9ZoRevAskRHQxqcP\ndNZi9D8j/U97xJNuPiaXDQi2mIEJdJTpSSiZmUq5aRwbRZQsS7hACDSH5hGQ\nJUINX2eUBuCux2+wgM4Tm37ifaLAyByX/jcUzMeycTJAYBa9FRW07/yy8Qpu\nQJsI/geJE5SJzJ9A+L1gpXqre58JpA+i9wLeRmE1fq0vc9WNAEIAkrQMNBrz\nqx2c6MstaRhUEaSVfamFQOlJX4YJ8SchXqMFzfYZg29tlpBzPImGXwQw5/p8\nnJF4yJequi+IAfdMU8VKfa6xFrTLCANjZb7FHg65Qgij5HmwaMvVAtPp6+oM\nY/lp9fZefJF7DZ6QU7Ytw5DqoDJ1JtwCINjfP2jERJGfmpp2ARdwMCYXA1au\n3gEq8JMyp2XYsVVhgIHoMbzt0/QtvnWIYkVEL+QY1C5pYr4HRWJ06MOUg0DX\npdf7yI8GPJi/t3P6bRc3UqniHa1JNbBA2bVUOD1UcWmSC23G0Q+X5V3IFOjg\nNY/+\r\n=Kplj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDffjnZZGQJJ7Kxs2Txq96hJTdyza5cdHQFw3UB+aBu2gIgfcQ7pbQf+4Jz/cV1GaZjeamJFqITnseQQO5/4iYYA8I="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.1.0_1537823639987_0.7326670980171084"},"_hasShrinkwrap":false},"3.1.1":{"name":"norm","version":"3.1.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"rm -rf lib && mkdir -p lib && find ./src -name '*.js' -exec cp -prv '{}' './lib' ';' && ./node_modules/.bin/tsc","test":"mocha"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","mocha":"2.2.5","mongodb":"2","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.9.1","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"105cab45c88e888fa4294db622f6d6ce5cc60b3a","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"byronmwong","email":"byronmwong@gmail.com"},"dist":{"integrity":"sha512-kXDgfT8cP62SOxTMn6Uv+Z2CfC5Nz1xrAjvSbhYL6AxLfgvHo3MHZDH4Qdn2ObgSi5DhY73SBPZU+AcLKACBIg==","shasum":"eefc432fcaa2abbbbcccd907faa18e357aacda2d","tarball":"https://registry.npmjs.org/norm/-/norm-3.1.1.tgz","fileCount":17,"unpackedSize":111362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxSdLCRA9TVsSAnZWagAAdHYP/1+BuiEz9dDMPfleMevE\nHqf7CW936OZdFhr6nfJOinhdKyzvNEX66C53hhvo5pLlU1Ym8EffcdBeF5kc\n0BdxZujxQZYfWS3zndV3/iVXKfHXny++uS2n4x25pX6fwLeub5ogmnjRRRni\nd2cMtl9QqWRxUSizxzZs1crrcBepVePmPvtyUYRWLZCejFJ6MjZe4o5fcWen\nzNd/Xhr3T0GMJzaVzTspJaagQFDNucWgc2zOKD7B/xE+CGEwVkaiBKyUrD5f\nZ6yF3jipp/AsRt6q946/9EKPz/CZs/S4bAUm2skYmXi724P+tuJ2In+6gSzi\nTMf/qHzO02pCTZWL8XZXUvI24daLO0P4BMxyfwVnFNeB/UVgH3VYcmvLQoLs\n2kiKzB6uBSg4ty5yuYaLr/KrRLw0RFqYxOF6fZx0j77zZBJohKxD1++l+7j1\nb/RxmQglg9EORFy7CGA6FqncDfkrwep41+pMue2aEaY8mrXCUnryomD9UcC+\n/NhFKX7rz7nkf52SDlO73R0cNDiI2JLlRseBIevaEhum6Cr129pi6KX+hr1i\nwo1eP1N2IpLyV54bEycLvRsNxZTWE7jpUz/bHHX2598Uu525KifnRokK7RCt\nlyN7x4TuvlP5i0siCn0FkNTX3T2/nqyv4u6cm3vU/pYHtmn2XvZdNNa/mUba\n5yE0\r\n=lXiC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgZW7UpTSQ/eIQSW/p4i4JBtVNDYkXrKtn+US0lrxE2AIgIOU3mlbOybyb9fMljS0O++zIXsTl4I/b2tuQRauh1Yw="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.1.1_1539647306920_0.9966512425412519"},"_hasShrinkwrap":false},"3.1.2":{"name":"norm","version":"3.1.2","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"2","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"bbb47a8075b407668dc318a3ea70d714e358bdb8","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.1.2","_npmVersion":"6.4.1","_nodeVersion":"10.12.0","_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"dist":{"integrity":"sha512-o46fFFjJmvhX5Y+o8v3PzSrCyFuTLdPVbCJiItKkGEwQmQJspCq2vxWpYBtFZNG9W6y+k+OcWWbv1W2Lu2zTGw==","shasum":"241211da43a202f2c02fe500aee552e11f6e3317","tarball":"https://registry.npmjs.org/norm/-/norm-3.1.2.tgz","fileCount":23,"unpackedSize":160700,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcuhrkCRA9TVsSAnZWagAA2pkP/1a9uuF8NEYeUAWC4AV3\nL9zrM6rGgMo0vaIm2KbMfXy6W8rDDJoDaCsVnoxY9DIhHB6CO9f3N77nuIDE\nUAhO9HHbG1VFS5AE8DSGTpYtkxVbIuzcjIEHAHWoNWzWTJaD153/ntkE/XUb\nDB7/orj+jnToXnTLcNEyGFEZ0VYqXQ/Pp0ayhllJy8ZzsruhL9TEAIQ97S1Y\nSL1mwt/dbWN9ygoGYaaeDef2/WCAne2xbw+aoNLO9O+q3y+ewCR/K2N0ec2T\nenfUuOLs3Sw5Ni77fYJ1dEphAq/apM7m5NK7q6BmfA4oyC51SuK7BKfwJRkp\nNBDRiWfYWayyAUpKBoZUUbzKq1xpaR05MizJxPQQArnxLSe12QpExHPfxVzI\n9jPTa2/MkL27HdSNfnRJuN0yMZ4IAVtbz3sQ8+KivGJG9attIisZIOLDJTVk\nb+utVoB0iu0L04PrERa9rz4o2AFlO27QRRDbKoaJ/5qDexlsWnfcnosBcq0P\n1ZuAIBxlgIJ5gAUm6QWxBm4u2msRZsrSN4229t8X3mLlshOVG2HqHKidTyFi\n1u5cLpY9PCq1d1tALhqQUJ1JAbZAwlVJhebi0p5ED7+UyjFsn5EVePZ0Xf83\nWkkmGFJ8BhUjd9G7ViA9uRI6G6G3sQrNGBL8xdCfr+i/ya+ocWejhWF18U0O\na/ob\r\n=EQD4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHO7shFTFw2dUoT1nXht4faJU3rhzheLEdz6QcZI72MCAiB8T06xQu5Q9jhUY4KcGWj1iKakUhzN+V/znrzewnbn0g=="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.1.2_1555700451965_0.3607798628926451"},"_hasShrinkwrap":false},"3.1.5":{"name":"norm","version":"3.1.5","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^2","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-config-classdojo":"2.0.1","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"2","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^2"},"gitHead":"b59ae5696df3ac6e8b671ec0ba8ac7411f6a83c6","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@3.1.5","_npmVersion":"6.4.1","_nodeVersion":"10.15.3","_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"dist":{"integrity":"sha512-cI2Q0ffYpwmFMH8h+gquO/khzpgu5+n09s6haEBM6srPhVJ2IklnMkxV25CheKsUG1jKzau2awbAmwgrGEHx9A==","shasum":"60af5363401a149cd6755c1a4f7da1c802ac902a","tarball":"https://registry.npmjs.org/norm/-/norm-3.1.5.tgz","fileCount":23,"unpackedSize":198796,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3ESLCRA9TVsSAnZWagAA4ygP/AhUC9yQbHNz+Or7Cizr\nG2eN8N58Y5sYP22YsxkNuEUjGNd9AFQGbEWYq00fxf8g1LV5YM4uKsLvOuiS\n58ZMwROZfWSicj1evu+PZbwQkTJ9sNM2hNq15sjfDzUSvkstjPhXcsWneUGQ\n4N25+OdkDJJlFCH5i3ZWfjzbQkFAilDP63I0JteOxepXA/kWj0wYhr8yYQmF\nuvyX76jQ+0Jt/anhBbDTeQR/Qzysh3gJ2p1tkA3a1O8T3E749Vl3o5Daz/F2\nah1uMQA4Uc7Kq7SwwjBmFtt0azYO9r1wpLgTkxhmSDYlsEOHoraP3yRta1LL\ndu63D50reRjHTJFxtD9B5Nd30xHJoRhsiC/7+BjLpJPqzVaetf7VgW6nQ44U\nnZ3c+6izb32y0BXbqIS0AAfv7apnJhhZkHlhNwGpQuoEISjj3g8DPLA8d8sk\nsO8Dau9z43R/VDWLIj79E1w0NsPuonKSWLkYKqI1vxBo8OE4bcof1H4i1UcH\ntkdOBK2ogVSsxiZTNdpyAGwkUE2Os5BTOTtYoWfwMFqM7dn4ox+U5YNZcBik\n5BFflwVhpEuSUOchZ6ulsNbXKRKeti6kVcnH73sLvsI/7QUobUh88c0cSDbm\nquU1R+7sqV4vpIwi/KWVoI//BN5q1i8yuF3y889cjCnss9zb5tIgUPuJeZHS\n76F6\r\n=pN7J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFaiyGPbpSbSr5d77NZkSRKF8Qaj0Npte9OCqsDWBloyAiEA2tESGqSdZBCgl0yD+xktwXs1qX86Vrijuk2KGTtBuRs="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_3.1.5_1557939339165_0.8895203026474687"},"_hasShrinkwrap":false},"4.0.0":{"name":"norm","version":"4.0.0","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^3","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-config-classdojo":"2.0.1","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"3","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^2.6.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^3"},"gitHead":"1cf45fbfc38adff6985f555e978399c07d202fb6","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@4.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.3","_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"dist":{"integrity":"sha512-IAGhJCiNm1w6lewTYuHWoAsKCeJd2cYzyCBSJF4AgcFKPGKaQN92X54piEXzgkjTYSQgJ0oRd+OdR6NsWprhPw==","shasum":"144b649be055a76a0ee5966758258144d9a2967c","tarball":"https://registry.npmjs.org/norm/-/norm-4.0.0.tgz","fileCount":23,"unpackedSize":199786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc9rm7CRA9TVsSAnZWagAAyh4P/1ik8Tzvy+IlIiwYK4ps\nrmpKmZJ8ffVs51gLbCc0JjOSYf0eF5cJTOyGbdyLyswgMhYG1dJ1+ClOl7fx\n3pk2rmwNHx16bt8b/lgdey8JHOKwQ7aeIZYlDbUC1mw3s6w5GteF5DSsf6g5\n9J93fAlh087Y+v91DuC1Rk76rc060wJgx4RvgS2yyvXKFsZkVNtg92h4J2CG\n+x4jFtiSjVLoIawYCrHod0Ggt0xQAJicdMInDUKOnZg5hp5+eRgfc3vzTHQf\nl2yJy3TtAfPV9pYm/gZTx8jEuk70ePnVV/l5kg6nuwIn5ectj+5+QwQMXPnL\nc1fnngNyCzT5OtTSOZWSvn8NbQtfSg5QNzhhgUhqDrr/sNgFU0vj9YQL0LdG\nfmB/rWO0qo0bz/RchnBG5/ey7HoEkGwU5yRs5iiQ7Li9yzPV5RhtbPFrT6Qe\n3s6FNIoPDz+EndUw9vMMZ9/fZRCuHcfAX8/Wcn4xTAV/evqQZVJv7udW7Csg\nT2AQ2pT61GCP5ulR7UL+rDw5sy3JMBvbsLZltUCNxYxhUB3YhCRWboHuX63A\nBa0UcEtQRrv0cJsoEm8Co1LAaDyf/N6+0yKibbJcAd75BKEp2xz8uaHsdPh2\ndeO3XgvnTfmmL09nZFh3CG6MrVso4WuRlsGhbDxLZ9/ETBhb6B9w8Zahz6Wf\nvTwT\r\n=Du4Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBmRODWypjRs+NBQwKDT6rOKJRkRIqwp/oI3sOy0vHngIhAMHweRbSnkmAtsf/dw7HoJw+ENKZlLgUm98c9p/vz8aS"}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_4.0.0_1559673274446_0.2629396150229437"},"_hasShrinkwrap":false},"4.0.1":{"name":"norm","version":"4.0.1","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^3.1.32","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-config-classdojo":"2.0.1","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"3","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^3.5.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^3"},"gitHead":"8f0ed2a3f8c631160f6eefae4a7eb01784937c20","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@4.0.1","_nodeVersion":"12.5.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Li6BHtRIOJtz2mnxhuGXZJ3nd5Q04o7jvIeSDcr9N+rwMpFdzxBSczffxqd3FYlJh7B+hMs0u9xSZDdY10Qtdg==","shasum":"d1a43d863b195ec166f25c7b28d889de470f93e0","tarball":"https://registry.npmjs.org/norm/-/norm-4.0.1.tgz","fileCount":22,"unpackedSize":96315,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTaKSCRA9TVsSAnZWagAAl+wP/A+xHsN31CdudPY/YJg1\nYudLX4SZX506UlSErre8DxzfAsgpioaayOCBrnCUzfjP6WWJIyvK/NiD8HyE\nxdUY9bM/olxyZ+8jvmd58qu6cHOVe7o4+MFy0Aj14ocaoYruLQNgma5PTcOi\nCiVX98qixhCJLmOQlSR3FkKRMbtGaP5zPyDXRvPsvP8XVruu62s6rC5DYWQH\n6Z2cPY3zMtXo6qj/Nueldxp2wde2HnVw07JtYosN1X6zhIqzK4DZkYECc7OZ\nU1TmWxlHtprVKplitWmADyjezNO3reQoLIOtQHz30utPmlGj4ppWK6paqsGh\nix+9gRUiKglJUBLIYwn3CdLJNlibwcPyBsCyt5pGOF8iqlIPoJX6WyGkOAmh\nGKo9sie3a2s3N/jnUqHh1NCCjl+vtKQP5fo4EX9Aw2aF7XjF7T2p3025nyTL\ne6VC5zO1s9QHoY+yYj0v4kbqeSzq5DpPO7Z/fckZNx2doYo4+fpdeQa3Irkr\nvIAfq80DYzF+qao92tnxv9aAU94l3EBv7Au2ToHbmPHEit1yQTvZGyiKBuVT\nNXIcezDFg68ArODSM9bIe7wQZAoNAW0t5/gRygpLTnSIaqRpYw+HYo6dzbI3\nVdYZggkDplOZJjfdvLNjUqkKSJfcD3r0i6V39ixtGTrhAmsjv+mpYBq7BlIF\nVUaZ\r\n=7FT/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIExiQAAP5mu6h4dcsnl6/Q/w2CqdzoDy32Igz+VrQU/8AiEAlUeEab0MoybTDrEH82trulURzerNbhZqVwVUAh0lDk0="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_4.0.1_1565368977361_0.7715453331643447"},"_hasShrinkwrap":false},"4.0.2":{"name":"norm","version":"4.0.2","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^3.1.32","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-config-classdojo":"2.0.1","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"3","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^3.5.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^3"},"gitHead":"4ccd7e33e313975d8c53fa852e9e1ce724fb5d48","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@4.0.2","_nodeVersion":"12.5.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-5FIWJF3YlSdD83ZLndOp+D1jOpyvngMkCH2RRBs8fkh+ASr1cFRcM7jnmHTba8e7H/OYQski8qFgLn7DR2g9AQ==","shasum":"11aad3c64530029cc936b654c6162f258ab9406f","tarball":"https://registry.npmjs.org/norm/-/norm-4.0.2.tgz","fileCount":22,"unpackedSize":96954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVLEQCRA9TVsSAnZWagAAlcUP/2f1pghgb1c4feYfrWwq\nGnF42OvjmDyJHMRaqGtOS109NM2eRO6txsGSoPVJJj6czI6JPhSEKY/hdQqg\nfEOaQ3fUouqS8/S48CR+ia+GpdU0PZ+Z9sMVPEtvPWSaaHYiuoxNEHP6cUwZ\nGdcuHOzTfZ/CW/F1O7gpACNpWMPrqXJ5BI6isrq1h+mApsnHhgWVm1hwsWZa\n1P0w8h/VNuWWchAB68dHryoTAD7IfAYvf+p/liqhXytRusrlpyESdYIkKx/I\n3Iz5c+1KBqfbwRfsVaFHqon7Iy+fj+aSWUKbJpWLVqeI0EXQweXIeQm/T9UC\n1MrjQ0hEFOb1bsoHySIYpPD+pezTOLsJcF3dj03BfEpn2DH+wteiEt2Mqz2g\nA033tOxrNiE1fiDz5BGnOGv9Ry802mTRNwP4GzZCqwwMgp02U9/Pfl+U9/MO\nf0+UVXWMlaeDODicHqmSudIkbK1lFlsfLm4FnTonljD5yuzOe1EV+LojYX3H\nstjrQSPYq6s9e4v2SVLtVNPAGCuL5xow6fGJdZCBJIznzhgw/XLZpToWdOJP\nrtRyHxtKfdOTrBflQ+x2kPCde5R+PAzrcFUUizj6N/Hw0lEu3uhbuZq2rehM\ny+LY8KLpms6GCom2RENG0E/v9JIKetx3q98ZQasr/t+s43sP/Emx9qyS6bzH\nCmhl\r\n=jRxP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHy3Nmu/Ah/j22Yh/skIA/g0zxmQPrDqetQVF0tzwF/1AiBR9gUfqfC2pwljKC1FX81VkAWUobu8lQ7z6HXldRI9FA=="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_4.0.2_1565831439227_0.7286764204823581"},"_hasShrinkwrap":false},"4.0.3":{"name":"norm","version":"4.0.3","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^3.1.32","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-config-classdojo":"2.0.1","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"3","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^3.5.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^3"},"gitHead":"b55dcd3961d62ab7d2f5da450c3ad5b400d6caee","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@4.0.3","_nodeVersion":"12.5.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-6pSepTLZYHwfcWURNJY2GO9yw7ed6XMcJCv7QC8o0IVphLltLrfH9b5Jn7TNJlIgzOKjXG26hji7xce6CGBbAA==","shasum":"9a4b8d65cbb77e37224b0e7a97941727769444a7","tarball":"https://registry.npmjs.org/norm/-/norm-4.0.3.tgz","fileCount":21,"unpackedSize":88362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdbHluCRA9TVsSAnZWagAAoGAQAIvnKPnq7qZS7WPcPcST\nn7ZL95FivO6JE2P6Tbidxf7MnYJG/MKJLmJKmPs0TSnncnqiB5Mcl1DCO1Yr\nycKXMEypBOB4/MrYb6oA91rel/wrfNWrdKVDQniDpzqd6WohLimKJl5jnAPQ\nFxJL6omORYBCt59E2MSYZpucEkSMJy+7qrmsSe9o5Eeu3079CMj5+0QSgKa8\nYMomdjI/yZAGDpJ3EoYzkkoJ0wv4W9WHmveB2CXf8B2BoLQlCEneoBlhOvj0\nsvWZvBimODk3nDjg0QXTZTP2ZRVMe8q8Vrq2tFE5A4gJipBb9g+wX6nv1Ylc\nUTd6oDSuMf6FcrY2LwMeNyuSsB0LLAlfozUabOr5ci8maJKCUOzoYLB0VWsT\nLX8p2GzVBDBO3VR+BcbeLX2YpGkVHKB3MSGxmrNUl2v9kTrh2lYXRX1KF0lZ\n3mr9ww0zbIILgy3c+23r1RiogMAYQig5khQuK1NUTgcbe4tzpMpSF1WKk0V2\nxkS4UNsZWdrBFhiDmeaGrV/jnB/kxi2d8yzJ+1fBYdlPilv7LR3NdmLWcPRr\nUv0Y0cvLsMhY2X5IfJCBFnBslWXcCQTJ3mnzr6gUn1xAhzGNZMrOZqWpjAAu\n8HACalJoxeAd05H3Uys7+dSskiMasdxLNw9+1+9g5c4F9MBD9J0uXeBN1j07\nR9C7\r\n=kp5q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDteoWA3AxBv8p6YeH4wYtFnTgtYvZKhQZyKtGEIKVYUgIhAKnQruFK6RKR5zP31lp5+I256sxq16j9RN89q+sLb7ks"}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_4.0.3_1567390061997_0.16914736082612536"},"_hasShrinkwrap":false},"4.0.4":{"name":"norm","version":"4.0.4","description":"The no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"prepublishOnly":"make pre-publish","test":"make test","prepush":"make test"},"author":{"name":"Peter Hayes"},"license":"ISC","dependencies":{"bluebird":"^3.0.6","is-my-json-valid":"^2.12.4","lodash":"^4.17.4","sinon":"^1.16.1","through2-map":"^2.0.0","traverse":"0.6.6"},"devDependencies":{"@types/bluebird":"^3.5.19","@types/mocha":"^2.2.46","@types/mongodb":"^3.1.32","@types/node":"^9.3.0","chai":"3.2.0","chai-subset":"^1.6.0","coffee-script":"^1.9.3","eslint":"^5.16.0","eslint-config-classdojo":"2.0.1","eslint-plugin-security":"^1.4.0","husky":"^1.3.1","mocha":"2.2.5","mongodb":"3","prettier":"^1.17.0","stream-to-array":"^2.2.0","ts-node":"^4.1.0","tslint":"^5.16.0","tslint-config-prettier":"^1.18.0","typescript":"^3.5.2"},"keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"peerDependencies":{"mongodb":"^3"},"gitHead":"4a57227a7bd3d4fe6cd941ca94ddf898b96b3cdb","bugs":{"url":"https://github.com/classdojo/norm/issues"},"homepage":"https://github.com/classdojo/norm#readme","_id":"norm@4.0.4","_nodeVersion":"12.5.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-CadnKtRlfLA+iSkkIDC9tC4LZ72nCAGNjyjPbfDyJCJGQ0lLuhCCynMWr2BNMGJCHSWB5V5G5ale0oSlA4w4Vw==","shasum":"dc93c78f768513eb41714ece515137c4032a1c30","tarball":"https://registry.npmjs.org/norm/-/norm-4.0.4.tgz","fileCount":21,"unpackedSize":88370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddo49CRA9TVsSAnZWagAAMkMP/i4+WnHgfa7zU6sgTKiw\nBVeHtKu06ZT+u6OsnlmwpIYr6vljZy04hqMQ2+DfM4f9IywPWZzYuWUR7yGg\n3ipbZD42HaT7EBTeV2cCRsquBcnTQ+fwitAhBTPwd7uQ0+auj8mnnZIlknUP\nX54+BZUeBCvyR5o6oYyXBh+CUKAuPZoyudpuB5d4FWueIie2aplhKU9fl2rp\ng4X7WIXaoW1JWHBeX2QaM0d1ki/ngEDWhy8vrgxoR0vDp7aVZeORP8vTyg9l\nPlwjhHQQdpRbAR1aV1bIeWeUH8OKek8RTiyxQjkGPsFktnPO6Yh/wFCELnnQ\nT9V28t5k9ykQzRqEBqrXQYt/B6e20p6wLOmokBIV5vmE6umyqhfROAs+wzM/\n0WNbfCpwDpzbJUVTydMUJS2Dr51aHystLUqvCIHcx11Fz1xDBwJL28di9y+3\nGvMCVTTP2eNnc5eajSPirk/5H3NwHsNr6IMP9nCFA7308XDI0sw8EzEvjigD\nK8Pu5/xcumJ6XhEILOhjFS/4rOhtVrMmqLQKZG6AyJWyDSve5+zq+11kcwJQ\ndoLZ8AQrr7+ZpOmOAeDtBuOC2BlOBAu0RXAQa9t4T+KD8WekDzsORGr2MuJg\nlOFvQBSA4beA3kRtXLz1FV1lHnNR/cnlQnPOaMJv1khAjZixHHZX42kIn6nb\nbfQZ\r\n=MfYz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGLTy+CfzVovAxjT/kBw1jzzqtkWW826yan5Mmry6eN5AiEA7zSm4mK7Zz1KSe4EnLt4Tv8jH3s6F18JZfaNMb31hhw="}]},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"_npmUser":{"name":"kelwill","email":"will.keleher@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/norm_4.0.4_1568050749020_0.37635353671945704"},"_hasShrinkwrap":false}},"maintainers":[{"email":"blake@classdojo.com","name":"banders"},{"email":"byronmwong@gmail.com","name":"byronmwong"},{"email":"gregg@caines.ca","name":"cainus"},{"email":"chris@classdojo.com","name":"cdolivares"},{"email":"daniel.ondruj@strv.com","name":"daniel_classdojo"},{"email":"dmb27@cornell.edu","name":"dbellizzi"},{"email":"sgianazza@gmail.com","name":"gianu"},{"email":"jakub.kaspar@strv.com","name":"jakub_classdojo"},{"email":"jaroslav.mach@strv.com","name":"jaroslav_classdojo"},{"email":"jet@zensourcer.com","name":"jetzhou"},{"email":"jiri.prochazka@strv.com","name":"jiri_classdojo"},{"email":"juraj.kuliska@strv.com","name":"juraj_classdojo"},{"email":"will.keleher@gmail.com","name":"kelwill"},{"email":"lexiberylross@gmail.com","name":"lexiross"},{"email":"liamdon@gmail.com","name":"liamdon"},{"email":"martin.petrus@strv.com","name":"martin_classdojo"},{"email":"gregg@classdojo.com","name":"mojodojo"},{"email":"nathane280@gmail.com","name":"nathaneidelson"},{"email":"nhbottomley@gmail.com","name":"nickbottomley"},{"email":"peter.k.hayes@gmail.com","name":"peterkhayes"},{"email":"paul.kim89@gmail.com","name":"psk239"},{"email":"rafaelchiti@gmail.com","name":"rafaelchiti"},{"email":"roman.palkoci@strv.com","name":"roman_classdojo"},{"email":"sanjay_y2k@yahoo.com","name":"sanjay-shah"},{"email":"urjit@classdojo.com","name":"urjit"}],"time":{"modified":"2022-06-22T05:22:47.076Z","created":"2011-08-30T03:27:17.510Z","0.0.1":"2011-08-30T03:27:20.123Z","0.0.2":"2011-08-30T07:42:42.458Z","1.3.0":"2015-09-23T20:13:48.778Z","1.4.0":"2015-11-03T17:34:13.680Z","1.5.0":"2015-11-23T22:51:39.887Z","2.0.0":"2015-12-14T23:08:34.470Z","2.0.1":"2015-12-16T03:17:15.288Z","2.0.2":"2016-02-20T01:08:54.844Z","2.1.0":"2016-05-27T19:03:29.021Z","2.2.0":"2016-10-13T00:29:54.007Z","2.2.1":"2016-11-10T22:03:47.667Z","2.3.0":"2016-11-22T23:25:41.781Z","2.3.1":"2016-11-23T21:35:42.694Z","2.3.2":"2017-01-24T19:19:55.475Z","2.3.3":"2017-12-04T18:35:09.939Z","2.3.4":"2018-01-16T18:22:57.078Z","2.4.0-beta.0":"2018-01-18T03:08:16.858Z","2.4.0-beta.1":"2018-01-18T03:24:59.144Z","2.4.0":"2018-01-18T03:30:26.005Z","2.4.1-beta.0":"2018-01-19T05:35:18.540Z","2.4.1":"2018-01-29T20:37:53.012Z","2.4.2":"2018-02-02T20:22:49.922Z","2.4.3":"2018-02-24T05:34:23.962Z","2.4.4":"2018-05-30T23:23:13.774Z","3.0.0":"2018-06-25T17:17:38.724Z","3.0.1":"2018-07-26T14:10:11.259Z","3.0.2":"2018-07-26T16:09:28.663Z","3.0.3":"2018-09-03T18:09:16.093Z","3.1.0":"2018-09-24T21:14:00.235Z","3.1.1":"2018-10-15T23:48:27.047Z","3.1.2":"2019-04-19T19:00:52.115Z","3.1.5":"2019-05-15T16:55:39.338Z","4.0.0":"2019-06-04T18:34:34.617Z","4.0.1":"2019-08-09T16:42:57.491Z","4.0.2":"2019-08-15T01:10:39.343Z","4.0.3":"2019-09-02T02:07:42.228Z","4.0.4":"2019-09-09T17:39:09.172Z"},"readme":"# Norm.\n\nThe no-ORM for the most popular no-SQL database.  Operates on vanilla JS objects, not complex models.  Use the same Mongo methods you're used to from the shell, but with additional safeguards and helpers.  Validate data against JSON schemas, rename fields, convert between ObjectIds and strings, handle standardized errors, and more.\n\n## Usage\nCan run commands with `make` or `npm run`.\n\n- `npm run prepublish`: Compiles Coffeescript to Javascript, once.\n- `npm run watch`: Runs build after every change.\n- `npm run test`: Runs tests.\n\n## Api\n\n### Initialization\n\n#### Basic setup \n\n```javascript\nvar MongoClient = require('mongodb')\nvar Norm = require(\"norm\");\n\nMongoClient.connect(\"CONNECTION STRING\", function(err, db) {\n  // handle error\n  collection = db.collection(\"COLLECTION_NAME\")\n\n  var schema = {\n    field1: {\n      type: \"string\",\n      required: true\n    }\n    // etc...\n  };\n\n  // optional, detailed below\n  var options = {};\n\n  var norm = new Norm(collection, schema, options);\n});\n```\n\n#### Schema\n- Follows standard (JSON Schema format)[http://json-schema.org/].\n- Can include optional \"rename\" fields to store data with different names in mongo.\n- Uses is-my-json-valid for conversion (at release, the fastest JSON schema validator for node)\n\n#### Options\n\n* `name`: Used in all error messages. (_Default_: The name of the collection)\n* `additionalProperties`: Whether to allow properties not in the schema. (_Default_: false)\n* `shardOn`: Name of the key to use as a source for the shard key.  This should be a key of an Object Id value.\n* `shardKeyName`: If `shardOn` is enabled, the name of the shard key. (_Default_: \"k\")\n* `shardRotation`: If `shardOn` is enabled, the number of characters to rotate the shard key, for even distribution across shards. (_Default_: 2)\n* `validateIndexes`: If true, return an `Index` error whenever a query would perform a full table scan.\n* `standardOptions`: Override default options for mongo queries. (_Default_: `{j: true, w: 1, getLastError: 1, safe: true, multi: false, new: true}`)\n* `validatorOptions`: Override default options for is-my-json-valid. (_Default_: `{verbose: true}`)\n\n### Queries\n\nFor all methods, the following holds.\n* If query argument is a string, then query will be set to `{_id: ObjectId(query)}`\n  - An `ObjectId` error will be returned if the id is invalid.\n* If the query argument is an array, then the query will be set to `{_id: {$in: query.map(ObjectId)}}`\n  - An `ObjectId` error will be returned if one or more id of the provided ids are invalid.\n  - An `Empty` will be returned if the array has no elements.\n  - If the array contains only one element, the query will instead be set to `{_id: ObjectId(query)}`\n* In all other cases, the query is treated as a regular mongo query.\n  - Returns an `Operator` error if an unsupported operator is used.\n\n* Pass a callback to use callback-style. Don't pass a callback, and Norm will return you a Promise. The exception to this is `findStream`, which always returns a streams.\n\n### Reads\n\n* `norm.find(query[, options][, cb])`\n* `norm.findStream(query[, options])`\n  - Same as `find` but returns a stream of results.\n* `norm.findOne(query[, options][, cb])`\n  - Returns a `NotFound` error if no document matches query\n* `norm.count(query[, options][, cb])`\n\n### Writes\n\n* `norm.create(payload[, options][, cb])`\n  - Returns an `Empty` error if payload is empty.\n  - Returns a `Schema` error if schema is violated.\n  - Returns a `Duplicate` error if uniqueness is violated.\n* `norm.update(query, operation[, options][, cb])`\n  - If operation does not contain any root-level update operators (`$set`, `$merge`, etc), it will be wrapped with `$set`.\n  - `{multi: true}` must be passed to update multiple documents at once.\n  - Returns an `Operator` error if an unsupported operator is used.\n  - Returns an `Empty` error if any part of the operation payload is empty.\n  - Returns a `Schema` error if schema is violated.\n  - Returns a `Duplicate` error if uniqueness is violated.\n  - DOES NOT return results.  Use `findAndModify` for that, which is somewhat slower.\n* `norm.findAndModify(query, operation[, options][, cb])`\n  - Similar to `.update`, but returns the result\n  - If \"multi\" option is set, returns an array of results.  Otherwise returns a single result.\n* `norm.remove(query[, options][, cb])`\n  - If query argument is a string, then query will be set to {_id: ObjectId(query)}\n\n### Decorators\n\n* `norm.decorate(methods, wrapper)`\n  - `methods` is an array of strings, each of which should be a Norm method\n  - For convenience, `Norm.READS` and `Norm.WRITES` are included on the prototype. `Norm.OPERATIONS` is their concatenation.\n  - The wrapper function should be of the signature (methodName, args, operation, cb), where:\n    - `methodName` is the name of the wrapped method\n    - `args` is an array of non-cb arguments passed to the method\n    - `operation` will perform the requested operation\n    - `cb` is the final callback.  Remember to pass it the error and results!\n    - The context is set to the norm.\n\nFor example, the following code will log all db operations:\n```javascript\n  norm.decorate(Norm.OPERATIONS, function(methodName, args, operation, cb) {\n    var start = Date.now();\n    var that = this;\n    operation(function(err, result) {\n      console.log(\"Collection:\", that.name)\n      console.log(\"Executed:\", methodName);\n      console.log(\"Arguments:\", args);\n      console.log(\"Errored?\", !!err)\n      console.log(\"Time:\", Date.now() - start);\n      cb(err, result);\n    });\n  });\n```\n\n### Instance properties\n\n* `norm.collection`\n  - The raw mongo collection passed in as input\n* `norm.errors`\n  - Exposes the error types that can be returned by store methods.\n  - These can be created if needed.\n  - Available types: `NotFound`, `Schema`, `ObjectId`, `Empty`, `Operator`, `Sharding`, `Duplicate`\n\n## Further work\n  - Support for `patternProperties`\n\n\n","readmeFilename":"README.md","license":"ISC","homepage":"https://github.com/classdojo/norm#readme","keywords":["mongo","mongodb","orm","schema"],"repository":{"type":"git","url":"git://github.com/classdojo/norm.git"},"author":{"name":"Peter Hayes"},"bugs":{"url":"https://github.com/classdojo/norm/issues"}}