{"_id":"@smallwins/validate","_rev":"24-3f6933babe60303dadf74fb68778c520","name":"@smallwins/validate","description":"[![GitHub CI status](https://github.com/smallwins/validate/workflows/Node%20CI/badge.svg)](https://github.com/smallwins/validate/actions?query=workflow%3A%22Node+CI%22)","dist-tags":{"latest":"4.3.1"},"versions":{"1.0.0":{"name":"@smallwins/validate","version":"1.0.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"5fdd1be9c92cf57cdf8543a59023e73155064472","description":"Parameter validation for builtins and custom types. Accepts `params` and a `schema` and returns an array of `Error`s or `false`.","_id":"@smallwins/validate@1.0.0","_shasum":"edda352fcf050f4634d5fb38d7719d887b2c15b6","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"edda352fcf050f4634d5fb38d7719d887b2c15b6","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-1.0.0.tgz","integrity":"sha512-437piZtvRPKOf8bW2B07Nn3bbqLXxD5XAB3Vsc4HS2ne0XCmW/vfMX9AbohrCoMppll8SBiC4aP6oUaMOjRLlw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICX0fGlr6rhu1cHGyE/qColEX5GFlZWfOt+9Y3ypTydpAiEAufHL7XmwArlF5AT9JOOnhppzVX3CCu+lTi6rMLBuigM="}]},"maintainers":[{"name":"brianleroux","email":"b@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-1.0.0.tgz_1459288838875_0.3152974331751466"},"directories":{}},"2.0.0":{"name":"@smallwins/validate","version":"2.0.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"a7068c84c25296798e6fdb0d033deac843ad811a","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@2.0.0","_shasum":"bedc91f0c7afeb6d00662a4e8b4d9eae03125d07","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"bedc91f0c7afeb6d00662a4e8b4d9eae03125d07","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-2.0.0.tgz","integrity":"sha512-FIkE1PNVAGBlRH7KsG/MzQTzmE1embd4ZLNVhLuD0ozgFSPcaXkxnU76kFgqJxLHSeXz6Rf07XQBZ7AFkrYW1Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAIvDca53dVA2kao1831xsWRvv4jGe43+dtcDNwDsnvQIgALDHRzLvLmUnTsrRKpoMvehNw2/g3o9k5FRpLvIbZ0U="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-2.0.0.tgz_1459402875712_0.3568675839342177"},"directories":{}},"3.0.0":{"name":"@smallwins/validate","version":"3.0.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"5647f8bc6a387fa65eabc5545a365d3acbf1f5fb","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@3.0.0","_shasum":"1845e63c3baadf0ddd2ec009c7acaa4c04eac451","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"1845e63c3baadf0ddd2ec009c7acaa4c04eac451","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-3.0.0.tgz","integrity":"sha512-v64frCzbOPFMETnEKcbyL8jRcHcwgaMl3KmLMcqkJ9ueeC/sj/DOxYwAydfQcBRbV+7f7qWU1NTWWiIWt5ne6Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAwjRVJ2c256uws7HLaNAZNKnHBrjRecKCsvfnzhbO2AAiEA8gwOfz99AP6LtvnMp70KXAiV74qdgAHOv53M3RFmuAc="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-3.0.0.tgz_1459403776607_0.30088122352026403"},"directories":{}},"3.1.0":{"name":"@smallwins/validate","version":"3.1.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"is-uuid":"^1.0.2","lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"a4dd4ba875a08b837a2d430ec44b07845f56d690","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@3.1.0","_shasum":"0af8f9104825c2110258f7e6760528dd132ef7c3","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"0af8f9104825c2110258f7e6760528dd132ef7c3","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-3.1.0.tgz","integrity":"sha512-Exntx1vneGjgq0xqXQiWykK2uL6EUwte8TyhluVNcqoNAy6sJmP85IlE4hHufLp6oPk6mFcv+sPDNUAkqz7yjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmXBqy8ddEooHglaorIIbfKP5kZGQFdqXlB4NDpEwzvgIhANpBVEMwPHuHetPgwH7vsko3yKsgTpwx9PfVvlSC+yC8"}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-3.1.0.tgz_1459629452561_0.7502538578119129"},"directories":{}},"3.1.1":{"name":"@smallwins/validate","version":"3.1.1","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"is-uuid":"^1.0.2","lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"e524ca9856a665574f2e10b42e70291133b503f2","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@3.1.1","_shasum":"48bbf0a441d6f006f73d2f6214a10f813fa26ec5","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"48bbf0a441d6f006f73d2f6214a10f813fa26ec5","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-3.1.1.tgz","integrity":"sha512-ZpOnkhIJhMR/b0spKawxITOet949qFsmqDjztoAVJeAGda27DZmWO+BgVQondwMMWZNdvYcPdlWOLi22q3acIg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkfIWdnoX95+S9eLfJ8LoHtOa2NFZyZOMi/bk1MaygywIhANf8wOErsDftv2zYrhoPmIIK3n5jVLI3Albrn/UjG5Ro"}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-3.1.1.tgz_1459629564011_0.9728159590158612"},"directories":{}},"3.2.0":{"name":"@smallwins/validate","version":"3.2.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"is-uuid":"^1.0.2","lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"21ccdeb2c7b9dfbdc815094b4bdaf71f8abd0499","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@3.2.0","_shasum":"cb95f3c0bc90eae2c001465c8d7057d7fca4d5da","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"cb95f3c0bc90eae2c001465c8d7057d7fca4d5da","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-3.2.0.tgz","integrity":"sha512-Ue9UkAK/594LN/l9WOP+sqSNpsliKNsrbnP0S5L8KuU19mp8ROIKjW4KI/tHthGgAAWIM0wwiwVcx2jjDeE2bQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyDAWV5rVDYUJznXA3Bf5pJBmsQ922aY6HVxdGL5oSoAIgIxmqbJhZZg8cQE3Sx+yxTnmcoL1sUqIW9NGAbtGwnmI="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-3.2.0.tgz_1459646075990_0.16581482207402587"},"directories":{}},"4.0.0":{"name":"@smallwins/validate","version":"4.0.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"is-uuid":"^1.0.2","lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"a90b02375b678c21439c1d13cf252575e4e1ee49","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.0.0","_shasum":"2b938e34b44e5f8f7218a47bc4f7c15e10dc0294","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"2b938e34b44e5f8f7218a47bc4f7c15e10dc0294","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.0.0.tgz","integrity":"sha512-6TosP8tGGpstX0x/h2enkyOH1eDshSpMipVCa7RCEdUBYvJLPgRsnCXumbEgoQcBDR9ztX5xX9OxxZAkzl1wPw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBaHsFpo8tqdV8voBGyW9q3YRKDrxdATsG1P7cT8HCBAIgX4DfhCl7aJ+oBD6+LebsxvmgvVO91YX7AC3CryhPVlg="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-4.0.0.tgz_1460165476293_0.1738605855498463"},"directories":{}},"4.0.1":{"name":"@smallwins/validate","version":"4.0.1","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"is-uuid":"^1.0.2","lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"22b2f4a48fd6ab2ff993ac250883015964998d9e","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.0.1","_shasum":"ef1414361033b4c3f97662f69928a468a5940957","_from":".","_npmVersion":"3.5.0","_nodeVersion":"4.2.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"ef1414361033b4c3f97662f69928a468a5940957","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.0.1.tgz","integrity":"sha512-mzoEvBKNr/mv86sVg50AoKQpVQx2gM9z+T6SIWG/4SZSO5QO2id2STSSR7d8gZ/zMRRB/AaXO0O3tcUEu7dWew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGoJsVhKIk89V15Q8KCDggLKoLqvqQ2XfGG/2/gRr6+PAiBw+YH7lXhSL1LNxIW8mz8r6gjwSu1XsUbmgKdLEFbHHg=="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/validate-4.0.1.tgz_1460166266687_0.44807091914117336"},"directories":{}},"4.0.2":{"name":"@smallwins/validate","version":"4.0.2","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"is-uuid":"^1.0.2","lodash.has":"^4.2.1","lodash.isarray":"^4.0.0","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0"},"devDependencies":{"tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"daeb39e8708c99010dd06abdbcb66edd5ded2c4b","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.0.2","_shasum":"886123a23137a07a07c2a2fb9d24d75be995b841","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.4","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"886123a23137a07a07c2a2fb9d24d75be995b841","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.0.2.tgz","integrity":"sha512-4ELWxS0PV0W49Zip+cPS2juKRCnMndNMnXVZFOhOJR48l9yGqNeEufqtNP0SWfZM5gAiE+m2dvyB1SD24ytCFw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJFCFc7PPXX8UtKQNhD9vfEvJBIZnEIdYYOc8TlP8YbwIhALshoU/7rdcV3scVh2T1TDvqnKydm4GgJdUK3+GFlgUq"}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-4.0.2.tgz_1466102007999_0.3494215155951679"},"directories":{}},"4.1.0":{"name":"@smallwins/validate","version":"4.1.0","main":"bundle","scripts":{"test":"tape test/**-test.js | tap-spec","build":"browserify index.js --standalone validate --node | uglifyjs -c > bundle.js"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"tape":"^4.6.2"},"devDependencies":{"lodash.has":"^4.2.1","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0","tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"571e36bdd60da5eba9cbf7f954aa491b12679fd3","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.1.0","_shasum":"772b927ea120c2ebc6d2df935e3588d52cfae0d7","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.4","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"772b927ea120c2ebc6d2df935e3588d52cfae0d7","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.1.0.tgz","integrity":"sha512-Tuz4oo5GDKZNqrBauYKTqSH+OAmr1s3Qa8a6xyyXvALbFITaix0eVt/Ml/46Z2MXdM6JBRiEK/sjKA/EiH0P7w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIf4UEZTFscVehK2c44X0GBfAUioDpMokkiOyjVXiS7wIgUH4iQBGhIs92FSxdFvzKZNgUlgqU7I/CTO03LI8B5H8="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-4.1.0.tgz_1477888703351_0.9538307364564389"},"directories":{}},"4.1.1":{"name":"@smallwins/validate","version":"4.1.1","main":"bundle","scripts":{"test":"tape test/**-test.js | tap-spec","build":"browserify index.js --standalone validate --node | uglifyjs -c > bundle.js","prepublish":"npm run build"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{},"devDependencies":{"lodash.has":"^4.2.1","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0","tap-spec":"^4.1.1","tape":"^4.5.1"},"gitHead":"69dac85395981b35031057519439f9b8a3eb76f4","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.1.1","_shasum":"526502768de259c9b8fb61e63b906b36b3e8dc79","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.4","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"526502768de259c9b8fb61e63b906b36b3e8dc79","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.1.1.tgz","integrity":"sha512-YP/L8sFgk/EvqewknnzS2ffiKnkzDdO+KZlXt977AiNdeoEx6Wr79vE+Mj6rbM7QuuRMJmdPIdi1W1JdbYm3BQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDbl34xcUtLHsjYBl2vN/TW+VLrrMdhjTUNiwDolGtSfAiB8CVwlFzObvi0DidgG2q1VEmmKyLhq/mudP2xXpgmoAg=="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-4.1.1.tgz_1477888911599_0.9655783812049776"},"directories":{}},"4.1.2":{"name":"@smallwins/validate","version":"4.1.2","main":"bundle","scripts":{"test":"tape test/**-test.js | tap-spec","build":"browserify index.js --standalone validate --node | uglifyjs -c > bundle.js","prepublish":"npm run build"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{},"devDependencies":{"browserify":"^13.1.1","lodash.has":"^4.2.1","lodash.isboolean":"^3.0.3","lodash.iserror":"^3.1.1","lodash.isfunction":"^3.0.8","lodash.isnumber":"^3.0.3","lodash.isobject":"^3.0.2","lodash.isstring":"^4.0.1","lodash.isundefined":"^3.0.1","lodash.property":"^4.1.2","serialize-error":"^2.0.0","tap-spec":"^4.1.1","tape":"^4.5.1","uglifyjs":"^2.4.10"},"gitHead":"3413e6bb8fe063b383b58e05e3ad63c4e123c8b4","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.1.2","_shasum":"e5581ce50968fcde8540eb3f8cc2909c11b9c2fe","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.4","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"e5581ce50968fcde8540eb3f8cc2909c11b9c2fe","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.1.2.tgz","integrity":"sha512-o5/HZBcuE30bFoI7cvIFL6kUbP6VCCMMe30589fqzVDvy7e2c/vzK6YKiIZFsOlWwKQLRVpd7W8/ee8wZ9WIkQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsyuVKBHFqGvLnwfXC7biecbjH9s83YGDdRzAvvU+LFwIgOqpX+qqzojetyl2ef0UDHuc00d72N7USTNjJr5VWUrs="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/validate-4.1.2.tgz_1477889082291_0.11674214620143175"},"directories":{}},"4.2.2":{"name":"@smallwins/validate","version":"4.2.2","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"@smallwins/nodash":"^1.0.0"},"devDependencies":{"browserify":"^13.1.1","serialize-error":"^2.0.0","tap-spec":"^4.1.1","tape":"^4.5.1","uglifyjs":"^2.4.10"},"gitHead":"2ec36807f8a4e89bc6e8281c7adaee7b5a439b88","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.2.2","_shasum":"d351dc2a1c85e263aa7bb018a64eb7ae39571f8e","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.3.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"d351dc2a1c85e263aa7bb018a64eb7ae39571f8e","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.2.2.tgz","integrity":"sha512-++btUpk79LX2I/w3yvPhoMBATEXvnIVWaixFPObjwp5JWr5zeMVa6c6QuG7L0vqUwQWB1U3fjFeN2jTzmD+uaw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGR/ro11eCzdsEkWdo3OTcRyXgnK0JzPVpViAYMAP7qdAiEA8jNQgBgj54YHMBa1QrrYIsaBLZcHi4djUwbmXaSyEk8="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-4.2.2.tgz_1486232966194_0.4543797802180052"},"directories":{}},"4.2.3":{"name":"@smallwins/validate","version":"4.2.3","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"@smallwins/nodash":"^1.0.0"},"devDependencies":{"browserify":"^13.1.1","serialize-error":"^2.0.0","tap-spec":"^4.1.1","tape":"^4.5.1","uglifyjs":"^2.4.10"},"gitHead":"20d5c727d624d871f21b08999ba0008075755802","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.2.3","_shasum":"91a8b9344be152bc1423305f75c9182019a355d7","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.3.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"91a8b9344be152bc1423305f75c9182019a355d7","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.2.3.tgz","integrity":"sha512-nR71KnAyMixSDBlEIJn6ZWs/AKadb3HfFAi1qKB1qkEDxejsbdHwZHGrC66sAFjQluLtWhAp/3fjxZunglDTXw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC8QgK+j2hz2/weDQBwVLQ0oo7ZmxL+867lp8F7UB4HaAiEA1g4ySkRYOphGHRW8v4Xk3TaYfUTrC2LF3/IJBKfARos="}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/validate-4.2.3.tgz_1486233302242_0.7836835440248251"},"directories":{}},"4.3.0":{"name":"@smallwins/validate","version":"4.3.0","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2","dependencies":{"@smallwins/nodash":"^1.0.0"},"devDependencies":{"browserify":"^13.1.1","serialize-error":"^2.0.0","tap-spec":"^4.1.1","tape":"^4.5.1","uglifyjs":"^2.4.10"},"gitHead":"a85da2008db185aad22ed6bea55bb940987ee6b7","description":"[ ![Codeship Status for smallwins/validate](https://codeship.com/projects/e0e990b0-d826-0133-2fa3-6a1daaefbd5c/status?branch=master)](https://codeship.com/projects/143153)","_id":"@smallwins/validate@4.3.0","_shasum":"a7e4dad21f5b968cdcd23fea8f95506e2b30316b","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.3.2","_npmUser":{"name":"brianleroux","email":"b@brian.io"},"dist":{"shasum":"a7e4dad21f5b968cdcd23fea8f95506e2b30316b","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.3.0.tgz","integrity":"sha512-3eqMMuytrH7ubex/mVVcQnbQlrxIfePzoX85wMk0zOQknGv7SqVqxWf3zE0CP+UK/P6v+30+DcqlnGOjG8zxpg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIFQIIYjO+59ZNA9zCq4RAm2FDiXJ6Nc/IodE8BHJlnwIhAKi8hxkOJacMjTSwkxN3AmE7sMSBq48w/4dW1YSu43yK"}]},"maintainers":[{"name":"afabbro","email":"angelinafabbro@gmail.com"},{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"spencermountain","email":"spencermountain@gmail.com"},{"name":"supabot","email":"supabot@brian.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/validate-4.3.0.tgz_1486488308912_0.5336601396556944"},"directories":{}},"4.3.1":{"name":"@smallwins/validate","version":"4.3.1","main":"index","scripts":{"test":"tape test/**-test.js | tap-spec","rc":"npm version prerelease --preid RC"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2.0","dependencies":{"@smallwins/nodash":"^1.0.1"},"devDependencies":{"tap-spec":"^5.0.0","tape":"^5.0.1"},"gitHead":"4a9778d59d1a1568e1b4bf4ffa23eacc5b81933b","description":"[![GitHub CI status](https://github.com/smallwins/validate/workflows/Node%20CI/badge.svg)](https://github.com/smallwins/validate/actions?query=workflow%3A%22Node+CI%22)","_id":"@smallwins/validate@4.3.1","_nodeVersion":"12.18.4","_npmVersion":"6.14.8","_npmUser":{"name":"dam","email":"kristoferjoseph@gmail.com"},"dist":{"integrity":"sha512-DWs6pFNb6eAdymGakqRhANCX+MuXcD3TRlLqKpO9h5wqA9Rmpwl6ZUO4e9NQosudAyFQwXpXj5k+YdR5Phc3LA==","shasum":"4d2452c53318618b828c1dd46758bcdfcc8cfe34","tarball":"https://registry.npmjs.org/@smallwins/validate/-/validate-4.3.1.tgz","fileCount":12,"unpackedSize":14515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfkxDfCRA9TVsSAnZWagAAml8QAIry5UdXrWHHiCXzex5U\nMya2woHWkwUoMlBJLlQgbqLgPSfvI6Jvpm1u3wcdPkN/RB1TM4GR7sBky33L\nt3uHkDv2Aa+HIg9M37zks9KfOrnpsSPwC5TXJWoPDAHddF3SXsrZY5fEqcXV\n4INsI/O/fg2ORs57qIQpzcLp44BhhiHrOSX0BGG2YRpkYW1lSN4HOPvg36jj\nrT3RdiuxlwQpAeKF7HfW8G+vYE0DkFOzAES0Svm+PVGfGkmCW21n+fQXev1K\nvhyrrja55NGe5GmlmXBGi5IHcK2M6TwdIj0PIDoJpPpK6zQBk2roCOGKzZsA\nPfBViooPPscXPujmEQZRAB3rJFvl9fnnye0cVdSDNKTDm3tAcPBJhOKZNjIo\nefwEVpn7zKRsLQJwoBPWLC8QqmXu16O/LeyEQvV1Tnr9rreSisXNteuBWVLR\nj8toZjnVJ2+gf1D1n2gkmtIMGzzjQT2HIHb6ZP4sxt71niO8gc0SZ3Sc7U6I\nx8MmglfhDgnROxh0x8+6noqTZ++rfaJWOOvmmhSYPKDqypAlSMDA/TBxGwQF\nn3aqbbRrLu/inUzE7JvOklRYjOJ5dQ3V/rBPqUFHnlp9c4Duj36yhsYgn0sU\nBMIHopFlmSE5Yom+o1U9QJfq1wtsxrssOe5DE/yFsKj6IeoGxJ72Pssy7Vpf\n/NKa\r\n=ZOVb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKte4wNsC1LqFUccVtMNNe4jYB1172k4X/9BKQxmDxtgIhANYWtBYrLgiaaKG9JippwfrHQN6Q0GA7W6rvuiP5udLC"}]},"maintainers":[{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"ryanblock","email":"rblock+npm@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/validate_4.3.1_1603473631033_0.10797878590667831"},"_hasShrinkwrap":false}},"readme":"# [@smallwins/validate](https://www.npmjs.com/package/@smallwins/validate)\n\n[![GitHub CI status](https://github.com/smallwins/validate/workflows/Node%20CI/badge.svg)](https://github.com/smallwins/validate/actions?query=workflow%3A%22Node+CI%22)\n\nParameter validation for builtins and custom types. Accepts `params` and a `schema` and returns an array of `Error`s or `false`.\n\n```javascript\nvar validate = require('@smallwins/validate')\n\nfunction hi(params, callback) {\n  var schema = {\n    'name':       {required:true,  type:Object},\n    'name.first': {required:true,  type:String},\n    'name.last':  {required:false, type:String}\n  }\n  var errors = validate(params, schema)\n  if (errors) {\n    callback(errors)\n  }\n  else {\n    callback(null, 'hi ' + params.first)\n  }\n}\n\n// logs: null, hi brian\nhi({name:{first:'brian', last:'leroux'}}, console.log)\n\n// logs: [ [ReferenceError: missing required param name.first] ]\nhi({name:{}}, console.log)\n```\n\n#### :dizzy: considerations\n\n- For testing an `Object` that presumably came from a JSON payload\n- Thusly, primarily concerned with JSON value types: `Object`, `String`, `Number`, `Array` and `Boolean`\n- Custom types are easily supported\n- Extra custom types bundled: `Email`, `ISO`, `DateRange` and `UUID`\n- Designed to test keys and nested keys\n- Optionally validate `required`\n- Optionally validate `min` and `max` for `String`, `Number` and `Array` builtin types (and easily implement for custom types / see `DateRange` for an example)\n\n#### things it does not do :thumbsdown:\n\n- Mutate things with: serialization, formatting or defaults\n- Nested subtypes (eg. the things in an array)\n- Localized error messages\n\n#### :punch::two_hearts: further justifications\n\nThere are a tonne of libraries that do things like this but also do a whole lot more. This library deliberately limits its scope:\n\n- Make errback style param contract validation super clean and simple\n- Work primarily with builtins but easily extend\n- Provide a nice API for usage (hence returning a falsy `null` instead of a truthy empty array `[]` for the return value of `validate` and making the schema type validation minimalist without sacrificing capability.)\n\n#### terse style example :point_left::eyes::point_left:\n\n```javascript\nvar validate = require('@smallwins/validate')\n\nfunction sum(params, callback) {\n  // define our assumed params\n  var errors = validate(params, {\n    x: {required:true, type:Number},\n    y: {required:true, type:Number}\n  })\n  // err first! it'll be null w/ good input\n  callback(errors, errors? null : params.x + params.y)\n}\n\nsum({}, console.log)\n// logs\n// [[ReferenceError: missing required param x], [ReferenceError: missing required param y]] null\n\nsum({x:1, y:2}, console.log)\n// logs\n// null 2\n```\n\n## :love_letter: api :thought_balloon::star2:\n\n`validate(params, schema)`\n\n- `params` a plain `Object` that we assume came from JSON\n- `schema` a plain `Object` for describing the shape of the data\n- `callback` (optional) Node style errback `function(err, params) {}`\n\n#### :key: schema\n\n- `required` either `true` or `false` (or leave it out completely)\n- `type` can be one of `Object`, `String`, `Number`, `Array` and `Boolean`\n- `min` any `Number` (or anything allowed by a custom type)\n- `max` any `Number` (or anything allowed by a custom type)\n\n#### :package: bundled custom types\n\n- `UUID`\n- `Email`\n- `ISO`\n- `DateRange`\n\nExample usage of custom types:\n\n```javascript\nvar validate = require('@smallwins/validate')\nvar lambda = require('@smallwins/lambda')\n// pull in the custom types\nvar UUID = require('@smallwins/validate/uuid')\nvar Email = require('@smallwins/validate/email')\nvar ISO = require('@smallwins/validate/iso')\nvar DateRange = require('@smallwins/validate/daterange')\n\n// use the schema per builtins\nfunction valid(event, callback) {\n  var schema = {\n    'params.id': {required:true, type:UUID},\n    'body.email': {required:true, type:Email},\n    'body.created': {required:true, type:ISO},\n    'body.duration': {required:true, type:DateRange, min:'2016/01/01', max:'2017/01/01'}\n  }\n  validate(event, schema, callback)\n}\n\nfunction save(event, callback) {\n  // performs save\n  callback(null, event)\n}\n\nexports.handler = lambda(valid, save)\n```\n\nCheck out the [examples](https://github.com/smallwins/validate-params-schema/tree/master/examples) for more on custom types and ranges (and the tests).\n","maintainers":[{"name":"brianleroux","email":"b@brian.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"ryanblock","email":"rblock+npm@gmail.com"}],"time":{"modified":"2022-06-12T23:57:15.903Z","created":"2016-03-29T22:00:41.116Z","1.0.0":"2016-03-29T22:00:41.116Z","2.0.0":"2016-03-31T05:41:16.202Z","3.0.0":"2016-03-31T05:56:17.091Z","3.1.0":"2016-04-02T20:37:33.042Z","3.1.1":"2016-04-02T20:39:24.494Z","3.2.0":"2016-04-03T01:14:36.484Z","4.0.0":"2016-04-09T01:31:18.761Z","4.0.1":"2016-04-09T01:44:27.609Z","4.0.2":"2016-06-16T18:33:28.400Z","4.1.0":"2016-10-31T04:38:23.569Z","4.1.1":"2016-10-31T04:41:51.835Z","4.1.2":"2016-10-31T04:44:44.051Z","4.2.2":"2017-02-04T18:29:26.410Z","4.2.3":"2017-02-04T18:35:04.128Z","4.3.0":"2017-02-07T17:25:09.144Z","4.3.1":"2020-10-23T17:20:31.170Z"},"keywords":["params","validate","schema","json","validations","contract"],"author":{"name":"Brian LeRoux","email":"b@brian.io"},"license":"Apache-2.0","readmeFilename":"readme.md"}