{"_id":"grant","_rev":"153-f4574a13cabf9bb55b16c2539e911b22","name":"grant","dist-tags":{"latest":"5.4.24"},"versions":{"1.0.0":{"name":"grant","version":"1.0.0","keywords":["gatekeeper","sentinel","guardian","cato","authentication","gateway","proxy","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"083e269faee9b2995fb92f1a7e9ef678e23f6c0b","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.0.tgz","integrity":"sha512-cNTwUwJ9F5su6/0XCJ012jBpXy4tqfpbhD9T+xbaj6hqQDJVrIxarHTyeVSV3UAFWkgdmK8y7l1G4GSGWzTpYQ==","signatures":[{"sig":"MEQCIHqfnD8Ul7Ra86QzyOUnc2u/OWfUBDzGAElkbzlELL1/AiAwGbDWP1EEcaa3PVVXeFxzkjpR3XkIMwYf/9P/AQWzkg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"app.js","_from":".","authors":["Nijiko Yonskai","Simeon Velichkov"],"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git@github.com:simov/grant","type":"git"},"_npmVersion":"1.3.11","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"3.2.6","winston":"0.7.3","hogan.js":"2.0.0","deep-copy":"*","consolidate":"0.9.1","mashape-oauth":"*"}},"1.0.1":{"name":"grant","version":"1.0.1","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"0e4ce25fa4460bd97b18cb319332e890c5590083","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.1.tgz","integrity":"sha512-/mPfGBgp/e7qlLSuZz9w5vHkQ+VCxmuiXyUYJNQDkr0Z0QRONsURi8a4IuRqruyGKVe+jSf569w6eZXXIbQqMQ==","signatures":[{"sig":"MEQCIHrO1WkLF634VYxT+iH/RzDQaVoOPZjQHdeb5lseSjyYAiB0AAvzPl9gVxHCNr4gi79Ifnofw1Yyk5hyyYPsfVfNJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","authors":["Nijiko Yonskai","Simeon Velichkov"],"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git@github.com:simov/grant","type":"git"},"_npmVersion":"1.3.11","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"3.2.6","winston":"0.7.3","deep-copy":"*","mashape-oauth":"*"}},"1.0.2":{"name":"grant","version":"1.0.2","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"90a0deb769e7152cc750e157846a43f08fb482bb","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.2.tgz","integrity":"sha512-u/PJxWI5r8cGHKuhqHk54t1XA83V8EzhHBO0Qona9KhI81PdcebLWzxLjwrm0NKY/WQCW3ZR7dK9b3p2BjlYtQ==","signatures":[{"sig":"MEUCIEiCdWvj0lzeGfq+y/TngnLR8miGRpbENKn4NXnP0eXAAiEA+ek6Vgfm6zy37jBdSn/enyeFh4VahAf85+7q9typj58=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","authors":["Nijiko Yonskai","Simeon Velichkov"],"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.3.11","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"3.4.4","winston":"0.7.3","deep-copy":"*","mashape-oauth":"*"}},"1.0.3":{"name":"grant","version":"1.0.3","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"a663bcb7eb7cf20df81e6bbf2c474f2ea53c27d3","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.3.tgz","integrity":"sha512-ev23bLnFVS5K9kNwJxll8L9LK0/5wTKZ6qy4EuqnJ8JAtUvhlkHELxPgAFQvk6jRmeWjMWC+IHx69osE+9XQQA==","signatures":[{"sig":"MEQCIEKA3/kqQzFtqJtdHpHRpGE+4tzjFmRdKIo91tGY1UXpAiBMrqtjnWX6LIGN54qM9CX1oVbeHn9pwP98g0x18W2CDw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","authors":["Nijiko Yonskai","Simeon Velichkov"],"scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.3.11","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"3.4.4","winston":"0.7.3","deep-copy":"*","mashape-oauth":"0.1.71"}},"1.0.4":{"name":"grant","version":"1.0.4","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.4","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"11f6dc17a49aa646face120438060d70a1b945e1","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.4.tgz","integrity":"sha512-Jj9zSruetZshlSecAsJlmU85weMHmM7nB2k7PkbnO7/c4nJkloBcuYnE2WX0H9enR3c6qKdKO0ymgsUFMHqKDw==","signatures":[{"sig":"MEQCIHol9Z0Zh4DxmXJPxkLLo+wB0e7wwU+RgsD5i9VonnDGAiAWheP05pVQZ6o0bSwPO9PRpZ7gg2FJUn6bTnhX5OM+6w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","authors":["Nijiko Yonskai","Simeon Velichkov"],"scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.3.11","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"3.4.4","winston":"0.7.3","deep-copy":"*","mashape-oauth":"0.1.71"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.0.5":{"name":"grant","version":"1.0.5","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.5","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"1c7ee9c3c6c3d1f5a7ce1f395ca5a414170eb83f","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.5.tgz","integrity":"sha512-2/kbWQF7NRdOzXCW/PeU1MFY5dSOcE5VB0A7VgXdTrfsT772QkqmjDeLsPhoOzQEf1HTZEqXe/e+UKn5UMsE2Q==","signatures":[{"sig":"MEUCIQDN1QVNdR51EsuNX66crXo33mazb3ZA12d/GOmChH7skAIgHBKmXqqcv3bMKhGxEF1w00SB9i3dX0qHsw8Tb1Ye9iU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"1c7ee9c3c6c3d1f5a7ce1f395ca5a414170eb83f","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"744135875b996847b2689b90c13161e0e87921bb","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.0.6":{"name":"grant","version":"1.0.6","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.6","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"7e467049013e76fe1203aaf1b32c4beefd07c5f1","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.6.tgz","integrity":"sha512-TMlEUbl1jlWkQk01E6t5PLql41VJD9mP23lOQDscAI0QOLFzBJVUGGA+jWVRUMA8XXQiak3CzbUF2772Y+FkiQ==","signatures":[{"sig":"MEQCIE73DOvbHsFYP/nV4+Z2sggvRrkhcr1g+h9z67Ayh+xqAiAosr6gs56OvBlSZf950EoLBy6JjIJoPE1uINrP8+CSvw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"7e467049013e76fe1203aaf1b32c4beefd07c5f1","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"9156641e08794fded750b05d711aa612b8778e1d","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.0.7":{"name":"grant","version":"1.0.7","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.7","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"38a171e336c059d7279dd8fecf4bd96d858bf9d7","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.7.tgz","integrity":"sha512-eXppcSs3M/3Y4wtzX4O8c09bTu6woKvWmPiZA3YHGp29GAk51cgNIEOl/2LyuW2cI2WYhLKXAufU8B2VmNMmiQ==","signatures":[{"sig":"MEUCIGPf1ggUIK9T6HItxbAa4F0gJ8xh+S/CkfjsVtFgAirZAiEAxXwytrHJUyOvbZCHZAd5+UcaWtX991sXPuKzkp69PfM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"38a171e336c059d7279dd8fecf4bd96d858bf9d7","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"3f34be459d753b4b8b5b2817d0884a0c347d3d64","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.0.8":{"name":"grant","version":"1.0.8","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.8","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"99f2b5076bca1e8f1a4bbac948e483d5134e972f","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.8.tgz","integrity":"sha512-KJHYkzSeRxuhDLGU+fHxYKr96xA8vkBcIdnHK4swFXHTdhBnpZ7sRIRA+qOZkl8uvuB7S7IXp0huiN3jRLEreA==","signatures":[{"sig":"MEUCIQDhtMl4yR/46dba4hc/GNE8GX0fKKOXeFvsvLjVAEowrwIgCegUYEff8DsGg9yNrN6XyB34ROR7UmgSGWuZDIu/7lI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"99f2b5076bca1e8f1a4bbac948e483d5134e972f","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"75290bf7876029f09cb9329c84801bc620ddd1bb","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.0.9":{"name":"grant","version":"1.0.9","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.0.9","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"033e015d9e74d6da2a42f3ff3d4f8525dc394281","tarball":"https://registry.npmjs.org/grant/-/grant-1.0.9.tgz","integrity":"sha512-ePE6BmkJGf7DIS0r9OqtthU2qimL3S/Cf0MiHf/UKTvNSCF4zqwiNNetTMZAeGddlv2tuY1Hzy2LEcQ5aob1jA==","signatures":[{"sig":"MEUCIQCj+aJAB6bme2BjJ2bzf8XMvx6V+RcZHCpKBdMBLSww2AIgY3kyndMur8M671VBK4Z+6cfQXcM5gqirUpoPRnyufF4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"033e015d9e74d6da2a42f3ff3d4f8525dc394281","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"cfc9d9a9646b4eded46bf6ac4a2d219dafd750fa","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.1.0":{"name":"grant","version":"1.1.0","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.1.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"35bdcc8025eba8e69082fdc351088cfdbcd68c3a","tarball":"https://registry.npmjs.org/grant/-/grant-1.1.0.tgz","integrity":"sha512-uvYflLJD9qoo6nE9dIJqlR0nazkgokU4csIz1TpuNOuMniGqn0sS+YqyQVdUbm0cZFPL22i59IeqjLnezCgtRA==","signatures":[{"sig":"MEUCIFjWAEbVdZbd8SK0rlQoX7R9UdXlg5TB80IMqxVPz6xsAiEAjOrZZeLtcLgL+p2Y0+q3I92qCWh0o+LN0bWjN84vvTQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"35bdcc8025eba8e69082fdc351088cfdbcd68c3a","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"c54f4f4d8a01566e43ac50d91eb91b98646ab584","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.1.1":{"name":"grant","version":"1.1.1","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.1.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"7019c539147d016f6ab6e23703ac4074a7f6c3d3","tarball":"https://registry.npmjs.org/grant/-/grant-1.1.1.tgz","integrity":"sha512-oDCBPUXi7FX8ZIcVPyW2tNo57O9Kmfjf7mdjs70IobIBpPPQpX7J6BNI300bni0Yk8MSoSdCTNa6UsW1U9HYmw==","signatures":[{"sig":"MEQCIC6aUhT3SR9lt3tsf0uDVL5/Xi2N6yfWVgblPuMMf40EAiBl+kO/Iz7FJMv0pRVWDjpunL3GvnyRJsiIbLY2b8Ec4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"7019c539147d016f6ab6e23703ac4074a7f6c3d3","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"bec896387cd8eab2c1aaee443aa559d9c1c267d7","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","supertest":"0.10.0"}},"1.1.2":{"name":"grant","version":"1.1.2","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.1.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"0c3fdd36bc3ea55bba4c4e36b24243c9f038a6d3","tarball":"https://registry.npmjs.org/grant/-/grant-1.1.2.tgz","integrity":"sha512-L64lHLHn8GH/xaDPQ5mN/p/4YTR6/Nq323rkAghVXPEXvTvESmVuhYUtLd2CrrWn/tNvv8+p3uleepa3BHTpEQ==","signatures":[{"sig":"MEUCIHbDnB23pQDfr8DsphX6RN0wRZeC5FDGpPnnBCMjybTfAiEAnO1jzAXcCd1afhg/TmPvqrpZsf7TPZCzjiqQMUPzWSo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"0c3fdd36bc3ea55bba4c4e36b24243c9f038a6d3","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"ab8e4edc303d1403500e69532d4cb88e6a72a7be","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","express":"4.4.4","request":"2.46.0","supertest":"0.10.0"}},"1.1.3":{"name":"grant","version":"1.1.3","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.1.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"8854564f70a3b796959b9a98bbffec7b4eff64ff","tarball":"https://registry.npmjs.org/grant/-/grant-1.1.3.tgz","integrity":"sha512-bbvuXp37Et1l1egS0c7obFuKT4bsKHcJHULj28WJys1ZhXW804vuoRne2TIu4wmNHbh8jwx9z67wvL5jhOVSNw==","signatures":[{"sig":"MEUCIQCU8qZ52E/6ldz5dohQGwpbI5/hf7LUhgBgXmrwmHcWNQIgd/oJMzZ4teBLiHViBk6QNnnbCgwkYp6cM4OSfroe9ZI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"8854564f70a3b796959b9a98bbffec7b4eff64ff","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"f056b026e3f08f6536f836a6e9c83d40e71453ab","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","express":"4.4.4","request":"2.46.0","supertest":"0.10.0"}},"1.1.4":{"name":"grant","version":"1.1.4","keywords":["guardian","authentication","middleware","express","oauth","plugin","plugins"],"license":"MIT","_id":"grant@1.1.4","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"ed96301a4272f6ccae8f08da6da74a5f00b89042","tarball":"https://registry.npmjs.org/grant/-/grant-1.1.4.tgz","integrity":"sha512-kGpnvCiWNk8brhFrMG3fC+YqjFHkif9wkMBIvy/fNCkw2yjatu02DVnqPLlS++PkvLOIH6X4mKbL4E23Et2u/Q==","signatures":[{"sig":"MEUCIHcyRgh/p4dnSKoX81DnUpq+bB/ZLMReTI8KvdG76Vf1AiEA7uDBRmpHpUsjVDENXbrvBNR2VsdGNfWcpV/vQknKfBQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"guardian.js","_from":".","_shasum":"ed96301a4272f6ccae8f08da6da74a5f00b89042","authors":["Nijiko Yonskai","Simeon Velichkov"],"gitHead":"9edf6a15dc4a73391c4fce8195ada8bcd12576f4","scripts":{"postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express","directories":{},"dependencies":{"express":"4.4.4","deep-copy":"*","body-parser":"1.4.3","cookie-parser":"1.3.1","mashape-oauth":"git://github.com/simov/mashape-oauth.git#oauth2-type","serve-favicon":"2.0.1","express-session":"1.5.1","connect-multiparty":"1.1.0"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","express":"4.4.4","request":"2.46.0","supertest":"0.10.0"}},"2.0.0":{"name":"grant","version":"2.0.0","keywords":["oauth","oauth2","authentication","middleware","express","koa"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@2.0.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"35883d5a2e6137883647745becbaeff8645c887b","tarball":"https://registry.npmjs.org/grant/-/grant-2.0.0.tgz","integrity":"sha512-SPtfSK3addvJAeXMAhCOmW+Gax4OA2284dqamxSc8MPtuROGKtxf2sQOOqnSdcK1ulhP48lK88Ap0hv9WRf9Aw==","signatures":[{"sig":"MEYCIQCOf4E49TBKL0HOhemnaZ3pfhKyWOfpGg+hM/GH3aELqAIhANz9X8yy/oRpFDUWeHHwyGxI9Ao0ToSCgDP7CjAuqrJT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"35883d5a2e6137883647745becbaeff8645c887b","gitHead":"68092529ad9bfcf917c9f3a1445a9387f4091df6","scripts":{"test":"node_modules/mocha/bin/mocha test/ --require should --reporter spec --timeout 10000","postinstall":"node example/postinstall.js"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"Authentication Middleware for Express and Koa","directories":{},"dependencies":{"qs":"2.3.3","koa":"0.14.0","express":"4.4.4","request":"2.51.0","thunkify":"2.1.2","deep-copy":"*","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.0.0","cookie-parser":"1.3.1","koa-bodyparser":"1.3.0","express-session":"1.5.1"},"devDependencies":{"mocha":"1.21.4","should":"4.0.4","istanbul":"0.3.2","coveralls":"2.11.2"}},"2.0.1":{"name":"grant","version":"2.0.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@2.0.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"ec5bcb66aa191da87063a1c47b81ac92d3284a48","tarball":"https://registry.npmjs.org/grant/-/grant-2.0.1.tgz","integrity":"sha512-hKOJ5sQ3luZPrxpFLvoKLEC49nKSIJhibU58zTPt1cQmTxxOj4bNWG4ix5OtlWXmn0o+FaLyGaolM6hWWRRy0g==","signatures":[{"sig":"MEUCIQCdQPdJoGkWLeYsY5sH+GO5Nu7cS8UhActkZgGQ1r8JMQIgVMpUOSHl59K2EH9bCzrihP1omiY/fgXJBuA91cwHig4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"ec5bcb66aa191da87063a1c47b81ac92d3284a48","gitHead":"81db7216d66b918e9039570c7e4154bc63338966","scripts":{"test":"npm run lint-lib && npm run lint-test && node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.21","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"dependencies":{"qs":"2.3.3","koa":"0.14.0","yar":"3.0.3","hapi":"8.2.0","express":"4.4.4","request":"2.53.0","thunkify":"2.1.2","deep-copy":"*","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.0.0","cookie-parser":"1.3.1","koa-bodyparser":"1.3.0","express-session":"1.5.1"},"devDependencies":{"mocha":"1.21.4","eslint":"0.14.1","should":"4.0.4","istanbul":"0.3.2","coveralls":"2.11.2"}},"2.0.2":{"name":"grant","version":"2.0.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@2.0.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"aa34aae7931302ec25ebdcdfb72224a0bed68771","tarball":"https://registry.npmjs.org/grant/-/grant-2.0.2.tgz","integrity":"sha512-p3Q8AGE4bAmtTdjPOTqn4qndsmBBk1y9kNVxXY8drCzUeyluwJUXccOZKUbVlMDDlnaepMYW5gVpWuqbxg5haQ==","signatures":[{"sig":"MEQCID8+HdVz0lGAxjfPok/PaLbQpWt9wKgyxv+JcssS0ARbAiBzCEjy/tn2BBUPvC9MJobb7Dn8fMj4hm3NW/0aJAPV8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"aa34aae7931302ec25ebdcdfb72224a0bed68771","gitHead":"bce5f7dd7462f7f7e0279d0df132ef73f52a522b","scripts":{"test":"npm run lint-lib && npm run lint-test && node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.28","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"dependencies":{"qs":"2.3.3","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.14.0","yar":"3.0.3","hapi":"8.2.0","mocha":"1.21.4","eslint":"0.14.1","should":"4.0.4","express":"4.4.4","istanbul":"0.3.2","thunkify":"2.1.2","coveralls":"2.11.2","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.0.0","cookie-parser":"1.3.1","koa-bodyparser":"1.3.0","express-session":"1.5.1"}},"3.0.0":{"name":"grant","version":"3.0.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.0.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"bc2edbc67a3be9feb0cb7c1dcd54253f6eecb9b3","tarball":"https://registry.npmjs.org/grant/-/grant-3.0.0.tgz","integrity":"sha512-3hSpBn8cqHK2NoMsR2KosUZrfIulgmpN9gA4plf7ihDz3Rkt6sGdKzz7VNtqnXUY64uDTsLoYOli4ladWeJejg==","signatures":[{"sig":"MEUCIQCJ9lbXeD3hAddNctCPDcqIrAGTDGLtEMz2a5ovFZhEXgIgE2gd4ZtGK4ClS2aaTo+bbYkvMjYWTZt1p69ASZXjCHo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"bc2edbc67a3be9feb0cb7c1dcd54253f6eecb9b3","gitHead":"99b01d491941f0a4568005ea8b981bbfa5e80f11","scripts":{"test":"npm run lint-lib && npm run lint-test && node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.28","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"dependencies":{"qs":"2.3.3","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.14.0","yar":"3.0.3","hapi":"8.2.0","mocha":"1.21.4","eslint":"0.14.1","should":"4.0.4","express":"4.4.4","istanbul":"0.3.2","thunkify":"2.1.2","coveralls":"2.11.2","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.0.0","cookie-parser":"1.3.1","koa-bodyparser":"1.3.0","express-session":"1.5.1"}},"3.0.1":{"name":"grant","version":"3.0.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.0.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"efd04e9f0cd0441ae9bc63de422a7ee8e05f2e3f","tarball":"https://registry.npmjs.org/grant/-/grant-3.0.1.tgz","integrity":"sha512-WdtpOTZjvemr9do0wTINI9vWi2qeWVMo4Rqjos6ojJM+08WaO9d+GzHFoJkXxQVm0ZwIvgXjP9GJgL75da1HIw==","signatures":[{"sig":"MEUCIHdhzuySBZ5ZewDYSXbtdtYjwsTx4SFpl3WBFcZBBFtrAiEAr6AuLKBR7t7usx7KubI3p8tgTHdgUznutK48k0HMki8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"efd04e9f0cd0441ae9bc63de422a7ee8e05f2e3f","gitHead":"71d2ca6f33ef30d65caa56fe11f90677d65b3d90","scripts":{"test":"npm run lint-lib && npm run lint-test && node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.28","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"dependencies":{"qs":"2.3.3","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.14.0","yar":"3.0.3","hapi":"8.2.0","mocha":"1.21.4","eslint":"0.14.1","should":"4.0.4","express":"4.4.4","istanbul":"0.3.2","thunkify":"2.1.2","coveralls":"2.11.2","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.0.0","cookie-parser":"1.3.1","koa-bodyparser":"1.3.0","express-session":"1.5.1"}},"3.0.2":{"name":"grant","version":"3.0.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.0.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c345b0d1a377ab92a62727af1854e618a0821467","tarball":"https://registry.npmjs.org/grant/-/grant-3.0.2.tgz","integrity":"sha512-r75/y+tL/FN/0TGLBKMZZd/2rUh7o5pUf4WRWfdnlPKFbYncyI6qc64GKz30kalGypKgFM1uydSD3Y1g7xvYYQ==","signatures":[{"sig":"MEUCIQCkAQzgLMNC2LU3d/6XR3JzV/wPKWCMdp/1ZiQDaNR3RQIgfqeVZ7wMygU6esLgaAm0SEE+QRpiAhV7dFJAnRFWMy0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"c345b0d1a377ab92a62727af1854e618a0821467","gitHead":"3021c55ce009ececfd885900d83bde02009c1629","scripts":{"test":"npm run lint-lib && npm run lint-test && node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.28","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"dependencies":{"qs":"2.3.3","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.14.0","yar":"3.0.3","hapi":"8.2.0","mocha":"1.21.4","eslint":"0.14.1","should":"4.0.4","express":"4.4.4","istanbul":"0.3.2","thunkify":"2.1.2","coveralls":"2.11.2","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.0.0","cookie-parser":"1.3.1","koa-bodyparser":"1.3.0","express-session":"1.5.1"}},"3.0.3":{"name":"grant","version":"3.0.3","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.0.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"7ab891588e8f16aaff3352a98f2056bb6945b106","tarball":"https://registry.npmjs.org/grant/-/grant-3.0.3.tgz","integrity":"sha512-6S6MWXSOoHLnST01dtFQzHHZ9Xnhs2s39xPtpvCKNAsgLYT206fNADRp2oh7zmN1V43/5v1mFUDUdHjACRyy6A==","signatures":[{"sig":"MEUCIHyqtPuCYvkZwAj79BWYILEaMvDSbqcSOjGpHsdaxsZDAiEA+Tn9F8un+CknDOFLiNGrjQvPs6jvNj4mWd9KcYDgPe4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"7ab891588e8f16aaff3352a98f2056bb6945b106","gitHead":"9675c692209165ff67eaa2e52bf3e17f8dbae72b","scripts":{"test":"npm run lint-lib && npm run lint-test && node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"1.4.28","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.18.1","yar":"3.x","hapi":"8.x","mocha":"1.21.4","eslint":"0.14.1","koa-qs":"2.0.0","should":"4.0.4","express":"4.4.4","istanbul":"0.3.2","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.1.0","cookie-parser":"1.3.1","koa-bodyparser":"1.4.1","express-session":"1.5.1"}},"3.1.0":{"name":"grant","version":"3.1.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.1.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"7e8f2e94f6a551a49723720f27383e1ec6488a9b","tarball":"https://registry.npmjs.org/grant/-/grant-3.1.0.tgz","integrity":"sha512-6SwydluXRmSMKK5ENQHI2OTjAfGMdx8fEpwtk8ox2aKqzzXb1ufCotjkvzh4wLxqbW3IBOftXaYQvm0s6ijTLA==","signatures":[{"sig":"MEYCIQDasnuxThlh/+CEcu8rK+FRPahn9YFm4w4Oz0BzmAjrNgIhANezYjxNj9I7z3Kd4E5XI27n4uXKVb4Xa0x84nB5egdO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"7e8f2e94f6a551a49723720f27383e1ec6488a9b","gitHead":"9c84ee24680ecf454aa90f4d7edfc80ee1f1fd46","scripts":{"test":"npm run lint-lib && npm run lint-test && v=$(node --version | cut -b 4-5) && if [ $v -ge 12 ]; then node_modules/mocha/bin/mocha --harmony --recursive test/; else node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.7.4","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.2","dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.4.4","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.1.0","cookie-parser":"1.3.1","koa-bodyparser":"1.x.x","express-session":"1.5.1"}},"3.2.0":{"name":"grant","version":"3.2.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.2.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"916b80f90700836fc985d03cb0dcc4740162c2ea","tarball":"https://registry.npmjs.org/grant/-/grant-3.2.0.tgz","integrity":"sha512-UDVfsmii5t2SqI98CSTQtguYHuBk5dg73nY7KVFmkvda5qWoex44OUibM7MPxdzS4ccSTe4yG4emI7NgRZWsgg==","signatures":[{"sig":"MEUCIQCWy08LUMWDegfA520X9apNdGWoX77bME5E+LxE7nWSdwIgIZz6aOA47Fj7qnTIF4Xjjp7MuA05mWSLYv4xiQO3+zY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"916b80f90700836fc985d03cb0dcc4740162c2ea","gitHead":"4c0645456518a71e798a672353594121dd8bbcc7","scripts":{"test":"npm run lint-lib && npm run lint-test && v=$(node --version | cut -b 4-5) && if [ $v -ge 12 ]; then node_modules/mocha/bin/mocha --harmony --recursive test/; else node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.7.4","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.2","dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.4.4","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.4.3","koa-session":"3.1.0","cookie-parser":"1.3.1","koa-bodyparser":"1.x.x","express-session":"1.5.1"}},"3.3.0":{"name":"grant","version":"3.3.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.3.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"b20844c6d854df8d443aa0394332c5152e217356","tarball":"https://registry.npmjs.org/grant/-/grant-3.3.0.tgz","integrity":"sha512-Ke79Dwys2qbukmeFAGaPdtI4aNuXyY6924DewKBZ2/+OHBm5wjsPJJVqmxN4BwRMCqI+LpSax3FQu9bkmo2PgQ==","signatures":[{"sig":"MEUCIHSV4ZaB+5hKb+6yebDVfsvszm1pJ1APnoDRCEftRzslAiEAirygg38Kb1XwgdmP0F4khv1J4nBdAf3OT1ZZiEOzmis=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"b20844c6d854df8d443aa0394332c5152e217356","gitHead":"72c8c90b99a3fb2bdb5a171413281323f0b2d7d6","scripts":{"test":"npm run lint-lib && npm run lint-test && v=$(node --version | cut -b 4-5) && if [ $v -ge 12 ]; then node_modules/mocha/bin/mocha --harmony --recursive test/; else node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.7.4","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.2","dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.x.x","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"1.x.x","express-session":"1.x.x"}},"3.3.1":{"name":"grant","version":"3.3.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.3.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"329c6210901167196e83b90a1268577b791f510c","tarball":"https://registry.npmjs.org/grant/-/grant-3.3.1.tgz","integrity":"sha512-P4UdLKy7E7m3h/XVfg9lEQYJUlwZA0idu+VJOWhKp9LYpIt4aUBHdOZek1YP+3i62P+ofVc8TbT+iY0kFEGskg==","signatures":[{"sig":"MEYCIQDwyga0LCFbCpYKqkf2zmfn6tDeu0zlWX2/YTv+WME+HwIhALwNmYDj227rGYKNePZ/LCNab+C+ebzkvwVqpTO7ZiM7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"329c6210901167196e83b90a1268577b791f510c","gitHead":"18073d81743da9a9f4107f7f6e9b812dfc409ecf","scripts":{"test":"npm run lint-lib && npm run lint-test && v=$(node --version | cut -b 4-5) && if [ $v -ge 12 ]; then node_modules/mocha/bin/mocha --harmony --recursive test/; else node_modules/mocha/bin/mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"node node_modules/eslint/bin/eslint lib/ && echo Lint lib passed","lint-test":"node node_modules/eslint/bin/eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.7.4","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.2","dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.x.x","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"1.x.x","express-session":"1.x.x"}},"3.3.2":{"name":"grant","version":"3.3.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.3.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"e959c4aa53a7dcc7c8d3cd92fa14e37e581728d3","tarball":"https://registry.npmjs.org/grant/-/grant-3.3.2.tgz","integrity":"sha512-KZp7hldqMgo58xNUJH7QmjzvA0KWwDf5gzr+MkyOknHYKEZvNGpRGEtWSHPUdKNJiJT7Xu34bvhDzycf4Myu6w==","signatures":[{"sig":"MEUCIQDUYuvQdKQHe4L5EQHchTHF73sOB/6BVvoAtPIK/G/kjwIgH8TYxHyYkfOrBlpBXf0LTT+6jIM8cM3ct20m9Mt7Jqk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"e959c4aa53a7dcc7c8d3cd92fa14e37e581728d3","gitHead":"ed65298c3021057a42c1ee8e9f7ff068f9691241","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"v=$(node --version | cut -b 4-5) && if [ $v -ge 12 ]; then mocha --harmony --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.10.1","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.4","dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.x.x","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"1.x.x","express-session":"1.x.x"}},"3.3.3":{"name":"grant","version":"3.3.3","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.3.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"a0d83d514eb595635150c3281cb62efb640f3128","tarball":"https://registry.npmjs.org/grant/-/grant-3.3.3.tgz","integrity":"sha512-wJ/CE7Izu+zRCQsxYBKxkguwmk9i2Eq2uSEIAVnLMk2AA2NC+MzJWXt+YIC64Cgm+de3MZBgiseeJzuw1YJ/2A==","signatures":[{"sig":"MEYCIQDgtEJ9VPerIDLHAA7h6b+t74a10bJdflt80qbVi6+pcAIhAN9mIp2Etawn13pUoMpCRMd8kdatS75fUF5O+CVCSI0L","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"a0d83d514eb595635150c3281cb62efb640f3128","gitHead":"719a7df413c9b35f8da53714b5f22962f7d40412","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"v=$(node --version | cut -b 4-5) && if [ $v -ge 12 ]; then mocha --harmony --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.11.3","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"2.3.1","dependencies":{"qs":"2.4.1","request":"2.53.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.x.x","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"1.x.x","express-session":"1.x.x"}},"3.4.0":{"name":"grant","version":"3.4.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.4.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"4cb88cb4e861bd06f18255d62dff590c867af670","tarball":"https://registry.npmjs.org/grant/-/grant-3.4.0.tgz","integrity":"sha512-R1yc/QUnlCOOnNXfiw2x5SemIGy4c2XAZyBcynW9v3QZ6BUhn5n3cQ2uYgPcQo4j17i1xH1lmB0GQExAQ2xNlw==","signatures":[{"sig":"MEUCIQCTuW2NjOKPfQqNHkzaUFa/wrgGmMk5KVpQNupZLNEFFwIgZhsQ37KJOTX2HG56MJx3HwtYysAGRodcIByVA21ShdQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"4cb88cb4e861bd06f18255d62dff590c867af670","gitHead":"bf59bf7c5f8e5d308d4fa464f107a9b19b907f92","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint --config test/.eslintrc test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.11.2","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.6","dependencies":{"qs":"4.0.0","request":"2.59.0","deep-copy":"*"},"devDependencies":{"koa":"0.x.x","yar":"3.x.x","hapi":"8.x.x","mocha":"2.2.4","eslint":"0.19.0","koa-qs":"2.0.0","should":"5.2.0","express":"4.x.x","istanbul":"0.3.13","thunkify":"2.1.2","coveralls":"2.11.2","koa-mount":"1.3.0","koa-route":"2.4.0","koa-router":"3.7.0","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"1.x.x","express-session":"1.x.x"}},"3.5.0":{"name":"grant","version":"3.5.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.5.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"34ab749feee596f4876e808b53f7dd1010a0573d","tarball":"https://registry.npmjs.org/grant/-/grant-3.5.0.tgz","integrity":"sha512-AocKNno5KvFfN8qniiUuy976+7Qym0P3RujELqbzQjaGdSbIAhcZTSvHOR/vARdhbbQIocntbJc05aA2+OF5Eg==","signatures":[{"sig":"MEYCIQCAEswb++oGbWjLgj9gU4A3F4mp0sJYH2XFdumkYroDuAIhAIIzeIiql4gcaIeo5qdt1H2vzUdCe08Cyg7V6WP8fLQG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"34ab749feee596f4876e808b53f7dd1010a0573d","gitHead":"7750217bac693834a61de2129ceaab2f6a26fbea","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.11.3","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"0.12.7","dependencies":{"qs":"4.0.0","request":"2.59.0","deep-copy":"*"},"devDependencies":{"koa":"1.x.x","yar":"3.x.x","hapi":"9.x.x","mocha":"2.x.x","eslint":"1.x.x","koa-qs":"2.x.x","should":"7.x.x","express":"4.x.x","istanbul":"0.x.x","thunkify":"2.x.x","coveralls":"2.x.x","koa-mount":"1.x.x","koa-route":"2.x.x","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"2.x.x","express-session":"1.x.x"}},"3.5.1":{"name":"grant","version":"3.5.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.5.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"d2483434bcd2c3d30969f29f53813a37f62156b4","tarball":"https://registry.npmjs.org/grant/-/grant-3.5.1.tgz","integrity":"sha512-z8uiV+Nby1sDKenPcPZGWhbMfIaim0EXNsg79/waNh+NuTca6oa44h+cgJ1bcqssOQTIn5IR57FR1G1foblnjA==","signatures":[{"sig":"MEUCIClKKcg4ALvfQ7JWGUvfA8dP5bMuotp2fyqsdbnD8xsyAiEA2CkivrSvOqYPozuXptik9PaFRsi8iy/SGsDTebWBLcE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"d2483434bcd2c3d30969f29f53813a37f62156b4","gitHead":"38279b6e550d8d038c4a7cfddceedbea103c6c46","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.14.3","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"4.1.0","dependencies":{"qs":"5.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"1.x.x","yar":"3.x.x","hapi":"9.x.x","mocha":"2.x.x","eslint":"1.x.x","koa-qs":"2.x.x","should":"7.x.x","express":"4.x.x","istanbul":"0.x.x","thunkify":"2.x.x","coveralls":"2.x.x","koa-mount":"1.x.x","koa-route":"2.x.x","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"2.x.x","express-session":"1.x.x"}},"3.5.2":{"name":"grant","version":"3.5.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.5.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"d3be7dd6d3750b033214d597c8799edc61339778","tarball":"https://registry.npmjs.org/grant/-/grant-3.5.2.tgz","integrity":"sha512-MqBEhVkG+EJC+byJ1Y/4sdfjwvxFHf2x4wwOYyfCKELIlc4d5KHDzZxSwaQZfklLUGkyO+WQ6bJUHvrar9wEGA==","signatures":[{"sig":"MEQCIHNvKCWdXRGH5YXLlgbynM0AFsQ/aSX23NeA2b9AV0jTAiBFRfOPIPISxJmiuw17ONH8eIErcsMZPgMXsoQ4csS+3Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"d3be7dd6d3750b033214d597c8799edc61339778","gitHead":"6bf93a96d7fc8216bf335cd2202a802668a6aeef","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.14.7","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"4.2.1","dependencies":{"qs":"5.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"1.x.x","yar":"3.x.x","hapi":"9.x.x","mocha":"2.x.x","eslint":"1.x.x","koa-qs":"2.x.x","should":"7.x.x","express":"4.x.x","istanbul":"0.x.x","thunkify":"2.x.x","coveralls":"2.x.x","koa-mount":"1.x.x","koa-route":"2.x.x","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"2.x.x","express-session":"1.x.x"}},"3.5.3":{"name":"grant","version":"3.5.3","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.5.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"b72d1259c9c806d29008c1d3a9b153d08bc2e023","tarball":"https://registry.npmjs.org/grant/-/grant-3.5.3.tgz","integrity":"sha512-AQp8sewM9KxSUjXxiSvFc8a7LTf1meDxJxKmIcJZGHfyGcfhNmZTXucfvlPZJhlSQPS12V4YcU5JGqTLyodKbw==","signatures":[{"sig":"MEUCIQDLkN0Cl44rHGLdAMZHzRd789HJYgizc873gPOkd8+tlwIgXZdl0wObVMHpZyoYUR2S99beqI412/qG6+cAsRAYw6U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"b72d1259c9c806d29008c1d3a9b153d08bc2e023","gitHead":"32f024ab21a245b4a49d3670366313d448a5cdd6","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"3.3.12","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"5.0.0","dependencies":{"qs":"5.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"1.x.x","yar":"3.x.x","hapi":"9.x.x","mocha":"2.x.x","eslint":"1.x.x","koa-qs":"2.x.x","should":"7.x.x","express":"4.x.x","istanbul":"0.x.x","thunkify":"2.x.x","coveralls":"2.x.x","koa-mount":"1.x.x","koa-route":"2.x.x","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"2.x.x","express-session":"1.x.x"}},"3.5.4":{"name":"grant","version":"3.5.4","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.5.4","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"870b0b5b55ec8e9941cd0b41b08b9a16750fff29","tarball":"https://registry.npmjs.org/grant/-/grant-3.5.4.tgz","integrity":"sha512-p1f/Bn6fNB43AZSSTPFZkmLkkObGqZRF+zOFYp8I99I9V2fsw23TW5fWrppFI+mXBtJndQ7eLOCo4Ki46LuyJw==","signatures":[{"sig":"MEYCIQDWol2gApL+fcceZg3m0BRzau95KHI51pWE1xAhJLVZUQIhAJUfqJMD9RTu/08Ai0eMFWB+aG6W/FBD+EUKamMwS26r","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"870b0b5b55ec8e9941cd0b41b08b9a16750fff29","gitHead":"f0c158dbbb1e135bec80ecdff0f7a4ea2cd2f3be","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"3.3.12","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"5.2.0","dependencies":{"qs":"5.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"1.x.x","yar":"3.x.x","hapi":"9.x.x","mocha":"2.x.x","eslint":"1.x.x","koa-qs":"2.x.x","should":"7.x.x","express":"4.x.x","istanbul":"0.x.x","thunkify":"2.x.x","coveralls":"2.x.x","koa-mount":"1.x.x","koa-route":"2.x.x","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"2.x.x","express-session":"1.x.x"}},"3.5.5":{"name":"grant","version":"3.5.5","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.5.5","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"a2ee7a1c714d82d135266242f3d16782475ea10b","tarball":"https://registry.npmjs.org/grant/-/grant-3.5.5.tgz","integrity":"sha512-YHQLGjORTusY66UKS522KeCw7CYonMaEt9JYOcKHcZ6lkrUwhbw91AIvbrTuWGKj96UTUBwZIOpZQxg0W0lWng==","signatures":[{"sig":"MEYCIQDuvNgsMSlx5c11T8reIPEiLSoWWAFKhaRc3qzYOUAgzwIhAIG+CiJDY/qd3i7HOMeqBFysgr9ELQ+rYv49a+8JDLeZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"a2ee7a1c714d82d135266242f3d16782475ea10b","gitHead":"026585a03ad10df07ee1acf7ff11822588099e33","scripts":{"test":"npm run lint-lib && npm run lint-test && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","lint-lib":"eslint lib/ && echo Lint lib passed","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/","lint-test":"eslint test/ && echo Lint test passed"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"3.3.12","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"5.2.0","dependencies":{"qs":"5.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"1.x.x","yar":"4.x.x","hapi":"9.x.x","mocha":"2.x.x","eslint":"1.x.x","koa-qs":"2.x.x","should":"7.x.x","express":"4.x.x","istanbul":"0.x.x","thunkify":"2.x.x","coveralls":"2.x.x","koa-mount":"1.x.x","koa-route":"2.x.x","body-parser":"1.x.x","koa-session":"3.x.x","koa-bodyparser":"2.x.x","express-session":"1.x.x"}},"3.6.0":{"name":"grant","version":"3.6.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.6.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"191b5056aad2aba3c27ab27498d194f421c10f0d","tarball":"https://registry.npmjs.org/grant/-/grant-3.6.0.tgz","integrity":"sha512-HtFIqkXrHv2JjduStmx64m7BQFENVmUgmYueAxTIh1zseTJ+WXMzvqB1exMNrr0tNiIuKhRZRRXsSEYoSZYDHQ==","signatures":[{"sig":"MEUCIHxrZt5hEmGL57fecPVhxSWdLcZcQdSl0uUfXeUO+hdCAiEAhF/iJKeodiSzjnh902kUKpx3SCTeTMlLtoWra69qERI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"191b5056aad2aba3c27ab27498d194f421c10f0d","gitHead":"36bd14db04b2f5e5b6bc58b0f434f83b15c7880f","scripts":{"lint":"eslint lib/ test/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"3.7.3","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"5.9.0","dependencies":{"qs":"6.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.4.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.6.0.tgz_1459068779626_0.13897295389324427","host":"packages-16-east.internal.npmjs.com"}},"3.6.1":{"name":"grant","version":"3.6.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.6.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"8a5ae64e4ba69eacaf659a7c408afeb34f6367f0","tarball":"https://registry.npmjs.org/grant/-/grant-3.6.1.tgz","integrity":"sha512-0+Tx/WdWAy2/0yPnFw7ogZGd9oPC39R5RdEFNZRX0wtmHrEFPOab6enYawEoffDXs1Pd6+O5wMDWkAAbjyMTvA==","signatures":[{"sig":"MEQCICHz7BVb1trK6QeH2rG83Z4lzpRwHb7xaToMlPYs6hZzAiAE5I6F3+CXZeButG1DQATSEBuzuOGeV0WleeLLIlEpmg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"8a5ae64e4ba69eacaf659a7c408afeb34f6367f0","gitHead":"981cd75e2076f94491e009a792ff6f44f0139345","scripts":{"lint":"eslint lib/ test/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"3.8.5","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"5.9.0","dependencies":{"qs":"6.1.0","request":"2.64.0","deep-copy":"1.1.0"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.4.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.6.1.tgz_1461597105501_0.04986642487347126","host":"packages-16-east.internal.npmjs.com"}},"3.6.2":{"name":"grant","version":"3.6.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.6.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"9c0245deda130f0d98489f1c440961d692006298","tarball":"https://registry.npmjs.org/grant/-/grant-3.6.2.tgz","integrity":"sha512-91C5M39+BwOXKAxzEWkNH2V8a/05Cq0Nxydc6gExvthfF6vVT9uN3EC1vEQ0aROCJx8lA4CeyxZ1ut3vgEOEmQ==","signatures":[{"sig":"MEUCIELeq8yrQTvuABE95xEbvA6uzbhTkLLjWRLqpXTFC0RFAiEAwOzvhMNLiBbC+9FXtVUwpT/sZV2re7fnP3Nn9QQQwDM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","index.js"],"_shasum":"9c0245deda130f0d98489f1c440961d692006298","gitHead":"3fdfff39e1e2e31fbd83e478978a868eeab1ecd4","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.4","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"6.1.0","dependencies":{"qs":"6.2.0","request":"2.72.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.6.2.tgz_1463472968843_0.2738342813681811","host":"packages-16-east.internal.npmjs.com"}},"3.6.3":{"name":"grant","version":"3.6.3","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.6.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"31befddbfcf2c1e50a0aab324084111480fbee2d","tarball":"https://registry.npmjs.org/grant/-/grant-3.6.3.tgz","integrity":"sha512-OERxXyQVHgb3J4bWylm8/smCYw7HemN01olqeNj4FrQT8hAEnVd6m1mxMH/yUG3dNoQmAcOkmUK/DgvOcuDKow==","signatures":[{"sig":"MEUCIAY/p2z+38dPamMZm07jKCqvspHmbpnit31083P9y0k6AiEA2rpZdkC2O0H7i6RkfV9vWLnkLQ2AgZC6YPjTRCjYacQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"31befddbfcf2c1e50a0aab324084111480fbee2d","gitHead":"945aa18003b1115139cde0c6724848a66f66691a","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.6","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"6.2.2","dependencies":{"qs":"6.2.1","request":"2.74.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.6.3.tgz_1469569298942_0.46201353962533176","host":"packages-16-east.internal.npmjs.com"}},"3.6.4":{"name":"grant","version":"3.6.4","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.6.4","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"96878d4285289f174cee5475fc4ca5ae17c89fc0","tarball":"https://registry.npmjs.org/grant/-/grant-3.6.4.tgz","integrity":"sha512-Env2hgFLsFTsKqGd6ebQr7rPX9g9TdsT7Qp+vTM+HD51egWqu65kwDtiAZT+7FmaLaB8d+FsqpNHGrQ/nlpebw==","signatures":[{"sig":"MEUCIQCaidw4TKUji43CPIpXoZl7GfLGABs5Sa0mAFsrSEgmVQIgNv8gVVp+rZT8kh421WtWdxJBcyZhLAmQZzsBbiaxaB8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"96878d4285289f174cee5475fc4ca5ae17c89fc0","gitHead":"cc5c98314c422e3ec710e2d23d26d60297fb295d","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.6","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"6.2.2","dependencies":{"qs":"6.2.1","request":"2.74.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.6.4.tgz_1472565551524_0.2729479819536209","host":"packages-16-east.internal.npmjs.com"}},"3.6.5":{"name":"grant","version":"3.6.5","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.6.5","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"294e3724607d14e3dadb47f5e4aa7bd2a98325a3","tarball":"https://registry.npmjs.org/grant/-/grant-3.6.5.tgz","integrity":"sha512-jIHDOZogkXhvIvqQSswIqyu50vohG6CbB6v0WcQ7v/U7foUGVXH8azNEQw+XXevn/4K8aqGOSwScf2mJ3lUtYA==","signatures":[{"sig":"MEUCIQDvFjE/T4u9y3ysQ6Id+amVt772E8Omm50CRKZndBq+FgIgXpOq4WmXfkG9hjZsxUne1hQcOkKbqpUT5gwpI+W+q40=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"294e3724607d14e3dadb47f5e4aa7bd2a98325a3","gitHead":"5d98afac6512b3e21bcfa3d987c878d6cb7b4127","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.9","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"6.5.0","dependencies":{"qs":"6.2.1","request":"2.74.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.6.5.tgz_1475241971175_0.238677479326725","host":"packages-12-west.internal.npmjs.com"}},"3.7.0":{"name":"grant","version":"3.7.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.7.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"729e42a1b1c05cc0ac917ef49f50fde16be8385b","tarball":"https://registry.npmjs.org/grant/-/grant-3.7.0.tgz","integrity":"sha512-Rm9Mx2XJLDZx3k84wpxuwL3UHDhAWSIcVYrH++0FkwywemaT2e5ON5vwCe4hpTdXqyfMIQwHigXKxbiYlu1pHA==","signatures":[{"sig":"MEYCIQCRWd2evbPE/6mLld3gMtBM3UN3o/gqm/jHY/3OeINl9gIhAIkdM4xA3j7ZyQ8psn5RyFt6xlI8oqqkKxqxl4SJ/uV3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"729e42a1b1c05cc0ac917ef49f50fde16be8385b","engines":{"node":">=4.0.0"},"gitHead":"7e85c4e79fd94da9b8dc3acf85fe039d6a765b32","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"major=$(node --version | cut -b 2-2) && minor=$(node --version | cut -b 4-5) && if [ $major -eq 0 ] && [ $minor -ge 12 ]; then mocha --harmony --recursive test/; elif [ $major -ge 1 ]; then mocha --recursive test/; else mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/; fi","test-cov":"istanbul cover _mocha test/ test/flow/ test/consumer/express/ test/consumer/hapi/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.11","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"7.2.1","dependencies":{"qs":"6.2.1","request":"2.74.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.7.0.tgz_1483009739969_0.6559557938016951","host":"packages-18-east.internal.npmjs.com"}},"3.7.1":{"name":"grant","version":"3.7.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"http://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.7.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"d59f29a59fd22e8f5435232d92f47c048761d5f9","tarball":"https://registry.npmjs.org/grant/-/grant-3.7.1.tgz","integrity":"sha512-9oPxXHvFJGJukr7uL6NZnVJeb/yOWCtIndfv8TtQm88fCvk2nENxDdoL/s9Flp/7nZGWxC5gr2JIXyztXz5xJQ==","signatures":[{"sig":"MEYCIQCjzAlOSHCdf5rCIDMZVOcsWU4u6GoZHp882dWnBb2SawIhAPK6YQNc9mS9bCG7c6leE4RazxHe67DRCu+efjKVZVtP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"d59f29a59fd22e8f5435232d92f47c048761d5f9","engines":{"node":">=4.0.0"},"gitHead":"057e9224308191b91c9e4b6fdf5896284c85d355","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"mocha --recursive test/","test-cov":"istanbul cover _mocha -- --recursive test/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.11","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"7.2.1","dependencies":{"qs":"6.2.1","request":"2.74.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.7.1.tgz_1488816472505_0.23528700205497444","host":"packages-18-east.internal.npmjs.com"}},"3.7.2":{"name":"grant","version":"3.7.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.7.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"f8dd4f922cbedf883840e13df162a83b1dfd0f32","tarball":"https://registry.npmjs.org/grant/-/grant-3.7.2.tgz","integrity":"sha512-3wIfMy1v0QuLuxT+UD0g4LVpLGIIbQy3aYqiIwKPmEoLl7nFDdRSGFyo+pgJBos+xrEu8/JTmAFV13wTMeL8jA==","signatures":[{"sig":"MEYCIQCp5+N/5maZNwcaScYpbnPT8hq66sgkAbb3EOxb2HvxEgIhANI/cVWRU3x3325QTU8q8AfHovrZmW8qTCfPuaJzKDpr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"_shasum":"f8dd4f922cbedf883840e13df162a83b1dfd0f32","engines":{"node":">=4.0.0"},"gitHead":"a02b1d31036bb501ee4110c79a7b3af354778d4a","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"mocha --recursive test/","test-cov":"istanbul cover _mocha -- --recursive test/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"2.15.11","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"7.7.2","dependencies":{"qs":"6.4.0","request":"2.74.0","deep-copy":"^1.1.2"},"devDependencies":{"koa":"^1.2.0","yar":"4.x.x","hapi":"9.3.1","mocha":"^2.4.5","eslint":"^2.9.0","koa-qs":"^2.0.0","express":"^4.13.4","istanbul":"^0.4.2","thunkify":"^2.1.2","coveralls":"^2.11.9","koa-mount":"^1.3.0","koa-route":"^2.4.2","body-parser":"^1.15.0","koa-session":"^3.3.1","koa-bodyparser":"^2.0.1","express-session":"^1.13.0","eslint-plugin-promise":"^1.1.0","eslint-config-standard":"^5.2.0","eslint-plugin-standard":"^1.3.2"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.7.2.tgz_1492691012276_0.9346989144105464","host":"packages-18-east.internal.npmjs.com"}},"3.8.0":{"name":"grant","version":"3.8.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.8.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c3133f864d11838b5ebeac2d7c882d976884df44","tarball":"https://registry.npmjs.org/grant/-/grant-3.8.0.tgz","integrity":"sha512-Q8UN1j9JQmmb/Wf7PlYXJn92IjX9Tio21rEV5jOte/novOaZ/l0xMWNel7CDbRw0zqFEnYIIAyh1Cri2u3poUw==","signatures":[{"sig":"MEYCIQDiWaQt0n7rbgCTnBKsxta8cJ1sZs5glJ6yRaSO3CjIMwIhAKlfKgJN+AjX1jO7CSwBioKPXsnEwVbn8v/7qjbizrHz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"engines":{"node":">=4.0.0"},"gitHead":"6f7faaa6fd7729deed51ee0333f4bec4cfcd9575","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"mocha --recursive test/","test-cov":"istanbul cover _mocha -- --recursive test/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.0.3","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.0.0","dependencies":{"qs":"6.4.0","request":"2.81.0","deep-copy":"^1.2.0"},"devDependencies":{"koa":"1.4.0","yar":"^8.1.2","hapi":"^16.3.0","mocha":"^3.4.2","eslint":"^3.19.0","koa-qs":"^2.0.0","express":"^4.15.3","istanbul":"^0.4.5","thunkify":"^2.1.2","coveralls":"^2.13.1","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.1.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","eslint-plugin-node":"^5.0.0","eslint-plugin-import":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.8.0.tgz_1496851037754_0.6305003936868161","host":"s3://npm-registry-packages"}},"3.8.1":{"name":"grant","version":"3.8.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.8.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"f022e0ce0a83773039ce3f6a53239c980d16d2b5","tarball":"https://registry.npmjs.org/grant/-/grant-3.8.1.tgz","integrity":"sha512-BkRurPNNa8+v8+FiDUw2iRYtSBMtGj34kIYw21uIDABH3UrN+12ATtzNSymP3D6u3T16WrHMGfZxPKes0VCw6w==","signatures":[{"sig":"MEUCIQDanTTMYmFpCKw07NR5kjhxak2kC9okBT8NrBha+SejXwIgT1XqDxsiBKh5kyoQ5wbUZ325fnTwIKfSitwjlV7rslM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"engines":{"node":">=4.0.0"},"gitHead":"236efee122fd4c133d60293f4da7d19249dd39b3","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"mocha --recursive test/","test-cov":"istanbul cover _mocha -- --recursive test/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.6.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.1.2","dependencies":{"qs":"6.4.0","request":"2.81.0","deep-copy":"^1.2.0"},"devDependencies":{"koa":"1.4.0","yar":"^8.1.2","hapi":"^16.3.0","mocha":"^3.4.2","eslint":"^3.19.0","koa-qs":"^2.0.0","express":"^4.15.3","istanbul":"^0.4.5","thunkify":"^2.1.2","coveralls":"^2.13.1","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.1.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","eslint-plugin-node":"^5.0.0","eslint-plugin-import":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant-3.8.1.tgz_1513162638559_0.029450005618855357","host":"s3://npm-registry-packages"}},"3.8.2":{"name":"grant","version":"3.8.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@3.8.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c30cbd91788e6bfeb43ae0d7d01fd396b68aa440","tarball":"https://registry.npmjs.org/grant/-/grant-3.8.2.tgz","fileCount":16,"integrity":"sha512-6oKs+b4SYSeIKG3JNSap/F4jQfbZlFpW1z5L10KtGwe4GWKANRr1E1ZFlvI+91WlIke3xo2ar0evF6lJJYvVrA==","signatures":[{"sig":"MEUCIGbeb37mZWURSrJq0+k+Ke7nZGqCh1xvr1dB04dnbJoUAiEAtD5aYS0G3QNEwKwXgusJVVsFxHDFFUprtTuWOIAZmtI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103716},"main":"index.js","files":["config/","lib/","CHANGELOG.md","LICENSE","README.md","index.js"],"engines":{"node":">=4.0.0"},"gitHead":"39b61bb51cb1212d37e6fd5f859587a1dc7cdb57","scripts":{"lint":"eslint lib/ test/ examples/ && echo Lint Passed","test":"npm run lint && npm run test-ci","test-ci":"mocha --recursive test/","test-cov":"istanbul cover _mocha -- --recursive test/"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.6.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.1.2","dependencies":{"qs":"6.4.0","request":"2.81.0","deep-copy":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"1.4.0","yar":"^8.1.2","hapi":"^16.3.0","mocha":"^3.4.2","eslint":"^3.19.0","koa-qs":"^2.0.0","express":"^4.15.3","istanbul":"^0.4.5","thunkify":"^2.1.2","coveralls":"^2.13.1","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.1.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","eslint-plugin-node":"^5.0.0","eslint-plugin-import":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_3.8.2_1518530565994_0.5266891969892984","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"grant","version":"4.0.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.0.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"7eba19ee4362c741296ffff9af4102de74466624","tarball":"https://registry.npmjs.org/grant/-/grant-4.0.0.tgz","fileCount":31,"integrity":"sha512-0lpuyX6OutdznYmSCWVyf2IrA659Lf51gLC7EaQHtjL+sRxNE64Ud5meHBgIFNoC8GvJy7PjEuorIp4iscYuOw==","signatures":[{"sig":"MEUCIFqlZ4xaI2EiUBZnkRfis04wwscF1EERBamJw5SkD2adAiEA1xthqQxQHM1l4At1+QAmX7hNOwBgUU9cV1gJdryyd00=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176184},"main":"./build/index.js","files":["build/","config/","lib/","grant.js","index.js","CHANGELOG.md","LICENSE","README.md","package.json"],"engines":{"node":">=4.0.0"},"gitHead":"60a35f1d21dca81605643bb335050ddc29fe042d","scripts":{"lint":"eslint lib/ test/ examples/","test":"npm run lint && npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -v | cut -b 2-2) && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.6.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.1.2","dependencies":{"qs":"^6.5.1","deep-copy":"^1.4.2","request-oauth":"0.0.2","request-compose":"0.0.5"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.0","yar":"^8.1.2","hapi":"^16.6.3","mocha":"^5.0.4","eslint":"^4.18.2","koa-qs":"^2.0.0","express":"^4.15.3","request":"2.81.0","istanbul":"^1.1.0-alpha.1","thunkify":"^2.1.2","babel-cli":"^6.26.0","coveralls":"^3.0.0","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","babel-preset-env":"^1.6.1","eslint-plugin-node":"^6.0.1","eslint-plugin-import":"^2.9.0","eslint-plugin-promise":"^3.7.0","eslint-config-standard":"^11.0.0","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.0.0_1521030482496_0.30682255662893043","host":"s3://npm-registry-packages"}},"4.0.1":{"name":"grant","version":"4.0.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.0.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c3717739e7f0518941eee18e0058d2d23bfa1d4f","tarball":"https://registry.npmjs.org/grant/-/grant-4.0.1.tgz","fileCount":31,"integrity":"sha512-GkipDmeM7MaEk/Oh0q3/b8hYbLlSqokIPmaKc2mzKq+FL6FtMz1E9nch1T9qH6CPAWan7EwlAV7XkTcSF5BlXw==","signatures":[{"sig":"MEQCIGtQpBwMCs+0x4NxXLgJztgdY/3dSM6AZ1B/tfeysgNqAiBdDBjBQfw77rNTAiupEsbYWb//r+OWj6WWB1fNRr77fg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176250},"main":"./build/index.js","files":["build/","config/","lib/","grant.js","index.js","CHANGELOG.md","LICENSE","README.md","package.json"],"engines":{"node":">=4.0.0"},"gitHead":"e49d01552d2f061e3ba28c6592014453ab75348f","scripts":{"lint":"eslint lib/ test/ examples/","test":"npm run lint && npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -v | cut -b 2-2) && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.6.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.10.0","dependencies":{"qs":"^6.5.1","deep-copy":"^1.4.2","request-oauth":"0.0.2","request-compose":"0.0.7"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.0","yar":"^8.1.2","hapi":"^16.6.3","mocha":"^5.0.4","eslint":"^4.18.2","koa-qs":"^2.0.0","express":"^4.15.3","request":"2.81.0","istanbul":"^1.1.0-alpha.1","thunkify":"^2.1.2","babel-cli":"^6.26.0","coveralls":"^3.0.0","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","babel-preset-env":"^1.6.1","eslint-plugin-node":"^6.0.1","eslint-plugin-import":"^2.9.0","eslint-plugin-promise":"^3.7.0","eslint-config-standard":"^11.0.0","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.0.1_1521072725168_0.615072898911248","host":"s3://npm-registry-packages"}},"4.1.0":{"name":"grant","version":"4.1.0","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.1.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"04849ad83126639dda3767f81947a5c74d965324","tarball":"https://registry.npmjs.org/grant/-/grant-4.1.0.tgz","fileCount":35,"integrity":"sha512-2ipqRN8jSWuzph9eoQJynCRAjSQdldE6BdnGezsF82cAlLqIeskomGSnGvg2euV6WukX/awTr2u0Y+5Bj8dKsw==","signatures":[{"sig":"MEUCIExlLFMfqThQjOatJPGSNxttyMzI9VJYicC3OUshUWeDAiEAhhUvU4qqKaiuIFimWaHfyuQGwjvhz9tvqFpK3kopoQo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":184614},"main":"./build/index.js","files":["build/","config/","lib/","grant.js","index.js","CHANGELOG.md","LICENSE","README.md","package.json"],"engines":{"node":">=4.0.0"},"gitHead":"5795b0995df78c3abc50e804cfa51050c2e72325","scripts":{"lint":"eslint lib/ test/ examples/","test":"npm run lint && npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run copy:hapi && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -v | cut -b 2-2) && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","copy:hapi":"cp lib/consumer/hapi17.js build/lib/consumer/","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.6.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.10.0","dependencies":{"qs":"^6.5.1","deep-copy":"^1.4.2","request-oauth":"0.0.2","request-compose":"0.0.8"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.0","yar":"^8.1.2","hapi":"^16.6.3","mocha":"^5.0.4","eslint":"^4.19.0","koa-qs":"^2.0.0","express":"^4.16.3","request":"2.81.0","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.0","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","babel-preset-env":"^1.6.1","eslint-plugin-node":"^6.0.1","eslint-plugin-import":"^2.9.0","eslint-plugin-promise":"^3.7.0","eslint-config-standard":"^11.0.0","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.1.0_1521409364664_0.38222324150493536","host":"s3://npm-registry-packages"}},"4.1.1":{"name":"grant","version":"4.1.1","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.1.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"3020e5f541d42622b923b1813b7800d8c4c86067","tarball":"https://registry.npmjs.org/grant/-/grant-4.1.1.tgz","fileCount":35,"integrity":"sha512-YeJyTCud72x0oeeUwJvDc24JYN+E4ItcVYdVOrEh4bopFmXpvByVFqtnalsxYNL2xkzrfxzO5AQ4JPygydOGMA==","signatures":[{"sig":"MEUCIDx+KuwDtwXO8p7CoCGn1ea9Gj/9Ch4TewbvCEOlxvZvAiEA3z48xIhd3ZYTojQdEDnCpsMcK7B1aV/asVGjf1sWjMM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183001,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa3IgFCRA9TVsSAnZWagAAfrEP/17VwQJ0GDQZj2IZ+fEq\nS2QL9T+qAFyMHhRfP/H5cH0EXNUf9VLdTukQXhDW67ezPSgAU74W3bYuzE8y\nCoDmTCtzJmZzjwYDbJ4QZegxZWiacU0lJgfrZQ0xrclpFDyi3bH3Rm5njBGw\n8caU4xirs1yXlWMJQ3v1/O0OdOE48fWhdZEoVkfuwem4gdkEAp+5QAVdaU/3\nUI1KsKlglZq8h+EQgR/U86jeC2lBi4P4KSZqGzMAZyBiXCpVGQfzJjn7HfPH\nbqg4Ia9yWE4Qia7QCnFDPg1XsuLZb9zghXQu6wOnSXHFxkTxnkxQ8yTrLGQi\nG59c4rT9URGrWbRbPRbAYZS4UuiUtkHfMh73Q05NLhID/9U4rs3Apt0CkF0T\nzPaNJFChIqK6JSQjP3ZbcfgM3CEJqJaxkpnBmTMBlAjSi7F46kulUN9I4J03\n4jiiesUnmXojyv1J+3Pb/CTwAsjY2SDp83HAeWQ5wUU7va3BaxGa7oYQtyI6\nxO/A8rKFWPqhKMJzWFCIkKJEENOw9cUSICOL8zD8E3xiZv+vkPjAIZwk28sX\nisAcKUD5bO0C4RPSx6bfiYmLdZ33vGc3OWFY5NBJUGNCMLE3E5l2O5hjaKNZ\nT6WV5sQ/OgXsn/gf3qQg5C4iEfbRHoxWueFFwWKOK18qx/ZLgzdmyhZjYz89\nvp0V\r\n=C5GO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","files":["build/","config/","lib/","grant.js","index.js","CHANGELOG.md","LICENSE","README.md","package.json"],"engines":{"node":">=4.0.0"},"gitHead":"c2928675ef6857f38d36452323091d5acc2768a4","scripts":{"lint":"eslint lib/ test/ examples/","test":"npm run lint && npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run copy:hapi && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -v | cut -b 2-2) && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","copy:hapi":"cp lib/consumer/hapi17.js build/lib/consumer/","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"5.8.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.10.0","dependencies":{"qs":"^6.5.1","deep-copy":"^1.4.2","request-oauth":"0.0.2","request-compose":"0.0.12"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.0","yar":"^8.1.2","hapi":"^16.6.3","mocha":"^5.1.1","eslint":"^4.19.1","koa-qs":"^2.0.0","express":"^4.16.3","request":"2.81.0","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.0","koa-mount":"^1.3.0","body-parser":"^1.17.2","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","express-session":"^1.15.3","babel-preset-env":"^1.6.1","eslint-plugin-node":"^6.0.1","eslint-plugin-import":"^2.11.0","eslint-plugin-promise":"^3.7.0","eslint-config-standard":"^11.0.0","eslint-plugin-standard":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.1.1_1524402179357_0.15185127255839448","host":"s3://npm-registry-packages"}},"4.1.2":{"name":"grant","version":"4.1.2","keywords":["oauth","oauth2","authentication","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.1.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"31b357ef9bc155594e460df3944e07ee3766e783","tarball":"https://registry.npmjs.org/grant/-/grant-4.1.2.tgz","fileCount":35,"integrity":"sha512-J+Cb0m8vDYU3tvcA47AbcD4KMioWeN6RDPxnPbcqpqAuHrn/J61YZZO4nx2B1qDQEhSahW3NwQCM1PZov4uMyw==","signatures":[{"sig":"MEUCIQDV23Y8X2ArWYCqlWj3WlZILPVlJEKNIrzg5Nl17sWvewIgb4Y21TfElrmm7tXlgublZOvMcyrg0ZZw6oPxOWMP01k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":185624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbTI5XCRA9TVsSAnZWagAAw7EQAICOm5XbwLBwF1xsb0Zk\nMwN6TuWiCdbdGRShiZjt1Vk/WD2t6o+Chc2GY4xs2yWc6w6X4aN2BaNjqWvi\nNNGYI8KWxHzBNJq3J2NLfhvPTGC+LDV1olFYc2gpu5p/a8qK3VYxgj6Zk6Fe\nfKf0W46uWH52lpcqohDCu+U4wW4dN1AqCCjzSBcSNmC0e7KylpZ9AG/mJ9X7\nHU7uBA8KDLLbL5yxYGIr+jOhGEcmTK43OcSqUkQWLkmHGJQGUQ3r1tM9agbf\nTNHRYmaC5V/WzV3YszRZTLgLXsCjJO/G6kIxidCRRZS2lpSruNJMKXy730oF\nvY+7rLquoUXWzdy2Ai0JwweOtJBH25ZaFEGhndRf0M3xCNOg7LHZCOY0DYu7\nMYJ92zLiLA7KkQ7em9iDUMN16AvGa2Aasy9NFjl2AHCYMFzd1ayHlbANMd+O\nO4XixAg0nZ1yQpVsmCHuL+ZNp0i7qc44JEooupeGScq9KKtE5q2JOIt2xJCx\n/a4o6jNYuFwOnKJGP8XYdbOgPhUAT31XZDiwoW5gcSmyGYCCOjdkKynwVlH/\naVD1QP9e6p7j8yULREnpH6vuuWg/CzfgqIYt1aghgao6f0fnKlXCqHPc2rZK\nTR+qS+yERCc3b0ThyEy6L1mTIFy+Gi1ot2DgQAtS/H5Z/svlxeTu9byEgtaK\nUDr3\r\n=x3Tb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","files":["build/config/","build/lib/","build/grant.js","build/index.js","build/package.json","config/","lib/","grant.js","index.js","CHANGELOG.md","LICENSE","README.md","package.json"],"engines":{"node":">=4.0.0"},"gitHead":"df6a65e217aaba8cca8bb6c822849b0c83c6a2be","scripts":{"lint":"eslint lib/ test/ examples/","test":"npm run lint && npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run copy:hapi && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","copy:hapi":"cp lib/consumer/hapi17.js build/lib/consumer/","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.2.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.5.1","deep-copy":"^1.4.2","request-oauth":"0.0.3","request-compose":"0.0.19"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.0","yar":"^8.1.2","hapi":"^16.6.3","mocha":"^5.2.0","eslint":"^4.19.1","koa-qs":"^2.0.0","express":"^4.16.3","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.0","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0","eslint-plugin-node":"^6.0.1","eslint-plugin-import":"^2.13.0","eslint-plugin-promise":"^3.8.0","eslint-config-standard":"^11.0.0","eslint-plugin-standard":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.1.2_1531743831747_0.6046743563985999","host":"s3://npm-registry-packages"}},"4.2.0":{"name":"grant","version":"4.2.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.2.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"fb8322847e596d1b2776d98445fb5aa7effc351e","tarball":"https://registry.npmjs.org/grant/-/grant-4.2.0.tgz","fileCount":35,"integrity":"sha512-t7ms+SEoACjeJV5coUq+3sKVk2YpoQfjbE6xLtfSbt8d3E12XrX6KX/pOzUKj8tNsnSJyefaNh7MCzoqrVkhbw==","signatures":[{"sig":"MEYCIQDfalx+FJlP/lDCW5/sJH/RwWW105HGY2Sr6POPsQIK0AIhAL7WC53cHl6DKIJnEOT+ZvkJN3A4HevXF+Qskbsi5RPg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":190678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5qJaCRA9TVsSAnZWagAAQhgP/j/cb9ozJdqIwC8+4Dq2\no2KiR4LNM/gG00x4Ruww0hwVkLRbsFELG9mYm2i/vM1b7lzQ2241cn3FaOJt\nZnY3qdRuhoJILFBVZ1ZL3gF+f8Gs8A+2dTscz5HBq4YtuKYQRmxEWlsVC5/l\n0vkNzEFdCC2PTlJXMSu2YC1jdXhZArAhMBn+HMRQzMCY4uxrCOSoIg6UvFwJ\nltEyYRpvraQQrXLxDU3x4rWWpRN0dwLHOeTLZi1f27Zbzg+fqXm/9Nq28tRE\nJxrcFrM+cbzdYvkHtdduEbhxLyOMw8/8VhJJloOthOuk5tYIoCNwj44VfQ8+\nZ5EuQTDazq/kR2dmxefiicCKOGm2aehB1M+NzEi/I+OElTp9AkmD/RAqAU0J\neazWzbnngTctBxEKHO+VTIAmEg9T4FGMhZkVhvh2ts1/onUrqTT9rvysGPYo\n8xliHsaQhU/USFwaH2MKXMTNGmyEtzqUiX6kpaIooiqBo/pCAgav8b2kL2jZ\nCjZRy4p+VIz1c0T1wytn93Oyiq8f9ZbjSDNfntbABjEPALTzC2eQWj5fPVth\n3PlbEzIFvchdMhkxEUY0ufILpGk0knNMoy7ERxM30eSLwhhFPj4lIQULKLzY\n/1McyZxHd1s31Y+AU4LV7r5KZFFggdIX4rHcHAkqa75kaH5jx4YW/2VS/hNz\nS7SU\r\n=P/2v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"e3c97a4e25a16dd3114d308547f79e2b397d87ba","scripts":{"test":"npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run copy:hapi && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","copy:hapi":"cp lib/consumer/hapi17.js build/lib/consumer/","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.4.1","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.5.2","request-oauth":"0.0.3","request-compose":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.2.0_1541841497689_0.37023654054935373","host":"s3://npm-registry-packages"}},"4.2.1":{"name":"grant","version":"4.2.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.2.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"7763de7b04ccc1624eb116923fb94d3866280430","tarball":"https://registry.npmjs.org/grant/-/grant-4.2.1.tgz","fileCount":35,"integrity":"sha512-Gf5J8Je8Rm6vTbsXcA5eOkR7+DnV3gG/NWRDyNHx70IYuYlHTb5nml43e9h6ocwLTnSzI1gOIluogPwbdiGNpQ==","signatures":[{"sig":"MEUCIQCB99VBcfJi31Ary0zx+P7gDk6ronmWZPxMfaI0pCm/cQIgZCXwvG0FpJNTJgerq1u3hlf2CBEOTWFygGCVoTdRbwA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":190844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/ThRCRA9TVsSAnZWagAA/ScQAJq9BjVRpU8p99lmfmlR\nccbphzTxrGcWS2lC9GVKJ0s/1K6gqDC8Ap4aoNUmu+Y1Bz92tIlFySfCn/6J\nKU/y+VUyBHdihim8AB+R55I8ACunPBa9eMt315alT+gJSOc802SRLnXu3tRf\nWccX0RSKfnRQpuasaIv3kWUEzu2R+kLYEeYQ+xemxeG6cp4AJjBqt4rRx94m\nMirG/A3aXsVyGw0HCjssfAcGj/RlMrvQMlB47q6auvBEpP2tCa9ODfL9uYVm\noJ0OqFwciu19iQp8Dj+ZjHTqbeAF4jNqgXaRQQRnGMg+Qbwaknlu3DC2CQDv\neEW+Zkq+wM8nrL5CTWGAHjQmWq7jSFQs1efg2oNIg62DKQqHR2T3PpggqvZN\nwr7JX7zTaX1MiyXsbSetNImyKYv72Z7GYzXkzwOZ/VcUzYAViklGzBbmo2jy\nLUXJ3C6hERSZEEVVDmx8efryud5ZeqJT+BUjN5tofWa35wGoeV6IR+qoV2Kb\nrLlBPx40TXWhvzJmrDlTKfzrLVCYcfZLNcrKmZyI6rBFtrNafBuc394dvkjq\nOMSuEQxczG8t+nOTg5vpm/Ihd9iTawhJM1sv3qWScj9d0f3SlsW+dBORRUtW\n2PtyWM5b8XT92Wi2zR4ZDBmMuc9ljHyTzfwo4bwcVTJtyjzNc6LDRwMv/Cuj\ncMx4\r\n=Xpe7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"073697bad9d219bd1d81846b13a6eca04f314f3a","scripts":{"test":"npm run test:ci","build":"rm -rf build/ && mkdir -p build && npm run copy:config && npm run build:consumer && npm run copy:koa && npm run copy:hapi && npm run build:flow && npm run build:utils && npm run build:test && npm run build:main && npm run copy:package","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","copy:koa":"cp lib/consumer/koa.js lib/consumer/koa2.js build/lib/consumer/","test:cov":"istanbul cover _mocha -- --recursive","copy:hapi":"cp lib/consumer/hapi17.js build/lib/consumer/","build:flow":"babel lib/flow --out-dir build/lib/flow","build:main":"babel *.js --out-dir build","build:test":"babel test --out-dir build/test","prepublish":"npm run build","build:utils":"babel lib/*.js --out-dir build","copy:config":"mkdir build/config && cp config/*.json build/config/","copy:package":"cp package.json build/","build:consumer":"babel lib/consumer --out-dir build/lib/consumer"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.4.1","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.2.1_1543321680694_0.2818601552549589","host":"s3://npm-registry-packages"}},"4.2.2":{"name":"grant","version":"4.2.2","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.2.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"6008576d1f814eccd71cd1a8d2f949d7c97f849a","tarball":"https://registry.npmjs.org/grant/-/grant-4.2.2.tgz","fileCount":35,"integrity":"sha512-iZtM0PFs+P9PPldXzkECJbSudFWQ6QT5yFG31+byASHFE5/gZRldO8ukWd1ftMZzbBbwT4+8duH8kKWXoiPahg==","signatures":[{"sig":"MEYCIQDoVqnwGr9Hr1E3OHfbAjKjPJllOkZhO20LRfNDBp+CigIhAPPDHmkBKIy9Mxpff5caYxeUYRBXtniET8QxTybE8ZX0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":190271,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCk9+CRA9TVsSAnZWagAALBQP/A1mIfI7yuscyybD4OrX\nRLpavFwmH25xzOgSnhuuZ37lZz0lVC44m3IdX45CnMy/ewZl15uPUHsT1TpC\n5BmZfyJ1rIwomD47bYFfskoiHbffDFuTCy2FlDDYWLIfQy/RTfiGNsEw1BGJ\nT3niIFAKx0ZisZXHtySG39AMsnp9yWB7aJKZMGgZecvgCVGTQmqndUefAwJT\nT703fN4JNTLp3iuR9ng2OVW/elJZ1aOl4lw0HjMtJFt7+Qw+UlciKZyvC6Lg\nIbcZC37BL/jbnREPWhCzigkis9Uqn9AcTQsXrlTi29ENhUhO9C5CHv7zS0YJ\nqDVuB3sT8DcW6N1Gd4PvJfMbcu2N4lPujx0+v3+QjwIw/OriUmprK+NisuCi\nPUqOoRMpr63njK64/6uWIwtn0alRZASSFS7+mURdhV+7ZUil+bh+NTJVlHPQ\ng6qAz/s2sV2QXde6ZGO2N7xlW1f/7PJfaDQSnekNRkBa63c96jms+u1mYEii\nVe40Mul5pPkQCQGt6Db3ys0UPAQwbSJDyN8AkbkdRWU8IrQPbsnKzVSaD1p3\nDPj+j6Seefxvk1kJQzRolH7E3MQbyZBGfP/2rRnN+F9qiyJUXeNCWllb+zaF\nTfSxh3TVCjz4Au3x9e3QVDd+OYot9vzpT/6QaDqPcXtc5PNyFAAMai7S/crG\nuqB7\r\n=DAxY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"27de1345bab88c3e2a03875b8d50f0deb7a9da97","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.4.1","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.2.2_1544179581396_0.5342553246715496","host":"s3://npm-registry-packages"}},"4.3.0":{"name":"grant","version":"4.3.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.3.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"0e5f0e771a0bf191e4ae9fb5c3db541f9e503a1b","tarball":"https://registry.npmjs.org/grant/-/grant-4.3.0.tgz","fileCount":35,"integrity":"sha512-ZhOzvkVmLXV4x6A+NjE0T9y4lv/nrjBiCapbyWry12cZ81kNuMjkoSsVB9FG75fudrP/0vmazesKDEl2aCWh+w==","signatures":[{"sig":"MEQCIBE9VXN9zdSuVuYitaazXrVwjXuI5fXwUY3y6TH3FLt8AiBsRuuCIKGuSwRBrsn2WOcfXoenGK8z+sCCEIX99jNkng==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192037,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLO5NCRA9TVsSAnZWagAAkLMP/jkKmThgjsDQMca6yraH\noLCr25NaunsbuxgNPBUYM3SJxiNv/l0tRz4FQpUqhqx37qfjQ5V2Zx//63I9\nPRIS561NjwdsanTsj+KGGdHShsqZklVS87HXyLa0rnmGIs1DOticKgUwaYe9\nQgKnDGqFDNOO1MWRJwf44EWIdQy+Yo00UE3EvqRCVUB/qrMKQ9G9rwi6vRv9\nMvs+bqeUV/8+lIx/s3o43N+2BoTw4utsK8TjeXnoGX74EqwBmxERSAGOuMKG\nhmnGM9+n3B6vnigXJu9nPyTKhrI8TsXgCiK8g+STiuPKez3idcBXqLpL9vlF\nSJncFIfKgEZxD6F/xR70vwpeSWJB21LsWwrIuR2t8J/IL3Eq7bAlw0vhJKce\ny8uJzqRHSHMWoDtMEHcB9+E1ufmdNeiSYKlC84fOmuh5fqb4D47Gkmg+wOce\n9JZfEf/vtuxuwFAsC1JgX2WvqT58ZZWkXcbv0EPjPDiO/Y+wVKZklvxS4DR7\nPYvD/Yf38IWlWZGTrCFftn623am/zKmVvMyOOt1X6oLEnmnBP8ceODlk4DA4\n1Zaz3rmuQi+7Z35fJk0Y6BppJk2FHfmjPX7B3MdQSkRafElQJtalT0keada4\nObYPxwj4d7J3ts7BvQ4WH9mJlR821DIqSaO1auuvomOcIdKfE4vKccDssdgt\nNX+D\r\n=Fo4k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"db007aee65d1cb68e5816e8cbefcbd9b631c25a1","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.5.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.0","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.3.0_1546448460962_0.4269997288711447","host":"s3://npm-registry-packages"}},"4.3.1":{"name":"grant","version":"4.3.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.3.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"56957307ec7d46962d6a7ff02eab80af5874df3f","tarball":"https://registry.npmjs.org/grant/-/grant-4.3.1.tgz","fileCount":35,"integrity":"sha512-P3oiVx3cFdBKuchMYBWald/YHGmrpYL8R7LarzYpGO7PBNqG61vFuEfG432hv8tusbvi+KUyONK5OyVPDBWDgg==","signatures":[{"sig":"MEQCIDxQAb7kpXG9frGZMwXXK4oTsykoj1tWB/uO5QiG90YjAiA1KrR9FrTObZd9XCT1GhelqkYVOMr2S4YmSmrndDSYtQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192118,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcMibyCRA9TVsSAnZWagAAia8P/2RASUOBEoJ6DDWIYWQw\nAD53LbxGjU35WDANJF4Vvz67pstUB5bYSG/nNdV/+RDRA3uBNtEGUH0/doDL\nQc69B1rS9seonzqY5ygiq/eJIEfHyaTQ8FREebt4x0Of1q/1kX7o/+MN/DdH\n1KQP6si0w486n5407kV4ZbO6TATqH/lk6as/1zIX93h7vmq2LqPTz0zhkOPo\n78WS42VS1jhQLXxqliKZnMSFtXbZ3H72FbAnpTRjDkDTgEyEhCS6pJytrUAd\nohOLURj2c6vRfUNGB4thr8d93P8RhVK83Lbujb/O7dwy364wgnAJHph4OWhe\nH8VaIO2V4a/k8nfXMUuaNtu11vi6bDwB/aMQxpLRnmy1qBnIMiZkDP+8kl8O\n7Kf6JGfrDNvXir300WTyJ9IjVpntQH23u7Cg7OmtZqlU+gSHdScsrKr/QxqV\nkEfcKgzBmYobRtn14cCExyFmeRRsgqTJN4RjLXsgoVb7MEBDceGqJ+BaXkuQ\n64ZEd54uUgYVTtRu+Fz/HIX54KNM+nWq5jXEvprHu2aqgUgvTRJdU0BDQdlR\n0FldxLkGyjtpyfsalVk0TIAA0Okj9Lt89KYKVfEfySXWfNibLwwfnmofefJJ\nTEc/aA7jsZC1/f8rbROlPFeKBECMuE+TxzmawFLubw17wgYVYg9jTEofFVCf\nUDyL\r\n=FVI7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"e87666c9fe3f758da72836a819a0043c75017c69","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.5.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.3.1_1546790641047_0.13478636075431982","host":"s3://npm-registry-packages"}},"4.4.0":{"name":"grant","version":"4.4.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.4.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"18f4471509846dd89f8d2b2b058a4b23ff7c4bb1","tarball":"https://registry.npmjs.org/grant/-/grant-4.4.0.tgz","fileCount":35,"integrity":"sha512-yPXgVgY/CD3RpPtsiUedHtT2LrL4LxZrmuC1fwiFQuBbNpDUL45cneZwYD3zqTV515+8lq7NvGmxIdXDCwd6+g==","signatures":[{"sig":"MEUCIAFlSH9w/T39oDCTGWhzMPRF91sXTElRfvlfJ29x/pDjAiEAjObtCvqrQA2tGKspPClGDPUlJNFELP8CxnpfFha1l88=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195319,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcOJ2iCRA9TVsSAnZWagAAzSkQAKJCk7d3LaCdaYuVX5gJ\nwjg6rC0htZn/SiooAPCiBhpZVORDJ4ahel1WS3nfstH5z+TbzxzO06pMsEIz\nTLKcp7rlrhdPCbhpkyLuRjJFec2YKABfnpzkZg7PwTdY14/mOI3JjbN4XIV0\neeVIvmvj7gcCdG/b0xBcaKTERRctaCJG3v14Gq9xyDunfkP1tUsbsSV01jHU\n2xXB9NsfTnce+8fv7LRAWNzEMD3BX5n1U78TV1jMS0Y4NXOOjsh35ZWSS76f\nlWp3WJIZySDZbJ8Yhw/RRtSWyfBohEJUTO9jZJXBpbvO2SeK0mJ3FIDOP/7B\nx7010JSWMG95OdgMWRSXlb2qVwq9CVoNsdGzDCMW6xBOTrt6iEfic32n2cIp\nT7HhhdofGOvjv66pOhMOUn/POKyiaTLhqoeN7n4gu5dRnCizJM8cWOv4+sWP\ng3dUwFv4hGfOQZvNnFIGweJE5yfPHD3nfg3P4kv1rXsmND3wLdfVA3QqjwMR\n9UwvpTExJ7F5Av9HA5cUaVrme9D7sKEEMJQEoJRTl9u1ecudjxhRSsEcqe4F\nMd/efbWJNDJaJSQ5pdKm0Q8ZPqKgbheDhAD9n3mudUW/kkQczCwgkoweK77R\njqocertwgcW5wnLW66EnTPL2axqhrJ+KM6//rKoBrkF41BRSCoNOQLZcPnqW\nK0hP\r\n=lxeI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"7f89ea99465e6a4a5c79cbad72dbaf4b579b13da","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.5.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.4.0_1547214240873_0.6894360905956705","host":"s3://npm-registry-packages"}},"4.4.1":{"name":"grant","version":"4.4.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.4.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"6ea56d820f568be052cf999754dafa39746817d5","tarball":"https://registry.npmjs.org/grant/-/grant-4.4.1.tgz","fileCount":35,"integrity":"sha512-O+S2oRvhVxG+UiADsgQWNRVqf/+DsEONlQ9Y8To/D/NIBJXPOUwVbopl/u/9v7hk/Z6zg3pE7c/PrLLNtgYt3w==","signatures":[{"sig":"MEQCIF1pqwezZDwJwg2/9M9Hm67oYsdYL5Bt85qsZsMOQ7P+AiAxMPE0YJg6+ITWNlBPLcRbcN91wUaAx0Zg75P4CxMaFA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSttLCRA9TVsSAnZWagAANIYP/0REuDQpAuB9gmv7N0bX\nCYw3+yAxADki3W0hdcPEatI4f7ZWmt2x51dya3DHjMTG8dR+6T7yMAixQAW7\nZBJNI3l8w4QF0TrTeyxhQ3BQ2Vut3EGxij5gMOLEwnmdfW0oiJH/VJx9SNTY\n2k8NgSUY2oiPQB1BSXba+PbCuIodcZ8xlVlu+PjTzBrYnZYkti7yzV5mEO7J\nZuiEu18lGd9rt3/RWWWbS+K1ce00em4psnP9rP3Bzf4XlyOMa6aEOG+MShPB\nEXVdhHSd3Y2ZbP8i3CCHRF6aljM8orcoEjtgHfzq1HE0TELDuC4U0wnUKw/h\nCRMAVH/fnzhSXvCqiZ4yhgcoBWjdvou5JaDoyJZ3aFTjh3i8EdkbLMoWf5iV\nav9LbrQMnOSDcwT1KEMxZuHr7vhdetxd0nwYuHbZOcSm3GdObncKp8ZkyfWH\n7/jXCLyWr0NmITeYSpYr51QdjD3nmCwTnRrJgkZxvWVZQl+TT+VpklyvDhiQ\nLbbceGbtW+ty36yIGApAyVO/T3A377p350mAOrApepX/64zGaSrdzgkZXyul\nC9GH6mGEk/VBZIcjJLfLEnD1z6IKh7a44/3RSGA3F0MVUMZ3ge5BJRyURfl9\noB4iql93ADS6eUl6UwjLfd8j07aZUXWBUfYHt65Dk0/TTCYjCIJXumSyi+nK\nUZmT\r\n=IcFA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"8c9eed4c7d5621f67e0ecbdcf9137f52a023c957","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.6.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.11.2","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.4.1_1548409674263_0.24944955219744003","host":"s3://npm-registry-packages"}},"4.5.0":{"name":"grant","version":"4.5.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.5.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"538ed3190b1801b427518536e2ea9df74af07f2e","tarball":"https://registry.npmjs.org/grant/-/grant-4.5.0.tgz","fileCount":35,"integrity":"sha512-9U/in5KdPzssMo+9aMgrnmyUvn63IEvbeqlTk0+yBM+/dUJW7HpNZ80WS4x6j8sKIcL+E+JvSMi7c9GIBNZi3Q==","signatures":[{"sig":"MEUCIFvBiLeOfBUY4grZ/ZeI3/EuukQv5HMFx6wS83VQP7PUAiEAmRusZElWXH51Ek+Tf0vkDd+DYr6pZan5UYKF1vjl8L4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":198284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcfGPxCRA9TVsSAnZWagAAZOoP/jQRtXMAmfl0VLzXI54T\nTXWB4HkOrt19nXQ+zuy34NpuPa+0eztyoL14o0xevO922vn9MgndWcqvYfMe\nf21KhLvwF9sJQpSZWhr8Kv0FUcSz7h0xVCFCUL3kqcXpa+v9Vactgw7HSeCc\nEn25WWigu69kQ0ukLVtQ/SHoWcXWHRbMI90HLu3pJz2/OsNXGxz/cP9azyES\njmGfRO+1pe2F4CdZAMZcdQzfLBWoF8nZGeOiHjyZJGcr2VLcHc8fw0X3FR3T\n/EBRHRhmgT9LjYsPFmMgNdKRA+lXsZxknWHpbhiAnVlZWa6Phwk9BCm2/Wou\nmCqsTpYZO/CW7cnNgNi46OlPlUVgIBMbBOB25R+kA7m2fczT42RJB3DHFWGc\n6hrR4ZlwMBjj9nuBCdU8HBzwz48q3nt4IjboDyIPu4IqmTlleTjXhtg+ACbj\n1546lUO5iXRBIfPaxAo09bs7TieR8G0biVZUa2l45Qnxu8auD/Y3zTdiv37C\nGVbvaKwAFPeZRIVvy/yp0L0rvDGnKwk0Ygzje3PAGEkbNLlTu7JewoFodcQ/\n2lncJHCZOqwfgQMMl2/XmznsRmd85EUYsg0sC4Zjj2HyVaBpUgpSP7rRXGvD\n+fwDyRQ6jPxbiLtngCwWWpGx/DTRIDW6CQzmu70lVkLXN/p+1j6QggNu6+Qt\ngsWi\r\n=24zc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"fcc26e99d7b123d96cfa3d5afb4160f5b22a7f2b","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.8.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.6.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.2","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.5.0_1551655920578_0.6603396170934785","host":"s3://npm-registry-packages"}},"4.5.1":{"name":"grant","version":"4.5.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.5.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"cc8cb513c69a2ec8d10d69416fee7df29177596a","tarball":"https://registry.npmjs.org/grant/-/grant-4.5.1.tgz","fileCount":33,"integrity":"sha512-AIjpz48Lg5upsfiXTK8dWlw/+uuRjCF4710LjbC/xEKTNIBotk5PUc5Z/PwgndbbIt738lrnbliRetO4dKltpw==","signatures":[{"sig":"MEUCIQD5O3+d9eJouiVLQEohKgiZtQy1vBo2EHYeelT1OxLoIAIgacrxOCq/oTL9vV2Ls2Jzcfq/JJgOZRJ15Al1umE8T4I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":197425,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcqhW0CRA9TVsSAnZWagAA6z8P/0DeN0ejb5mwJds3wc1t\n7LqYv1hAZ0rTGKDklMXqK2roIJtdk3jYo/h8NYIghtI9YjQ3TdqEkLqHfigi\nrHX9CWF3eHcIxhtw/dGx1lv/qNBrw9rxDDXDpJU3And3ghLi5htnO6FzsrLX\nyFtRSSp3Ni/ZsP/AOkU/aeI7My3G5fDyLWS0tMzOrjCrVIwaUe/BxqqkTTbv\ninGoavFVf5TEe0I8KRI4H1KsjgW++VJLcQV2a8Q8lid9wAwxYEqlDj/MMgYM\nPgkWm0MiUEsYmlyza0Xd065OrqK0KC6b5+TQT2eZHZGanlxyKopwVPRYXIY7\nzw51sUl7IgSPaB8e1Tmu7rrBOyam2XnpvsjtNtww8MMO0xfU4gRdCzusDrwL\n3Pawe7j3/w9jUsBIZ0yIpcL62lIVV7RukdFut3sjOCziXv/M4NagD+O9EbBG\nHgg8Z/E6EQtcCJmYQ8FNL4AxPtJgWAl7a5mnSfnuomPcMR8jae8kL32hEQ+Q\nn3gUHeO7t5wd9p26xqCrBQPVntjeKPElXsGUZntjWr1m1yt9HSpm9oPXCahT\ngos4tas9gQ7nEuuyLoPuwpGl/5ZHeYRdQc+P0nndglfif3/fgk6IAeKwQViW\nW5bKWS5VJBgk1mTiGFuSWxw29cYGWVQNpSw9X7UCv6+Aphqt5nQpI3o7Oc9g\nCCUk\r\n=twNi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"d44968eeb232f2c7d9a7803f9997e44e020ab3ee","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.9.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.3","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.5.1_1554650547606_0.5028348110147631","host":"s3://npm-registry-packages"}},"4.5.2":{"name":"grant","version":"4.5.2","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.5.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"5401f119e6f119772386e5fb2e0eccf5d0d2c8b7","tarball":"https://registry.npmjs.org/grant/-/grant-4.5.2.tgz","fileCount":33,"integrity":"sha512-96hyS0ouJ5CaO30YWLb9zatc2r23aLKvaM+81qnZWCpmL3l4/KTdaRoNG4X/e93vlmryyJr5jus/jrqctT6iFw==","signatures":[{"sig":"MEUCIQDEIF3oGNDjCYJVyTn9olwQRhw86Y7wPH4vxSQbGkoPbQIgCi6Weg+D9dIaQd80z4eQeYxks3ff+qVR3PlzAvLupGo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":197700,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc4TOCCRA9TVsSAnZWagAAfpsP/iEaA/raSRux+5QkWh3p\nrssVcvY4ls+L5p1VC/7vRJMMCgSLlbsNhItJSXxKQQm7H8BbjR4MuAqURcc+\n3ea8Gi6PaYXkQt4Ao6R1Xa1CoM/+GUcZUJavXB840MBNCNJXtXOJVWCWzzQF\nalu2YKaFrVowS0QUa8j9osfHJnx+bY5jc4C5bEVfxuNalJHiO++gr2cyGnlg\n39c0WLDuFOvABNkQ6T1ItYgnSqvBFx9l2e8NtLfDVEW6fyIpqix2F8VX5Mfe\nBF7a+e3CtTSv9SaoTmSxIYPQTqUSh2mxwHc3/MW6hwmf/gcsnYeBFgIH2e5u\nGsdqwVSM+gdVgT8t+kjo1xM70pQY6r6HUi5/DoKSouu9M96rYfkapPT6i0Oz\nhyr4X7o2o4+BQTKkVBkCIIhibwGtflSiV2Zadh9J1LK38VyVTMh7VdTKOTK7\nFI2smJdpZ8a421HWxqMknYy5mr/ib+W4mZYEhCkZw/ESsMfKmXiyfrizilbR\nZ/pMM3sg5sRwDl/kdSZBXknxY0miwoHKPnV/gmTFJeY5Q5y2zR85nbKsjf0K\nzO5WeVl6yilBf5HOnXf3f7VXn0x7PK0y/q5ex7CbYwys/IwE5XJ+mGovu/xs\nG+WxwmQr0y2lkreey8I5tkUefnr4iQG90Svoj2hLLMPZxz5g1yTTYqQsUUra\n/KKs\r\n=sfCj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"37126d7b07c806fb870f772776b8eeb9ddcd4f2a","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.9.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.3","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.5.2_1558262657170_0.37434114411435737","host":"s3://npm-registry-packages"}},"4.6.0":{"name":"grant","version":"4.6.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"2704bdeb27f6f3cae03b2fbf6eecf1415bc77bc5","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.0.tgz","fileCount":33,"integrity":"sha512-jAhKZssj5EMtC2XQSfUq/+wU0mbYYsUFWHb9cdV4XPdS6IINmEMIwI68Wj9MpLJTrUQJ48CzqfGpo4Mve11RvQ==","signatures":[{"sig":"MEQCIEkqhDqBym6gld/4q9BZOU+MUbzWRGLwVmWZBr6Zsp9SAiAOV+JEXzJFBBcaf6KPfs7XDfiSYRKgwM4f0MH+1m2YAA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":198106,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdD7+cCRA9TVsSAnZWagAAbk4P/3dUKWqJJvR/cAM8aVUP\n48kv/5MbIH/n+zYh18vOz0p5eR+zzpC7hmHTI1soKJDZy+L1xQW/CPc3L2a0\nYLZhYx0mI58NBz/rUXdqBqg0+IgRJXVHb0WUIvqO/18iN9vcdbcpKUZbhdu2\nadNIzXOKSXcXOJL46X0XGBZ7x8/31DiD9FvbnlPm2BF/fvS8xGVj6Z+AHUJO\no2visD7JjMgAH2l378sO3zm1J8Z03MKzDIlYEcr7HMrMmEaR7nV90Q7sjmWT\nYBfb64s+qI11lP5iS14RLHfeU6vgSzz3pxcNQfIdxdLTbFXyfWmzOziW/oOW\nneG5kW2gmlNm9pVT9TavDPEku5S2VoXFVIQt68UU74fwB55oLnLmB2JEJXEo\n6mUQHZzrxPswTKh5D3EcaP3sfTwuhvoTbpxe6l0Dqd3rZSaf3SyA+zE4Wx0g\niZ8ePVgK5mwv0VSNwqHFtwmp9sWo16vzmQZf33qVQtMz9T15RmFBkGBgUrf6\n8iPMJ2hRXlzPkKaFCIUjGvpKX+D8NW7yWR3erlq0y150beVKenDQn3vYx+7g\nzjN+yt3hxHLHeNKKzC/J5WGQ6o5YvKWY8+WzSpPqbUsbz8XzDRyUdeh+9Dvg\nW2Vn8Foimmfv4lZdcsHW46NpyVAkxF+jV77jgsfFeqTYhWMWir2FCE6ZSVeG\nxxpe\r\n=BkX8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"0c0c01d6efd6c954896b3876cdbc79214c24fd62","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.9.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.16.4","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.3","koa-mount":"^1.3.1","body-parser":"^1.18.3","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.15.6","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.0_1561313179894_0.5931030160675523","host":"s3://npm-registry-packages"}},"4.6.1":{"name":"grant","version":"4.6.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"07c23ab35b57451318eb0e0d9e55b7b0b260e169","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.1.tgz","fileCount":33,"integrity":"sha512-21ZsJ+z/CAag9JsciF8yfhqLtHImIv8wf5ii1E6e9uyEG/Qu9wIuWFljj9EFQkgQRjWSJQLERTq5EIkgnXtTow==","signatures":[{"sig":"MEUCIQDZ9ZKh4EpRWibiVD6Vpq8HtOg922njykge/sy15xUOSQIgMnfvkNK76iz5KRztH4Tn2QSHITDSeUZW0gqgJttYHt0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":198310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdIHKLCRA9TVsSAnZWagAAghIP/A4JdKp0GPT231l/ayax\n0D/04NAFoIZlm+5GtQqXUVTdfd1YRSAXQx0/YFF6Vwyq446y5G5Vac5zKiOm\n7EJr/aSUUua8xWlGmsyePCYrMemEzlLubYzNS8OamWctDBORxH6F5KXpmsYj\noC+aobLmYcrTH8T8jg884Qp47d1EXAp/hQTASfCB1IFYow4laMcsYvR47GhW\nHDTI2N7USAQ53nTcBpU8PZ7luqHVCy/URxHGPkcb2BoGxK5IvQ96Qrq8Pwzz\n0GR10aHLGQebpzvHVptoYrCvZroYoJHMzQs7eUuqC5Yrgblpy4Oh1/4uKdwT\nw1kHZvmPqPGhBuU0TRyA+FgOF+MbaUCnrew1ba1M7CldBbti924ulax8X4/f\nhJVyj1E4StrDrdqh7R4CS0mrsj+XUm5OiUAqAQiUZR4tElWOeKLemqS9LHlx\nO1ykfNRSkkESxQ4jg9l75BeNj09jK017pN5A/d54bRC0ka5vTcC6WKZaglpp\nJ8mEJuRG0q0D0ssjkbMyOqoICC+Fnl13OX+lRplRLZX+tYlPy2vpaUjnM+OU\niOAiuQgH0SH6CxINp9sm6ZNwpesmcQgDf5lTyDhbKOkTzoicJOLfqg3/eMGm\n5ob/oBCQ372YwOJTeqd4QrL5hAMmf6c/KZ6WLQNJ8XceEu3TzLT/WU+ev0Xw\n0U6M\r\n=ryYv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"375ea0ba5f29cb845fb05647196b08a810342fb9","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.10.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.4","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.16.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.1_1562407562766_0.7932923739924946","host":"s3://npm-registry-packages"}},"4.6.2":{"name":"grant","version":"4.6.2","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"8d0ef5381d5a07f2e9e68250300e7074d0648af4","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.2.tgz","fileCount":33,"integrity":"sha512-FON7qtoJSQ2OnINZyysezozqGthaPuVXjzmMpaXQcQXKSjuzouYK4I6FJhvU/QAZIhkWkgyRsk8ZhRu63Z2Rjw==","signatures":[{"sig":"MEYCIQDnjjhaC8cFJO8xqR5HQSHdsSb2co3UcT3XNDWHHZTCfwIhAOk9wIEhtinj0wCkKqREzOMp/JcgZbSn3N6tVmmuBkL1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":199614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdPp5UCRA9TVsSAnZWagAAIWcQAJktrc5VgCFzV+k80+c2\neFwWgw9C9QOxNuCN7QfiSI96xL+s9GpJXorSgzE5UgIX1XlM6KBobAjAMNPn\nmKUxky5cPWdu9nfpAAyOP5/qaYYIV6JIw1Jut5P7hv5TSvScP6EKXNvF7UtD\nN+9Z/giDDeWzg2Km/p7AbTMpOeho2ySQl6Mx81L/L+HMuC2nuv5kQm1/Tq0e\nKXmQQQ4+3N0inCXWajNYthIKcrsjU3eX7GjPXWbSFH48uAKJHj7uRra27Hjf\nfdqtDeSmsndHpfcFLWKYtmxUizdtHbgk5+OYOb6Z2AdvcVDxFBA6TahAbOjt\nmVBNedTzXvt5cPoir53nHGlmox1ZYN4+ygMWsRe9Tj15f6JQqx1r9afxThOX\n/z2TTdxK/CRg8vk0i5KOfF8GevP5SR29FFeosuBkfimsBOttuMx0yQX5OBWI\npkkXanWZQT3Q8u1HYfOtPVxAfVm0LgcrFyGrKBfgnlpPtPb6ZxGRJwBPnT42\n78m66yzjMOIZ/DzQMO0gJH30imp4w2pxNN4oU2d06TCVlpitvgPSBn3usTuH\n/Ot3VNmk5l71JbtN0THxJwMG0UaWJtj6KkvUMnshWmo4NxMJ4mMDw027SF0L\nA7pGR5zJik7MEw4aeLT+GSIbEtr14cHolEAVHyR7qo2oX76sct3jAZNWhTg1\nl3g5\r\n=/+Ey\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"1e4ad777391c70e3248dad9b9d5f755bf72949c3","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.10.2","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.4","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.16.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.2_1564384851781_0.3603957238087905","host":"s3://npm-registry-packages"}},"4.6.3":{"name":"grant","version":"4.6.3","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"d0666c0adb0d1fefb97c5ea1d788a898daefd208","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.3.tgz","fileCount":33,"integrity":"sha512-Qz3gSDFYUmH05HAhcyLpHVE4XqeHR77t8YqqHmhG6UG8WYertli4W2tgnNWhRtOBWLxT/RRJFWsfDht7sesmaA==","signatures":[{"sig":"MEQCIGUs3QGz0SN0xvQ7tEHPj0APPm65ncr2Znfa4J7ZzZMVAiAP20nVvmQpQv+qtHKJR+jV6/mUqcrmnK6GveZIylgHnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":198851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdc+p+CRA9TVsSAnZWagAA9CQP/1GMX6VkIJ29b4ezpFWs\n5lewgd6aNMHsib4WQql4YxvVIl2RkR3oMu+Dvmq0od+fOxbjDgb7Pn32qiHl\ndZ9ZNO3O+1kkt2QwoPZJEsgEUUh+2NRnJRu79YBGY+xgp9YT2lEOc7IJX+8h\nwZSn3hZ5YaURpE57+74G4fj0Z74mychL8nuDCrZ7FGvTFqjun7kGjREGVI2I\nvdh5ygk0eH6VGefi2nBK28Hebdwfuya8t/Uwvx4/lYCfWcnmFaoM1mdtRra8\nmkgxQLNt4h7LhkbFTbJkYasvXMzoKdUZHaiEqd6Qct1L8rux5oiprv0V/hd7\nlISHdOzWU/iWS2Ba4D7zvft3vqcJiSAJFGzGwdPFb1LEAvxJOzBA3n85ml2P\nD6hoG8IjRTSv20J6ogESkCK12Gl3vO/oBweaoGOSNledX59WO7vnvkVUwpzF\nzzq3+gBiti+uZQYtZVIStuzwUeRxb75A9s/J6hTqHRTB7ipVnCbab2uWSotz\nKGoNddPrmjvyFGG+WvvwOUuEPediJvzyAYJyDuUxXuOsa+EBvPBtUQqyg75d\nfgHPVUsxSTW2LjnePUy0wBuj6VHWmPYSVZETVy3s+VrcdCbcyx3Qq5d7R8K5\n6TUEomK+P23in21z8TpfG76TO4y0hFMZ9AyS+WYmpnD0kQla/ozk3JkikGQ/\nF7cc\r\n=48g2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"f2b07539f586cbab58c298d72ca2cd2cec17c7ba","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.10.2","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.15.0","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.4","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.16.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.3_1567877758006_0.32062006159976497","host":"s3://npm-registry-packages"}},"4.6.4":{"name":"grant","version":"4.6.4","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.4","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"16a4b60ffdae9644f31fc0f2a293b6188156e3b1","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.4.tgz","fileCount":33,"integrity":"sha512-LN7Af3+mTdxNLjewAKjHtYjhBv+c3L/S1/l/R1T4rvXxU//geX/sfcl+AykdjAKJiq9XT43uJoySqCIJwLYIlg==","signatures":[{"sig":"MEYCIQCza9HCg3dCHtDkggJaPeaGGhXXmBTs0DhZLz+ipwJVsAIhAOslIoyK+Lsb/7oM8DqxYq9hh6ZetiKrY0HkVCodlJaS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":199731,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdtZjQCRA9TVsSAnZWagAAqlsP/AubqB+FWSCuMP8SSGYV\nbH/eKZbMpXMJ8A8hJzd8taK0qzbiTANnc7obom8837mRvxDDSxX4fph1WnvB\n36b1jye0ampdyJ5/W7+5cyPx5xAyrHoicXBxqLKMWjmT0uU/F1xpMm81HBwW\nfsuGFOo0XfZhn9gc47MF+xc+mdF11cNSkSx5F8imRL4wFSIGjpOS5ro17iFq\n8rKmBreZb2chLziNX+rRhuBj6qQUhoKHqjFfP08lpgV7D3lI6DrK5E022r2P\nebnut4W/JUp1xxK2veKvHXlLQEmZxHSC22bspe5bBwLPYpeiTL3eOtfZ0Sy/\nkeYNGxoZPLQhd3+/DW1/0OZcPNDKOlJ41uGPpbpTts0e7BZP3JP/ZFYDRCPg\nl0cTqzoQLAgwWYchwx5Le7JUkGO5HuopdSXvQM9Z9RdxYQIWtdrwgoPisOm9\nQqjs2QA5/BauYfWFMNl1Dh62A3kvMJ8yZrjFRgNMPRCs7Ooi3LVorGgl8WAV\nM6JQNy9v0wcLPROBvQAu4LDfxLp3XT/onDG1dkPglV7QhsjF4Gnee4i/3uJH\n/0md8tYzxrZyp5S2xKpAt+6luy8ZQa68ViZlbMTIWnxYPcWm+kYkjATz/M/c\ndptBxv5KEs4BHr9F7li0XNDHEooPzmM2K6w6DLMR8qNdqFq+KZkQ4FJeeBho\nktbY\r\n=K9Bj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"4b3887eb41f07cad16877e353a54917d3ebddd8f","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.12.0","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.16.2","dependencies":{"qs":"^6.7.0","request-oauth":"0.0.3","request-compose":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.6.2","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.4","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"0.0.5","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.16.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.4_1572182223673_0.8011271264196056","host":"s3://npm-registry-packages"}},"4.6.5":{"name":"grant","version":"4.6.5","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.5","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"ffd05122df830a1ae7ff2eebbbfc85c5e1c100e8","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.5.tgz","fileCount":33,"integrity":"sha512-gxMaIw6MRI/HaPxuV04NTOCZTFtPRCjpZIAQH3NqCnOHUHXenor+IOTYqjmeSQzcH0KJ0rv3PQp9Q3Cj18n8jw==","signatures":[{"sig":"MEQCIEuseWyc4cdIWPfHza3gBGilVJRxhkXQxXqfTPes910wAiBSc9XlsX8R2sDukuZzefuOs8BRx5fPhGQvsMVMWnSPsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":200709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd66x4CRA9TVsSAnZWagAAQjMP/ihfF3zOj4noN9+C8zim\n3Ds6wM+4f1jAMlJ592w3c4JPRnjY77EGEJaJlyEWdqiZ5mbs2Ot4lzEuCXgq\n6DbRjLaFvM/kDE4UCPN5BI/ICU7VGKDH7sry8BgK3/QCIvfgqwduzjB7wjiE\nK1IZsvnd+iAuqwLEHVo6rrcY+45az4E66CqY1zPyZm4sEwjtHwdULw++Phkf\nLQn2zBknpcfgKz9LNP6RTuENpWWlGm0nx5n1LJ7YHojTpJdk40LVjnWpBGwR\n34GySwehc7p5Ut4HNpLo+Ov+aPom3okoP0Go/rUvZeSyXzaYEkeHwF3dgtxy\n3T2K8W/3mHC+fbo7FO4p/fuWSd/FhjLMIDECEA0G/hIR5NDMYrI2YZGH4MuN\n9/Ahby5PP2uNkzgEzhWsntkOOp77PCIXoTzjC2WgzWbTm7gXasEdBsAo2Apd\nzqI7gTgl+AqhpijivKKKniGfaldzx/yEzq/57IaAyuMmuxf4Dj6Wl9edIJs7\nyUdUPgcFjsmiazVXvtvlwrKPblq6h5QlypBoIjzvl5DY4v2V2Cy6ujL9E3+M\nj99fLuQ8wrhlX3oJv4qn0MzINPtcaQ4eCX+oL520UuGMemQn5EHqhqvu4eCD\nFiUHnpVM6UVw88+ozMB0M8Rwdwt5ixGqK4h9EaqGUzZHSyunPMTK7SUQsMQp\nG16U\r\n=vcfI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"25e09e56c46b9b8d0f36548e036cc25e2fa7bd1f","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.13.1","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.16.2","dependencies":{"qs":"^6.9.1","request-oauth":"0.0.3","request-compose":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.7.0","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.9","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"^1.0.3","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.17.0","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.5_1575726199390_0.8229325929573084","host":"s3://npm-registry-packages"}},"4.6.6":{"name":"grant","version":"4.6.6","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.6.6","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"da58aa4d99c0515cfd7466d4a1f1e3ac37cad09a","tarball":"https://registry.npmjs.org/grant/-/grant-4.6.6.tgz","fileCount":37,"integrity":"sha512-YpylEOxM0ElPm+HCNEFLvqSA0xL8zo1dOllU0xutAAYbpYxMM4ZDgujYTmWEIIf1z9xn2zWavBgHRpYBtFa+Pw==","signatures":[{"sig":"MEQCIF4m5QEQt87s0a+WA84pfkh05Ch+B0rFodL9Hmnmx580AiAz8K5Zj36HWWHRh0q3lMF34KY6XMMbeFQozw+3rjD8wg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":199394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeDJxKCRA9TVsSAnZWagAAl9gP/0nxk5suOgZ6RXiCiG/4\np8qIhtQDVA+7Q+yk7Fy/ZQ+q8KCfkauAdeP9d9XH3efuMacRcMrAuemYq5QY\nIMVom6sekn6ZygRSMXDOEG47CYXjr5Qyws2ThP18kt/z6+HOWIBYlsGovuNp\nKWZv0TMLutlsih1Yaiz97d/ZUQsdKrquaQV7gh/BWvhAmbqTHfk0TocIv/Be\nDHO7FmfzVfTImPdWY1g9wuX+91fCKuZJCMBHL7KvqCbhXBhyRm4ptuJFFADI\npGux1SHtpcaMwxnlIIWCaKWAg2SxNAErvVffZOf3JPacogscFKXEcoO6pPKe\nBMqrNKoVt1jYwqKrL5WclbEb+Q/YvDEU4AJIvYb7nmPXVEm3v78XiwwOr9b/\n0BjWLfDDrG/K6ukgKZ0idJ20mJecejKY+y4onYcOrGasMVlf3Reqqs7SktLj\nHQi0E5HimgAEITDpMdEuwjEjecXV30/kmltdtc6YLXHx4410d5/nZUIV0ux3\nSsKJgHYrLgtVurOWLGE1WQdKxeRD1R8DJr4e34ixlCYIO1lhlEJX+yoqqDmS\nB5BLhsvoC+g/b5cZGKhB6XySTKJEpYwkwZ4k1ioj/+yGScGtfFMMhkxrqpQP\nuUHRKvgc6K4gbxrrbNaRgTQQYiJWJWeZ2Z6CuNS3R5WlCtNAnAXLVel3A1uu\nqgEu\r\n=kwpo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"8b6f7ca937096f6d3ab6cd8ccd4f1891b46efd3e","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.13.4","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.16.2","dependencies":{"qs":"^6.9.1","request-oauth":"0.0.3","request-compose":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.7.0","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.9","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"^1.0.3","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.17.0","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.6.6_1577884746399_0.29805653884594707","host":"s3://npm-registry-packages"}},"4.7.0":{"name":"grant","version":"4.7.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@4.7.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"ab879a38ced7860df668db6c66012aa02402f49b","tarball":"https://registry.npmjs.org/grant/-/grant-4.7.0.tgz","fileCount":37,"integrity":"sha512-QGPjCYDrBnb/OIiTRxbK3TnNOE6Ycgfc/GcgPzI4vyNIr+b7yisEexYp7VM74zj6bxr+mDTzfGONRLzzsVPJIA==","signatures":[{"sig":"MEUCIDyrZB/y623NInZml1bWcuF4SCDnrQ9p5Ikt00IUAis+AiEAwE/XnA6CSn8b8lQR87pzp2LTIY+0NFFsvib6l+MvGlM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":205906,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeLYtJCRA9TVsSAnZWagAAmhMP/RtuAhSIEVeuhpglvftd\nLog1QUgFzSS1J57W1pfFa1qDXJr2WmdtxfIHtPHsfZ/9g2z2tiQM/26PkU0p\n/Gzop29ZO8lUT6GCR8/8ZvyxayEN9JtfUq6+clhGlDJ92RdGkXD/Hs2vbMF+\nCl0TSS12BQ7rL1Old1IMOk4J6kNfPF2f0OHHZN4hhkuxREo5jCBg699vYbD9\nJWqLztyIn7XjHSnD7lYiTkcE4gJgy23R+3/3AVo6DG+VYq6c2K7VOyJQaDSP\nkb/NhS90zGR6YWE0vzX9QnK+YU1f87g1zQkv3VdkW2yV5FPrzYRew69U5yzl\nqivFSFime8HEB3hC0KlI+NnSw70xBBBDX5IE9qaGCtzo2ZAQpvcFEWL0wGpt\nbqo+jaSAWaWCVMR5ij1Sxbtrm+ez4VcgfzXvz3OOLU7defwWXDF/r5Xea3JO\nL7nSC9JhpwoM9vYdysfJuYGt6Jln5aVxoQR0KtZp/HHCM1MJQpsumaOTpOhy\nmS02UOkPd8V4g/SDTBRQG6C93NZ1tD31B71lMLmepBskJ764ItaRUlAoUOcJ\niBsDh2z4VCEy/rX7CBUyz1UNB+42YAEXs+ZgxySLmDTUcXD/DS40avv/jn0X\nLZX5sfu6GI+O5HAVjZDYOAlzzyMstt63UxHSvupGjgBcKp1T+e3DOYd2mKKO\nswQ9\r\n=5pTX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./build/index.js","engines":{"node":">=4.0.0"},"gitHead":"7f46640d2ae8b278ea4c9d0f01840818b1989607","scripts":{"test":"npm run test:ci","build":"./build.sh","test:ci":"v=$(node -e \"console.log(process.version.split('.')[0].slice(1))\") && if [ $v -ge 8 ]; then p=\"test\"; else p=\"build/test\"; fi && mocha $p --recursive","test:cov":"istanbul cover _mocha -- --recursive","prepublish":"npm run build"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.13.6","description":"OAuth Middleware for Express, Koa and Hapi","directories":{},"_nodeVersion":"8.16.2","dependencies":{"qs":"^6.9.1","request-oauth":"0.0.3","request-compose":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^1.7.0","yar":"^8.1.2","hapi":"~16.3.0","mocha":"^5.2.0","koa-qs":"^2.0.0","express":"^4.17.1","istanbul":"^1.1.0-alpha.1","babel-cli":"^6.26.0","coveralls":"^3.0.9","koa-mount":"^1.3.1","body-parser":"^1.19.0","koa-convert":"^1.2.0","koa-session":"^4.8.1","request-logs":"^1.0.3","babel-polyfill":"^6.26.0","cookie-session":"^1.3.3","koa-bodyparser":"^2.5.0","request-cookie":"0.0.2","express-session":"^1.17.0","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_4.7.0_1580043081239_0.14283361061118272","host":"s3://npm-registry-packages"}},"5.0.0":{"name":"grant","version":"5.0.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.0.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c3ef6abc8d63f2fcdea456a92a236230f1c6d4ec","tarball":"https://registry.npmjs.org/grant/-/grant-5.0.0.tgz","fileCount":20,"integrity":"sha512-ErvWOJy/PIPGeSlp35bgEy4oAUmzdemGoBPtc/OWVRhkSjwGTn0YMgoXhiuSXjHaAmBpdQbnZt5zB/hRUG4IOg==","signatures":[{"sig":"MEYCIQCkaYysa9mdC0qMBkMu1/zOHIVr2l0Dv+lZG5OoOMawiQIhAP2nqind5lJpb9Mzw2twdvQEfEbuyIUEemAo0qi/vqFy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116852,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemq8LCRA9TVsSAnZWagAAPyoP/ibqw62+cf7g3npLTNQL\nCO4wGyNnDwJbjlZp6AQ9AZgXxj1Jw67NMDYUQ2n5Ib0tRTWMvkAN6dp+fguf\nm5hHp4DxeMTk/uCs8sF+cY23M2cuNgWutTqDk1nYM0dXwMZ0hggoOy4N1YJp\n9CVIJ2TlDQswRT3OKwF1G2MsruU1EeLaUkyuw1LF2ECb1ZDXxi258RSdKpIn\nUIJu7aK12C3CSh5uYrWTg1DAZi5yEfa+A2e7KXGTDEDf+Hb9ivAOf62TodQP\nJcCL14GbZyipyolf8YqbQK0nHUhjOmloGHgrm5+mnr9KSjteYKZvwWc8cX8i\npEEypsBIlBja2cJH2l3CvPxiGT6se62G8zy+S79NsqDKWEUHaUMuHL3fRTh0\nsZfZHgr7/CSWfdL5hzPzz6UCl/5g05akDCmcRPl4RYrfgfF78QRN1t3mI1k9\nDDpKP+brFTiLGRIVp36x/0+ET+TJKhN97zRaVnwUy+CYCFCush3ARKD7YBn1\nuRaOxPHouxSRfTOK22QaHchllbyKTL+E54oXlSrngMU4db9jrUcLB4/1xxU+\nW5gmBnSikAgbfMnMR4I+ho75G6LVLd3lxy22ElH7Zgb+W0pm9SS/RXa2RNcb\nsr5KqIEJsHFpJ+LF/gBeLGa67iE3X47O8raVlOCkoyK8XvctJ/SwvRjprVpb\nqVAt\r\n=6fFj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"75fa2722be73d35552d7867bcfb7761d38cba9ad","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.4","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.3","request-oauth":"^1.0.0","request-compose":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.11.0","nyc":"^15.0.0","mocha":"^7.1.1","koa-qs":"^2.0.0","express":"^4.17.1","@hapi/yar":"^9.2.1","coveralls":"^3.0.11","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^5.13.1","request-logs":"^2.0.0","cookie-session":"^1.3.3","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.0.0_1587195658903_0.08742253059303429","host":"s3://npm-registry-packages"}},"5.0.1":{"name":"grant","version":"5.0.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.0.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"86d8c970fc54e860b5ad97a6544d3c7bc87c2fc2","tarball":"https://registry.npmjs.org/grant/-/grant-5.0.1.tgz","fileCount":20,"integrity":"sha512-ZYlnlzMA9f9SielWBDSwGZ34XcB2BL8wktDE5T2OcM13T7GFirjLWI0oasqrigPcLetazRbCUIBqqsy2Mvl8Zw==","signatures":[{"sig":"MEQCIARWk8GcFXfzIjE4TAXoqf1gE6L1ItkWFxMHcazczqf8AiBpFMeW5M0xes13PJPWaoYGCcXXmJXslAPnivoCXWrNJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeq94mCRA9TVsSAnZWagAANwoP/0qzWDtOdSBedk7vMvjM\no+HCvBtGVGGCL5Fqzmnfd2PpR1hIffIIpT4I24MEzL2Cw0jjU3tXy4muqm3v\nvH2cvU1S/CJz6d9cVwxKYX+b+UCXUIuWBBpuTRm2gb4vEBwBhtHQqwcdmXYz\nJnBUwT+EzWT72micXzaplE+FNRAGaGsEu3atbRhs5QdizbXixlk1uMTL5Jqx\nYsnienEuSYq19o5c3G54fik6dV4POro8VSmuCugmsqYPIAVKUdva+O4iyzHJ\nvELsy6Q4c1e2gtz8hOZIWH8g7oQfUS7/bBXryTHpAGycYQxPOda9ZCKm8QdA\n6IPnZmG1LQ1fc6aCP5Wt/VSxMK8ngjBcHNQZfmf2zNDAL9nQDPPIpZlZOD47\nLZi/DCRSKyz19euRRTh7ck9SHWudTidEoK+EyjRUA6lkKAxlKgpESbsf3kki\nCHYfsnO1eUEaPgSCAd7eVm8CSKjX9Ntspaqv7whtI3I8YTB45T7kTAXqhgAU\nLk6cXjpA4zyaYDJ3itLeRvXMxO6ynveT5hovRJJVZTL/kYzEd76ys39gfi3f\nAYBajcWm7mqytINlqTVmC7+9X0jXSqWJtfxKfFP0/RuODgvxxablgo5+ZAVK\nwj87vxRGngkISKS8755juPiNkSOC3l6n7z6KfFOO/emPM+klsoTWPky/3ATD\n/FhC\r\n=TrV0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"76f587cb0230ba1d35f3961ef782a2932a3fb412","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.4","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.3","request-oauth":"^1.0.0","request-compose":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.11.0","nyc":"^15.0.0","mocha":"^7.1.1","koa-qs":"^2.0.0","express":"^4.17.1","@hapi/yar":"^9.2.1","coveralls":"^3.0.11","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^5.13.1","request-logs":"^2.0.0","grant-profile":"^1.0.0","cookie-session":"^1.3.3","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.0.1_1588321829913_0.3035814324085324","host":"s3://npm-registry-packages"}},"5.1.0":{"name":"grant","version":"5.1.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.1.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"d2cb903792d1822c3d6d5b0db89c2680f14d5813","tarball":"https://registry.npmjs.org/grant/-/grant-5.1.0.tgz","fileCount":23,"integrity":"sha512-unJ5c4JePuEcqG8ywlQIZdu4BzDeEKmttEI341BlEewf7udWqV2B29AbZiNMpgQHbd2ZMfbLgi3mAf9Rmbl2qA==","signatures":[{"sig":"MEYCIQC46HAFd9SSc+ZielOYYxhmBhpouROon7+vHCdBOIrgpwIhAI4MK4kvx5i4ejXAt6G1zOM62hm0wQA/x95NCng+UFRA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJey9jLCRA9TVsSAnZWagAAcsYP/RiymA0wUlcWE29eTgdj\nUhuQd2dmcSwbjbbl1QjZHr/1KBMOz387cPRZmpHPmRU14OTk+0gIEcBh2nE7\n93JtmaNUnLaUs6joRyO4Wap7Gv7JrlwWT5yIdoqpTBXhhGL+ehAUr/1+LCU5\nrnv7HRwcBm15qgo0mGXPIx8hPHfk1EJK4bQfu8cym8cQ/Fus9TIA9CBhRUiR\n0S+fj11UGv0bUKT22jQfqcQ6I4BNAzzcyAjBiFxG/IGgIiNJA94+ZBtWr6Wh\nIPr2K04J4zTrAZl0Th0B+9kqesyq8pTzI9MrAMPbXMyZ09T0JiVrs4Rl5nmx\ngo5Finb1L8DL2XUAP47bY/3QbX8CCb+Evd5L/hdb2LlgGFBrtZtE55noiccr\njd9w2C6LG/JwOCYIuwPBc6FuRJKTY6u9ebDy2OhyN3l6/vEWvUHrNuKyGBsJ\n3dGAz27OIpgo31mBvXqHrCrB1/gN7Im3rWUtOwP8I0BRELx1tMtil27Ma4PN\nSbuRbzzRQUuB005lVBrmEE2lImgbXKoyyq2zMb6k7WYbdxEv/XNJqGBkXE0E\nBTIyiFakLRR7yYf9dYw6z0mtyOznYyMFBXhS8pCG8GWSlh1CXLXDXtZK1wOS\n7hGtz4UPkR9CCLy/94DNdYC6Gu/jYIBOqs2Hjyo3alnL0w+S3Ea2qEYuxyUL\naFaC\r\n=rGD+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"bbaf90985e5322ddc90f276f001b2ee55922977f","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.5","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.12.0","nyc":"^15.0.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.0.0","grant-profile":"^1.0.1","cookie-session":"^1.3.3","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1"},"optionalDependencies":{"jws":"^4.0.0","jwk-to-pem":"^2.0.3"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.1.0_1590417610860_0.5011565610705149","host":"s3://npm-registry-packages"}},"5.1.1":{"name":"grant","version":"5.1.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.1.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"dd0ae4d292a68144ba62163c9c522345b3638dcd","tarball":"https://registry.npmjs.org/grant/-/grant-5.1.1.tgz","fileCount":23,"integrity":"sha512-9XiidYEMuZO4Nqh6PwSZ+4dFbL2Xqs9MGEaaVs3sy36GF6ojWvTBYqBUHDmUqcFcokiJG9AK+1vJ60E0Z6wl9g==","signatures":[{"sig":"MEYCIQCaBIt5Qua71dGUH5r6Yi0uL4sHVSliM+2JphoaIPIxvQIhAKuWApkD8RZpzyYpY+QIMmNIAf2ZNaoD1VQR9PuVErm+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138897,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJey/zKCRA9TVsSAnZWagAAEOYP/0eLpM27wzAgj8eNSdmc\nXy5soV/jloxqqgJREM0k20Pmwfi8zBxCtPJqJJzxBIZMp6IOurKo26+oRur1\nBc0hXfS7SXC3xUWBruvmtZLDQRgS2WLHsM3hAAke06KfOoJIEbXGDatnIxHt\n0xoQYnrpiohZxdp+SD2ghW0QiUCFUTitsiDPKm62mjb6iqeNBzKIuGQWi/tE\nXqPwl+PZsqAbQN3QhFZMuAwu1PySZ/A6nS+U44qA7BXxRhGu8tJRpJSnxfMa\nzHFHHaoOIm7JSnN6Rm5Jtt45D4smE1LNW3oBa+Xe1HD/Z9YxrcsJ1kvUm1VD\nMoT4jdzDmmTRsCF4eqvM7DVtSGtA8eWG+xsCmo0X+WnzQ4+CU1j0uE073yH7\ngpO2ScmPNSl5VLD7loJZY/e6cElfA3mu+w8vQSzCxAVMV/kuCqlowE3yEuib\nv3nN9lY6v3zIw66IqvXhNSrALtOxceYRzWPcQh0pd4SnpkOz7wWPIAH6eovN\n2n5wGfseY7Rj/3nI1LN3O262INWe+acJqP/SwYiFgfvUlbMFzThZmyE7w9Nd\nfHPah3fyucHQQZC30pQc+y5f4vPohR0OHbEQjO80PaFmYBydodi62Q4LeV2L\niHNms89pyNCYP9AJo9glHpTKQqEKkrtfCqkU6TviY56xECuBx2fcu8GXKPGC\nSdnN\r\n=6Ydd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"15901cbedb9921d9a175e020fc2c7a6a773d4ec8","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.5","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.12.0","nyc":"^15.0.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.0.0","grant-profile":"^1.0.1","cookie-session":"^1.3.3","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1"},"optionalDependencies":{"jws":"^4.0.0","jwk-to-pem":"^2.0.3"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.1.1_1590426826034_0.9462416398814117","host":"s3://npm-registry-packages"}},"5.2.0":{"name":"grant","version":"5.2.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","express","koa","hapi"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.2.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"0df2d875ae69e60a91884c6ff62bea22d277a753","tarball":"https://registry.npmjs.org/grant/-/grant-5.2.0.tgz","fileCount":23,"integrity":"sha512-XLB6H5CYp/A4+fw7CFBYLA6Q+ayHsZHgUO7+SD+VIgSeQI4wdpW5ZA+vWd2bwlKTccuCWNuEOJBneFuQd/xOUg==","signatures":[{"sig":"MEUCIFJcia7awze60vDxMDjLID4oZ1yjuYCh0dTP2YcgvKscAiEApnWrVpahnAP8OG6ra2HtLcHrabnndV2qKyCo8g1urxE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":140665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3VB4CRA9TVsSAnZWagAA80UP+gNCRpdpVjZDNIMFCVWH\nDAwLDdO+W7z3igNzgpEPNV4heHgfEwO/ltb+m1Ns+a/SosncOoZnLzwKgruk\ne/lqK6paAiYJv7dlodlSYbn37KGscNEitag+/mnF2leIngJDKeDHWVBIVfcx\n0s1fZ0S6pehDwT4r747WKfCalAcnL/UHLJCXTgfnI35LFIG0PjmwJmk0c+G1\nUaiKvIuV6iqnsWb+C5GfXtepkx8kkz12R6+ptlQKplBabHnpoNqKawQMUg83\nIAdpFzeNu1EhMYTJ94MjW/cs3ayYEEPpdQEVGtWnjanpIOPCX7x7sRGHTYmK\nnmGB2mc4WrCC6Lp23S5baQh+8lBT5M1kP9E1CFO84HFfds+ZNgJWrlELyjAS\nHqehOt8xRq3aitD3PeM+xpivPrdIA4+7pkSORdGrWgAxLqdpOWCqqykdfQaw\nKpUGfpaX4gqavxZqgk6qa5+dgHd0zZ1wqSyeEjWxsd67wpxM1LXMClOsM5TN\n9VVLhWTrRrqCtgqCDrHVonA9XSynzWfdWzzaxjBwR3gKYCSRqVpMwIqHh2Oc\nRpwHV+ZYp56JZBdsI00YjaiVLPD2V8O1E82s6qvNINI5GZGrYHf3q5uwePkN\nd+8cE/h9biTpxYidjudHY5bjfvyQbCqzg5k56RkdZgCSMBfikGEKZf9m4l9K\nBAL/\r\n=boT/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"e5ecd902501fb7a3e7d0288dfcbf08bd82672de9","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.5","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.12.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.1","grant-profile":"^1.0.2","cookie-session":"^1.3.3","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1"},"optionalDependencies":{"jws":"^4.0.0","jwk-to-pem":"^2.0.3"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.2.0_1591562359439_0.6145576729092406","host":"s3://npm-registry-packages"}},"5.3.0":{"name":"grant","version":"5.3.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.3.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"625759c0e30d6fe827c7c90c328f9d0b53711272","tarball":"https://registry.npmjs.org/grant/-/grant-5.3.0.tgz","fileCount":29,"integrity":"sha512-beZI6F93qzv+bejv4/WLwrfjK3RoAR0ngK3CI1ZmvDiGfL9d6ttS2hGJAE3cjmTtxZGFLSoM9cCYf/Ys532U2A==","signatures":[{"sig":"MEQCIBoYv39k/pXJ9PUI+8dzep++894Y4moQnL+Q8Ti5VjzaAiA3whadZxybsIK0emFHeWn6owxx0TiUFKUbpeALbtSrhw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":153923,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfL73VCRA9TVsSAnZWagAAkkUP/i0V/cPsPpT/9tlNhdUc\nUKmuc1l0mdrvj+Zeu6P3PCqbL/zrwzIukcBBoXr3TYAlbLj/hCeRXloAiQdP\ncE0Ncf9ZaEYHeDW6/V7l3cQoeQW3+TuXKHTIETIwPpJx6JBP+z3Ap3DuKvzv\nYmhrP07+18JhmMaMAW8N4GraztO7IoJV5gr/4j//wkP8zv5TjziyV3Bi0ZM0\n/e45xcioqoLy0mT6GqevdOz086t3Q0P4kkw+TkiglsPxIAHMaScyN1G27tOB\nSEU6s7E9l02uL+HU6PsHMQBmHRMYKV00i+ySG8MGoy4aVfmK1xy7X/2fLgfZ\nKs25Le1XGh+pmLhOcYNmGDMn1o+T/KGZDvm4NIBYQHBr88Dj9FiEO+NyCb1T\nk3KEe7Kio+JK8VZ7Sf/JB/Zjj9Hrot0SsuqAEWK0oyaHxvqTX48AI4DTg2kt\n29dubskSBibS7AM7qQemqgnP+8yXHXgFsEQ4YN5ULftQvLofjWwThhj2rb0R\nkqclHhlTdamX2BJOCjcoIpEI6HKIf8lRQQJCdbgYr2TWVY2n3WdMXS9NVHAL\nt7q9aC3Bq3Pn+YH+hIQfXjm/dZ2tvLedDH+mokaNqbl7c79vo0i6lXy0GXcE\n1pSPfpeMlCrLUxPdtL8Pq7gNUu1XHViDTV1MwYttjbIDvySBPhLYivGmShRs\n6uRt\r\n=gchH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"0a51e3dbdb892c7cecda88ea78d98ef68db2e938","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.7","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.1","grant-profile":"^1.0.2","cookie-session":"^1.3.3","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.3.0_1596964308503_0.20266630532369967","host":"s3://npm-registry-packages"}},"5.4.0":{"name":"grant","version":"5.4.0","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.0","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"56cb2aec8f07e96a115a7d6963858d0363236ddb","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.0.tgz","fileCount":30,"integrity":"sha512-yMdk13tsDhWhGmFshLPKGmcapDfxQ4HACBrewywN3X5C7xQUQsPiKy/fyJe8Sh2WoTW2Xt6NEFX9Wh8EAWZa1A==","signatures":[{"sig":"MEUCIAxgdhtzqCBt0OT6ihBxDSTkFsDKYu1l9rz2iiIMbghFAiEAvxTcv1wxNeenrYpbMcWRuBWsFamoHshhFONwq7G+NDg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":154313,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfTc/cCRA9TVsSAnZWagAA8VgQAKF/tdNFoICZKZkAa+GP\ncF5lIJ1PgbUzgfsHSyAv9/H/o1XIfebYNCfZLmLGehRKvV5vJ3dOvSsnRP/j\nShEfuIwWAv5nV/i/T//jAGJccObxeL1UngA/pH1zag7bmt8bQ8Ed/hnTBi+A\nYQ4ExxiUoFo4b/Vps0wX2i1F+bKZ6ybSB3v2kKYSETVAfbvEF8gRjkVDpier\njctmeyCEjINfoctRWW3U2+vWwyc29pFwUmL7mP36BNc6OGeS0Kp0Xt8LmdpY\nuHBZQxcDURulPDSRD0ZI8xNLLrgzYn3sZHs0R26MRDgf0lBTRS7Cx3Ih751W\n1JURAknf2BErimJLL+NBiAS2G8Jh/66Ug+0y2rdRQm4FFOf03nEhvEXcLvgX\npvX/nJLiLXFFm0LVWYxgJp+/nAPlAEbfhEqzpTFIUw+TFr2A052UGpbOAItT\nDgd6mjv2U3VMojEoV6nj62fcG2DA003YEWY+IhpO+mwSwYlFM2NUm2wFcMGF\nMPNMEA3U5Tdz7oaALW1BxjVUrlEyD+X27I8a/dYB03WPU+F1syobUkoJ9w1G\nFL510GuT2P/U7RdpfTApn+r/eeRwSPbjLc8m5ihExQtqbPki9ildfDFfo9W/\nOCWVdFohWFVsXHP8T+iifjOSqL6jPjphd+V7aez8zjPrQUjw0e37MNHmOmBD\nJFcs\r\n=+8m1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"0ce8960c1d835e2ac8eef2f6b62e919673be06d0","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.7","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","fastify":"^3.3.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.1","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.0.2","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1","fastify-session":"^5.0.0","fastify-formbody":"^5.0.0"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.0_1598935004124_0.2002409663084832","host":"s3://npm-registry-packages"}},"5.4.1":{"name":"grant","version":"5.4.1","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.1","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"2af6d513188b40876d1f0aa0e4b2d782bd52ab70","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.1.tgz","fileCount":30,"integrity":"sha512-7JxwuYD4t4+4ctjMOy1T70Q1CVR+exHwkwF5VYjY6q74G6cik5OrSMoW53BmESOO07XCgjrk5Lga2PTBSxFSaA==","signatures":[{"sig":"MEUCIQCwQ85qRKKCwbnJ4/23Z3mT5eVdDHz5LyCs0QruDNHxQwIgBu89JpyimcCvSzF6X6zB4w2pmHfWxae7BStLsFAOHWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156541,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXzAuCRA9TVsSAnZWagAA3DoP/RhTTYz4KMYNd5KMdW2R\n1OvCoVedeYNzjmw9HLPLhTrmVguQBbn3QOEWiT4vUEZteNY/cDHXefOPJhM0\n8+mGsMKwOk4dJmfFcfDnzT9cadg8C+NSHXLAUAuEmZOGA0uSenWC5tS7hZmQ\n+t6TCGWGmoku7F9W9B43MW/5DDHLa3jsHtrLs5gPWNmj0xEl6SAdh5wrguUV\nxbkKFYuoELw3BFW9c89FxomFiOoOFgZhxSy4LHEcs2ajUhsKgzk8pJRoaebT\nWN93JbEsSGFD+MOs+b9IhJfc4xOH+lR86NKFrij9ATnY4UQh1FTmUicJZRxv\nRwT1x6rxkRg9bzSXRPpinMuQk9VnsfAp8X8oiaH2O0reWyCIZvMlV5kRNiwP\nupAGvS3oLFeT6AnrdOsrRDeYBdvApqPer1lSmwqGxoHHeX6/n9I8UZYoOc0M\nQnRFDT3LRX2XlL5NaaF6sKF+4eKETGQmaGuumfMmrjkMQeyQCqNCxH0HhfTV\nxPZ5Cg/LNT/9ajtRGMFxT3xhfVUTqUxdgjQvbWQRyFnjUHeSmd7fJA1tCKEb\nIQSezlRW34eg47oSa73q8iji8jF+BX/hS6OrF8nCrVAkq+lQtd+jk9AjZrRF\ngTiaz7MnG762aJe0hdLl+mFzr99NIFm3FpkuK/G/M4cMedxd95avY2iuPaXE\nRMYO\r\n=qVha\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"a40e79be41a6a7831b9a07a06d92baf14f1f8e31","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","fastify":"^3.3.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1","fastify-session":"^5.1.0","fastify-formbody":"^5.0.0"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.1_1600073774004_0.4737138454468701","host":"s3://npm-registry-packages"}},"5.4.2":{"name":"grant","version":"5.4.2","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.2","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"e94d98e10584cf3ffda84c0cb6c7a33379283ed8","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.2.tgz","fileCount":30,"integrity":"sha512-uuCk7+ovdF9y91ystUv/9lyBcnHMqE64e+ndJxGLF5meSP3ftVkxWIJCXy9uSeYyptQTjBmYd2iW6c0+CNvDaQ==","signatures":[{"sig":"MEUCIQD8mvVcmqPoyqb/0LkSvkIFUnfFPP1jr7knk3rTicTFQgIgVoExXVf7npe8+WS1hscaSS+EhXpfYTf6420TE8hGESo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYyS5CRA9TVsSAnZWagAAk38P/ROSLBgkISZ2YMzQ3Iv5\nFfaysZGNowKLabk7Ha4L6GBLuH9xF4tnZ6l3j98sAa77yLR0wHrC4XtFNXc9\nyhQqeCp4OHCiNBdYgzsnbhWsf0CX+1TJk41NsIS2/dRLUoHCDd3koRZNWKk9\nZL6+6rwn2Cf3ASK8dJC8s0/1RhCz0l078b4j/RuLqrXMKxmPZz1wN1IHjEXm\nz2YmRfD1p+RFaehO7okO7Ioytg81QC/UdKuOIXMPBlxH3H0bYe7fUdrY7qg2\nu1sZyKL7zllzgo6MvrzLdfsoK/0Fe7U/Gas+rjEPrxzq7BKOirfZ6OaJmR79\nZgrEkAQ1WiilFkZWtaziACUOSgiK9qaQHbz+35eHsg8HL0bNF8I1wC7pe9+q\nc1lv59UawP4O+WflMtHTtmmEOIEYeam/oMD4q5zzu2GXbHVcWBdU5ARhc4vL\n7uAejeHgJ1cemtE5Dl5vs4kbpVbu9fDt6/zfN8X5oLaPtYFRU43l+bXL40iD\n6wzZ1uNyWTPSjq7/tY2KtubSiQxaGqoaVgqxzH7AF+Oz7avljnlMdTtfdusg\nCfvIkE0ATZEeMydiSVq0QdcVqBdn4ffty8a2MtiYJ2Hpo7z0PTd8CmeFGVLj\nbNQqMSe2vWQdarREwgw0OKG7ehGUe89+PMkSbTIRwyox3w4I80P3BLRI7Kw+\nLZQ4\r\n=G3UY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"5667b43393ade2b52c11e4e184b3cdfdc45eda57","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","fastify":"^3.3.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1","fastify-session":"^5.1.0","fastify-formbody":"^5.0.0"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.2_1600332984817_0.39613022105670703","host":"s3://npm-registry-packages"}},"5.4.3":{"name":"grant","version":"5.4.3","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.3","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c43e6cf3f59a1cec4272f45541eb9a0404c0bcd2","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.3.tgz","fileCount":30,"integrity":"sha512-0zEfkIixEO/Cv5zhhrdytT55Ivyi/oy+3t7jYWBJcqsbFUfPtNItERPAxLTxpIhEh2VDq6N4K+McABRDlQuDNQ==","signatures":[{"sig":"MEQCIHql2OzE53Fx0Od31ICOrmKr74UpUt6knJtkbtkRiEg6AiA0BBsisqj77+PUm+sS7BU2o99BdxZBPZLi6MmTMOYmOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaEIQCRA9TVsSAnZWagAAzu8P/jrOJQWUxGTwrN0PGDcE\n2W1CqnApXXLe1ku7SWLL+qaqJz8Vc5cIYgJh69xyDU6iNezffrtsAKxMo5tw\nWEMIbI5fjGic/TFtsWWzDe1vKt39s/fS7h0a53KfG649jxF4JcFTaTtfWEpy\ncNT6f1Ckyt7h6yKLrhEKUTTRfrqJsw9x2IBM3cFK091vqntePx216mrdoGmm\nvk+mG2MFiFHeRZCcoFF+wfsQ9Sis06Vh8alO3LwJWCS/7wC+ebmFlu5FQuU2\nhEWfxRBbpVN9ZYUgbD/QVK5sFXSZ9WZpadkP7F/kS5eBV3IUgIezIaspPrqi\nTLSDQqTE/tt+x01/SRuWOTHsDItrqYpjW+pRBBTU501FZwYEB5M8CC3XLzN5\nfL2qsXRNOkx5JFYQ2x4RX8x91w0Z5vCY27RG7sto0ys0nsI9II6rRuSGUFK7\nHQriFEXP5GbAIjcECpALJvDBaJmJH98x/zYl4PbsJltBgOVaLho6XvWdbd7J\npNBPHkCJIlsOrfTRWbeQhZitOOY/mhik7xtnBw3XAwKm8DduKNQ02E+DQvCV\nmc560y0TjWfexIDMpQRgtXh/+LsEtcDBNW8sY0DLrMf+620fEtrReTCsyPxW\n2nh5g+nE+Qy0jxBTaZg0VvWwgNHVFzJZuIk1PoE8QumqJ+vP1cNELA1MzyIt\nilbQ\r\n=tkGX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"d489b997269a5bddc573b0315bad930bda48bda9","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","fastify":"^3.3.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1","fastify-session":"^5.1.0","fastify-formbody":"^5.0.0"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.3_1600668175562_0.9619648226459996","host":"s3://npm-registry-packages"}},"5.4.4":{"name":"grant","version":"5.4.4","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.4","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"1486284409dba2e021fce1cdcb269d82a56f7206","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.4.tgz","fileCount":30,"integrity":"sha512-kfcx5bTpo5VmS/TU8JLFiBCBUjwz7E0071+7yJJ0UbSnNUUfuCCDwYq+V8fVnDnV0vf8rpKMCOkw7KruZHYKhQ==","signatures":[{"sig":"MEYCIQDToJoDoYEAja4IYy7dx/+KLm0W7/kN22wI1pCN94s4GQIhAPIvxSdRRqLWZ/KMtu+KzTLtxL4GNmJO/lL5BcH/VEjL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfau5vCRA9TVsSAnZWagAAx78P/0jNUow9ZlCye410Yyqw\nHxfrC8D0GbelG64TzUjaVfDqycdAL5nymm0bFIGYuea7tGtFcssLC0Z/OAV/\nATYavxO/RxKeJlv42SNuoQLLMDQzZM4nMcsAvkFV0z9RnliViG8MX+0BDr/h\nIuuk4j6HHKgOGtIJbz1XDKNtVU3Sk17E7xJnC9dBHZiDail1LoFrqaX1Jo11\ntbPjQutU0vNN7ucpmFd+CyV14XbxFj2IJzGABCjqBIo2yxHXtEcwicHh8L5R\nQRnvJOFBIjxi40v4gLxU/5JLuDCXRPTVVFerTHhT6bWiLlaR8kwFUAbkSw3D\nDfA/AII9zu6XTD9D+rXUyrJEiHljlq3ZdZZu+T4Wcq3XZwXZUCTfmJPv1sma\nyRm7hO7evz8MHGlbFDcSZCC8RNS3r4Yb89rj/R2EjnJjmqvGLzFzJikSOpcW\nsiWBOY5Dg5NEvQRcfg0N17ZJYnFtA7/DqUUCpUktJ+tR3yWOgh81IvObU4ho\nrJj4mCoKK2vb/dO6LMRVKdpRi2fO6ySibacGct0fb1hsXD9lGnSbPu610gDs\nQaet+z8eOLzKCUpLIwtE11m+odWPQeSAOwrLIPOXVaoqOczhBZwvBIxZ5TAa\nLJzU/XwdGHEuBwg+5Khd6z4WZTtjrHngRnFajs8VTOP8vVlfM7fAT4u1eZgw\nLk7O\r\n=2jdI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"3e8f4896897367d11405c851c256bdbbd1e29972","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^2.0.0","express":"^4.17.1","fastify":"^3.3.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","express-session":"^1.17.1","fastify-session":"^5.1.0","fastify-formbody":"^5.0.0"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.4_1600843374698_0.7144210784442242","host":"s3://npm-registry-packages"}},"5.4.5":{"name":"grant","version":"5.4.5","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.5","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"ab1d3001bf33392eb1c09266ff8bc91f6553cbe0","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.5.tgz","fileCount":31,"integrity":"sha512-w1/mbzGEztHSpZIH96K0O43lgascuvP/jyiXpu6JsLQ4Hu7c3ZKb7KqDTQhRQdmJ+oZoyDffPK2reuVn6eU9Kw==","signatures":[{"sig":"MEUCIQD5L15TU/HksdI/f7PFEdOVb1jLCuktKdT3OgInqZ3BigIgZbsuo0rOqj9ZIDu8aWNCACgSlDcvRK7z9RSwp9hK5w4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgyxsCRA9TVsSAnZWagAAAn0P/0FfdS2Mo1z5utm3LDHF\nJuPijAXV9ROzQLePbyFmu5ggPrQyW6eiZ7/u8wj1oEcdLXbWxp5rebxOU6HV\nYF0sHi09knLQgCtO/AQUg3vODSahRQ83TBlTGFapwqvaeUTR39BJAYuL1J6r\nUUZgm7lsBvhPaid6jqN5fuboeGbA+gtpXvFCKe/L2dNa+D9CU9t/w5Ym5ua3\nT646yn0Bih6ubttuzxQcaSiignVZ6Wt+GqGQARmTtlW6WFYowILorp1mas2p\n7VMeNNp3U5S61H+zpSxczomYH19pqtpe3zM0u8tlo5mI2fGRgr4rHFkrjOgb\nT4XUVjE5458j0yEgB4PlglnEbhjB73WmKZbjpFoSOmDTy0pnpAl1CcL72UAk\nwVjOV74cktZdXW27TV1xtrVkkdOt5t5HD2FcBnOJ0BPTUebPP3YbuYG1sZsF\ndmQ7A0rt4BdNJ5hIJvV14+xi+cyDzOzg/CmwaQVJ8/eTayiES8ncgVVGEeh4\n+990uiscZI+xk42crw8j/ohWJZ4K/tIQp9ROg8+Kk3sAS2A1IZF6N3fFwA1G\nQkFzL9VzhyLT+kNcNj8P9YoXVAIRfSrx1g13QuOWap1sGWl3ECAEowSrCAY6\n5oIA9jQY0s111Q14NP4CRw2ruu9JwT0iLZV3xUiCO9rg/ukyP+c9WpdTNFK9\nVaFe\r\n=McRv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","engines":{"node":">=8.0.0"},"gitHead":"51101c824c49ffd0150848a5e6bb8df03ba1b9f6","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.3.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.0.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"^0.14.2","express-session":"^1.17.1","fastify-session":"^5.1.0","fastify-formbody":"^5.0.0","@curveball/router":"^0.2.4","@curveball/session":"^0.5.0","@curveball/bodyparser":"^0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.5_1602432107507_0.8765938633813106","host":"s3://npm-registry-packages"}},"5.4.6":{"name":"grant","version":"5.4.6","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.6","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"e43256d4a8a8a3a2c98305ec7cb2df221e6382a0","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.6.tgz","fileCount":32,"integrity":"sha512-f7ffnAXPo5Im7QC1JhafQcATRrGNHDKh+hia+3SOPjTDe9ExmlVhkynYfq9rSTP9aYovfIFi8qtTx3YE7yNudA==","signatures":[{"sig":"MEUCICAhb1evhgoN7ZS1FsRD8l47FSZPweDnfdmjQbkKcOfEAiEAwKgYWlB62An541mluyqcYfP0A+tdfBNbEFZ5Ey4Lzm8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169595,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsiExCRA9TVsSAnZWagAAZRUP/ivS6IGYw4XYL6dkGh/f\nTVbg5xBoqtBA9CFx/RXxiOaR8zM6dLDoDyc2i838so5suTz5xZJ7F9IZphbT\n5cR+HRnxrGnebkWQr4NOPRFVYv0eGhQ2xOeXFHfpYQGFKX6ueb0gats7BeP8\nNwTrge72K+XPayvVik7Hr/9HA/sjqs86Yl3vX+0/4VkrsNQwIfS9wbsjMJjr\nlIr0SbXmYaR+C+sF1RKrSHYxNjMZlY4mHcRC7d5ExmDGDXJ9BB63ruvM4eiv\n5cSdBBRvSzM4GnoMoH1C2uoRkX3AtFR3u0U1iKc15pOBV2IZdT8X+6IYdawm\nCsk24d+MtFFgRoMGYugw3epEqQDhcTm5hcFEBJmWz7fvqjxkxFnZBnzNFOLg\n5xSXdmYLQUul5zgHftWkLg0/YM5Kf7pRzPLeFl9Yq2Xc/wT0sg3ObaETfPvh\n/m2cmR7VgGrymKOR3GULwgwsFaeHVW3WuoAPGInWxMQ5GKRFFJZ6jLqxbUFY\nPMC69bnDd8jh1aQAuvPiHjHeeog4P9VaT1LNL5tWmMM8gxO8BW1x8Cxj6nOi\nqEYUEM914gSIKfd+pjzqJDAtrBET834tPRyuZ3xeNiOuLHJXlvUvbawNiMP5\nxZTgHrwXbu6XAeVMb5DFt6iN6ysCA2NUg06kaOIS9Z0RX5jZltCTNosHUffC\nRUzj\r\n=p4SN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"ef000c09e3ab46abde921cc55576996732f452eb","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.8.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"^0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"^0.2.4","@curveball/session":"^0.5.0","@curveball/bodyparser":"^0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.6_1605509424607_0.3865071172765071","host":"s3://npm-registry-packages"}},"5.4.7":{"name":"grant","version":"5.4.7","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.7","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"69f87c6254b676b64a5fc100d8e935697812aa84","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.7.tgz","fileCount":32,"integrity":"sha512-cBQwVMXgFPDG+64OP23TbgiqIFuq5GXdT+ZFhK2e+mahYnxbq+Diq6sCWpp4z2MHutdC1KwS5jAD50O9WHWujQ==","signatures":[{"sig":"MEQCIDYr1p8zNp8leo6tOlozDBuL+H/DRKxlv8jXfz2wML0RAiBE/5FSYwjIjvaJ+SwYFpFnj/vzq4NjjciqDccR6oKgbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfssT6CRA9TVsSAnZWagAAdlwP/1+EwsW5cZANKxPccPDc\nA9CRW9dmDayA3dXt1Jp4Kui+qmNXsumg2eZQ62tMXvpsuFgtrvHPJEgpskgq\n61UCaUcaToCpTXqfulrS2CbnS0dHOD6IaXuYVRA3ZlE2keQfzUMeF4N7tHbW\nBNS8H7rpmZzap2KuDavPjc63Xtt4OtB23d8XyKZ25M1H8EAP9hD89WqZ5NJJ\nt5HnN4hma7UNp/Hm2zloXE+rQP9ghGjihLW4Z/F3uQALeYIUcmv8UiKs094X\nZFoXOsBpOeqON0uSCp5nEkKdEWXN33zW9rf+YBM8M1j56gDfUxEXWDqoLq4r\n3MqCpa3GMpgDuLh0AceIZgN5S7S2jLxDGEHPbmYo1LcAC7o4waJX7Mgx0cPr\n0PFoJPym2vW2esCEaYp7zbza/wWAakybXnUMpE2Nl8LKzjkL7CR1zTk9eHLp\nxequvxLwCzBlgFs4wMI9qyim57NPTcUI8CQNyNLKyuUvyfU615Hcak8r2cvQ\non83fLpqODx8pdX+ByDPYTjPUiPHbnjg6ZcRPIcOQLh6WGKiug669UH0g89I\nVKkdlidJzPzVr3bOPwJd1zTcQh9bpr3Kn6aVJuimY3xSCw2MnhLy+SHTlHGF\nWetkje+uJtgjA/Sn6VgaPx6JjIek5L3AUhivjmQY2VCndf6jWFpbvMxr13Rq\nMMFI\r\n=GPKy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"89bf496cf7860088cd1459ffb88e9cacb0b8578f","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.8.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"^0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"^0.2.4","@curveball/session":"^0.5.0","@curveball/bodyparser":"^0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.7_1605551354197_0.19725850324078764","host":"s3://npm-registry-packages"}},"5.4.8":{"name":"grant","version":"5.4.8","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.8","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"78de08554675cd8744c5b90d971f1840cb263144","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.8.tgz","fileCount":32,"integrity":"sha512-4VNdImgUILgJETvqOfnV29q21bG6IpRfuDXoN5IGt48ecoA0r3JmpSa3I6kGyPnBx89hI75tUoYm0BWAV3rHfQ==","signatures":[{"sig":"MEUCIQDdGiV9IJ5uusneFyLQ3Ezbj2M6vr7XUfVJztpwc6Z5nAIgUsUb1lptMesdx1VcfF0NhPGWiiAYFIZegTAdKLBk3Hc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169705,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfs5yMCRA9TVsSAnZWagAAmy4P/Rp/hcwQ7H7O47P+WtbE\nfl61kJs7rpeMFY8XM3fF90l1IE+ms7MLVlJYpHqhgZ8IRDWvnxQhAh0vPSZK\nGNxo9rXKOVn2uT53XhGX4rTr6zQl67uZzFaAC5hLHBPflEvLgjpIRfqO4ZdP\nErYzEXmYNgzPYwOO1y08bR8a/9KUUClfCPfoyEgu5AeSHYoJMbzGZJp3j7iR\nridDO8QxE+6iLO9Tt/cp+t9mxyP5/NEu9YbYZEho8ZHa/nLI1XS5K3gbQbNM\n8kvWIZaOgQNsjHj/5iKyExk62IHRqGU3WF+BVT5RbFvTE1QekKtBaEXfGPCO\nG4tDbo89Q3BK49VSQXkIBN8gA+2L1ulPToRyBhtsTjxA8RoHjV929WLX+fpK\nByf4BnqTmJuxa94pcV1xSkkN53bozh/fcSf7UqisDeVzzp6r/BqWxDAego73\nZhvxglWEmluvVK26aThJt0iPderEsPfN7y4XtGWEi/iHINZn8nEyamwko9Y0\nhokihej6/R9p7WjdVlrOJKpEEvoCXW/ZxL3Ug0V2lnGLAbrxZryZr6ab+t3t\nzebTny46CsjJsII7Xr11RTKWMQ+BaI5GTwhw003Dv/4UiPBZsbf4oyMKAwOF\nDsYhO4Uwtgjxsj8663U4iH2W993idbdSg2D9GQmBlJHFPB0JtpNuYl0cue3F\nCbth\r\n=7AYi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"a786e234902424124e66c45302bcfe0628d33d8a","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.8.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"^0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"^0.2.4","@curveball/session":"^0.5.0","@curveball/bodyparser":"^0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.8_1605606539593_0.4942548472428885","host":"s3://npm-registry-packages"}},"5.4.9":{"name":"grant","version":"5.4.9","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.9","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"49a4ca8f5a8433888473e768ba5724019175d54f","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.9.tgz","fileCount":32,"integrity":"sha512-DG7H7Fpm+xr54sndR9zlMp3S9WoijiSrIPMzLWiVKR7RBE3e9ahQ+daCTnaCeXmVFaMo/557M45+7HvpAeDS9g==","signatures":[{"sig":"MEYCIQDbJLNxb8QHyZxrWVmz9uVXA+ly4SH+ypIMKlgwG/HAJQIhAKdhZJYjk5slhPmHCI+nERfWUpoy3eXT/Cx0o1GARv32","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfunuoCRA9TVsSAnZWagAAe5gQAIjeBcIgZ51phXllRIl1\nEvbrGbEUKvEf8msXCwybJVParaYtvTxj/CuVaSHqd+f1eKRj2GJjuIkAtmMm\nrLpjueO2z6BTKUtkqesah0TLRhLkRzKlWSDPfNelv+HEJqaBagTzInKSxHly\nKAMhuIo1qrgOCmzLoJgQC1sdLiUWppt6ygYdJpcxMOl5HyuRqSvQYu38serK\n6+WM+oXxLGNBbmsdYNwqTBZARnM4mgf/WVinOmj/FtmASt3lIm9vLf412Onl\nQlnsTvK/rRRaqWoRD+v0/T+Mnq4W9TrMyCzktkIkFqfO5O1cDQHYtW/IsB5k\niUdK2/gr6Mqiiyj4060aawdyQglcLMqv9Vl8Kwr5Slsa7POaRtWTqkyoZhj8\nLxYTbtlztxSO/8CBzzJIayyLGGQuGW3rMypydoojfsCv9x6Am+BSmA88Om6f\nD33Vx/Zfe6Lm7Sd8xkbhqNJ7rNgflQE0VFMyzyNZ0hd2f0//Y78EOBIxfETB\nU2JI6w7RfRHgftvcYMa9eYvCWLgFKubMVoDFtwfuuiq4hAb2x859qvdOkjFL\nkr82yaPyHajP/b5AzCDxOWls++lCuXf0FBjX2Ha6PM8tKXEgKp5ddDDQizom\nss0r7zIaeQPfjOQPF8JDUItNbRy994OqEjdbew1NJ9BU1+GOeGHbxjNe7Fvd\nOt5a\r\n=NF44\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"d8dabdcf0de3e6a953eaeed4c2db4d1b8d2be0f9","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.8","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.4","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.0","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.0","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.8.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.2","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^4.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"^0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"^0.2.4","@curveball/session":"^0.5.0","@curveball/bodyparser":"^0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.9_1606056871408_0.42932120562897436","host":"s3://npm-registry-packages"}},"5.4.10":{"name":"grant","version":"5.4.10","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.10","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"eefbd983c84845e22c9f1b1aa1e0de573b6550f4","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.10.tgz","fileCount":32,"integrity":"sha512-NS9XRTxPV1NI9XjXLklw3E9lCTsGl4P9IQFRLF5RqoGyX3f48+Inn2i3NpvIMtfhCvYd7juA/EKDwZgvnZh9fg==","signatures":[{"sig":"MEUCIFIbV+eAvPcwzNSzArAYxSxy+M46yIYEsWS3mtHyVIP9AiEA90SzY3Uge+GYKOOMbptSLid/gaawZte/fNjDjo75nBk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRI/iCRA9TVsSAnZWagAAmO0P/id25/SXgQz1+woiqc+/\nd8W18WoMdM16wXWak7+5BbJMC2Z1DZBStbvlYYfkFqUtrFSyJKlSmhG6uwii\nAqb1CV0Y4Artw3YcpaLkrMKIw3qsm59KR1is3hOu0E3/6VxsHTk5l70KbBq2\nhpreOD0SR8rSwBcqPCM+pLR6zaRIhOuXEkVRgGDaVx1ul1p7Y0bx7ialiMQW\nvwgrA+lKLcNJblAcT2No2Bo/pMCBxYCe8NWiYWGFrNu5M3XAf9I43cU/g6VT\nD0lzgKa5FRIi73NiMZ8qJ7pZjPWVkpfxzBvxcJPy7MuCEdMNq+0cAxHgYJY2\nFM7OaEbPdF3HkoapbUsqSZ0MVf4ZhyzQRXFveLisCTeN29BdUr2iBvNWp5mp\nxlmhDGLINAyHWwcrcB+B56zYI6UMMFCdsZkJAx07gJfMP6ODFkgbHPftlVi6\n9dmZDd077rLu+pUFhuWlaw3d0BI6gLZ01xtkpBfDIBNfbwWdgIanlopuLkFi\ncnDt4JBCgXf1JsQgtmBrHbTyaNRHS/e/S56uXQI2RdXjUEeEytVTQXoymHXk\nDNYKRcKLdhOFmi7UqGKWBQyFhVrKKyvj4Fb0CkNjZb4VX6zrpsA/JcXhvykD\npHMXSlJPtLJMJzC9unPX3M3CImvm2v//69+EqpappPjVXGAGR6oshTDiLtsq\nWITU\r\n=S8D5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"5e9a1adb06a8eb3d5d2f66c2e332b2030c7e1b80","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"7.6.1","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.9.6","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.1","request-compose":"^2.1.0","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.13.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.3","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^5.1.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.10_1615106018259_0.05948044260038032","host":"s3://npm-registry-packages"}},"5.4.11":{"name":"grant","version":"5.4.11","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.11","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"c956b741ca5f10ad2fe1488a7cc423cdf56d1ca6","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.11.tgz","fileCount":32,"integrity":"sha512-lQdQ7nL04MO0HsAgSGynCBsEnSgmaHRUxLsH4ycUQTeygK+mXJYrs2T3+cGW80EHWBgeN0CZscBUTwHlMYnGYw==","signatures":[{"sig":"MEYCIQDrkMI776lN0D7uhXTxQYRHk1ceN1T78gKjsfwmIwImsgIhAPJJxwTaFZ++ufTz/ztDO2nqBrQCdCY+dl9CUVHdg+aK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173153,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVgq5CRA9TVsSAnZWagAA73EP/0XBSIKNZg1ZdpXQpAJy\n48guLuyKnQUvScvTqCM0wbcVEeUUbqdHbogGIJzaseEZuvUnky98YrmJAYfK\nEu3yQkXDcAGnTNXX46ev4ByOokhEiVoiF7Kgh+tioyD0YDhocU1+3+5uRPP5\np31m9xivUrndvXkD20j13EKHRjptHP5B/oTgP/mDt7F+aoS4gbiWcjxKJb4Y\nnM5qVwHs67mQRU6EYhYsJpKH3+0Nxhv73Pmoicm7JtIoully2K+o9/OT7LXl\niGomHsc8N1nHpJpiz6ZsooW0yYX+aSJPbABDmOxsB9sjdoQFu6qYOaJ14/Qb\nrizuxiHwOnwFHcheV9Ohc1YnUAVe4pQQgNZS6lDd3N4CznUPoRNVLkRfQ18P\nuCntfya3oOBS/pfMc0NnzDaZY+/cedQXwGnTYTgrflIUVjOzVCHGBZpfTIPa\nF9z+g5VOgaA+bIVyyYdE4rvy2NWv6wbfO7fdbyox+oy4PFRhRGQjEx9MW8Yn\nNj8CpDUImbWtUsR8MbKVmTIIXn/xEtgMrBe5IBGUC0AswCF32xMzsKznZ0f0\nfOyaac05QIPpaOQEofqUFQLKyDSbzuxgvOgzTtmpUxqASFoA03MoKn8j7R7K\nVHGdG6P3D87WVNeWof9QWtx7M+U7LqiFQKR5Os0YOInfqT3FdlHTqmsWCkX7\nou4K\r\n=2gus\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"0f41ac8ac98260f8e0c476c746a1945a9a40b285","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.11","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.10.0","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.1","request-compose":"^2.1.2","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.14.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.3","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^5.3.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.11_1616251576634_0.03975585034359996","host":"s3://npm-registry-packages"}},"5.4.12":{"name":"grant","version":"5.4.12","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.12","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"33b5fa52404b23ab07bfef8c192efa8c0ed8290f","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.12.tgz","fileCount":32,"integrity":"sha512-mnWub6nZojaN87zMXWrLlDszUXtIYx7gXasvfs7+LNgXWVj48vPgV2P3Gpn/iO64gABIi8SwfDKAxLP1nlWsIg==","signatures":[{"sig":"MEYCIQDjKGAk+VMFI2jHb9l5j8hXPzk17U68LgODZbr5gI3hrgIhAMKQNZ+2ibEk8wWllOoStNC0q6YDOnsWK1wQdFuK3QEb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVmavCRA9TVsSAnZWagAAr2MQAIK37hJIfUIwj95uj422\n3PGTzh+RFpoieJI5ykrD+AZSMgYdHyV+Xz62W0VNDcOyQQI8ilvcI6GeR9qb\nk+AG1Tm0mRr43bU54pKNhSkQWHOJN7wBLKizLDWQXPIITzXEf3c/+tJ2no/m\n7LZAuy7fp73ys1Hg8thFtvq4LeWSRhCO2Of7+RF1hwtL2SdJ+AHiyWq1oOY5\nMpsEZCtLFQwUYZNSyTQJoh0MWZs73O5yDy8jzz1+6jkysE1Pq69RGHwCUi4H\nVl0LMDG526yV7yh5aAQ/UGc31jfH3UKBeGjexrTjRFr1BFVXRF/nv9BQVlW/\ngTcs0bFg9sbI5BiE/urH/XfZ6xa0g2e2+FJlSU5d+zSdswxKPyorSEghjZqB\nYahRCjAihry72s0Ww+WdF8ULxqSHHrGPLdVkS2TawykbWCdKkFGSlwW063AQ\n5aVB0g60ZaV7aTl5OMkQob20mgrae3JYE3WmAaJiljFypwEvxnWLHv5h2f23\ni/0jcesA/GLDW15GeuSY6oxBBNTiv+4EGY2ukpix879JLEVv0V/zjmF3IaMh\nX2uKad1TS9L0VItil40q2vqWfu0RBpTOOfSBreaq++MYaB7F1tcZ+mYj6eEO\nNUUfpnhWI8/q5XV4inhWa4ksdg9iM8u1umZ/MxNXPezmFmX4rCzMPA6DRAx4\nVhid\r\n=vBnF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"058665b2734538f64f265e0434b3bb39adf39e7f","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.11","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.10.0","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.1","request-compose":"^2.1.3","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.14.0","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.3","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^5.3.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.12_1616275118977_0.10714010263990903","host":"s3://npm-registry-packages"}},"5.4.13":{"name":"grant","version":"5.4.13","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.13","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"385453cbb702715630b528eb8980c0d254907f61","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.13.tgz","fileCount":32,"integrity":"sha512-dQ7kDoknZKCZN0tnjX9dJ6jwQ3t72BlSpX/Pcs2E0jD0uDeKItbzpb4teZdQIFklCKhMpHcUaceY/+uER/azQg==","signatures":[{"sig":"MEYCIQDLxjBh3rH/qJXN75+5SMU4acPKBw0BKQqoEx94/mFjGgIhAMBiavc9a5bbxw1SU/aEvT/cMH4SQ6KgeYRhd5ow+Xso","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173577,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfE0OCRA9TVsSAnZWagAAi3wP/1QDiL15uvi1iu9tUVlB\niGVL6Zm4Ep+2QWnUvmzwCH4r0RLJ+YjwLNUYrZfpb8T4+MOldqzvN8aE3+yH\nrPMuPgtL6B739TOwWwkyCHZsjgkcBXF9NLvIDuoMk9SJySbSFEIqS4tmJw93\n7SVr4Tm5wPFpGy1LQAmSDbs4lP8ap+w3WnD2f9IUaEnpfaOcDRoUEEuG3O08\ngAk3JGDNiiHdX3M+7IghwGB10vb/8ng+FeMI8o9GXqRYXpsVHe/FfwQHiOZ7\nJuyEjlWblKq3TRD4EHeJJY2+CDc/CmHitfrphXWfncAsQA2uWoe4ZbmpCI77\nZ/eWOHJ3KTAdwiRuWMGkgMVLPFoWOi+ZCcqoP9EuddzZwTVPgh1Q4cZ1aBvv\nMN47enbobSAd9b2bAgKtTFQKw1Ihdr5mos5tiJxaqb8vi6+Ecv4PSHGSO72Y\no0u9gUzbwpqNgrmvSq7+MPCJGunUBMEsgpKbqN6/KLGOEnprpPFjWo4fM1QT\n0g7Q4qfF55zOADJCPMSsIB7FegWk2qMX4ZHa2T4BCO5Uluw91YQEG9Rz7TnL\njk5NYzH7YNcrPil8kX9G/DNRgHKFLAfGe6I+eJN7HOZasApSsMyvOjJlKzPk\nDzDG7dlvyy6vgWWmoUb53+jDEfLDXUMZTs/aikS81ufESC9awbhhMPbfYWx0\nkoYO\r\n=aW6a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=8.0.0"},"gitHead":"7833d9152c529b5436a229baff9f5790668a4aae","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.11","description":"OAuth Proxy","directories":{},"_nodeVersion":"8.17.0","dependencies":{"qs":"^6.10.0","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","request-oauth":"^1.0.1","request-compose":"^2.1.3","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^7.2.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.14.2","@hapi/yar":"^9.2.1","coveralls":"^3.1.0","koa-mount":"^4.0.0","@hapi/hapi":"^18.4.1","body-parser":"^1.19.0","koa-session":"^6.1.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.3.3","fastify-cookie":"^5.3.0","koa-bodyparser":"^4.2.1","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.3","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.13_1618758925790_0.8098117187354943","host":"s3://npm-registry-packages"}},"5.4.14":{"name":"grant","version":"5.4.14","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.14","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"5ba47df3bfd5b83ad84026f15ffb370a2ad4fb2c","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.14.tgz","fileCount":32,"integrity":"sha512-O7MgWrWA3Gi1wzFYhGw2wZ2lG2wixk6VMBJCSXiI8SrFH3nAA2Kw2O4gZa0Zu8+BBs6cmXhj4Ukjs5eGXlrWmg==","signatures":[{"sig":"MEYCIQCt/gZRS2vnK9FtFBgW/n4Q4+Ium84cRXlSGS+4cwwJDAIhAN07RnNeYkO+AhPE4RLUx8zVSfKrEavqH9Oqfl0rDlm0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoTzFCRA9TVsSAnZWagAAtAgP/0jPEf4/ZLW4RxqDDQ5b\neSzKciFEHxMooVBTmhmoMr6HC6he5f7yPqVPanRVDXKjmMMahlj9DuZVpJwW\n4bAqB80rbpNkbGqaTsFDMoosOA7Y3P8vnNc0MRCUEuPP/mpUAUddlAivlWEV\ngYh4EPldf9aZbjzrVXw4ppaqsQ/uuOpJm9t9MWzdgvKhqDxGbhdbqeYeW/6X\nHzgS5+v3wO/2O5/Wqwiy1Zs+c7cytnX7xmNpJ76h3vNGIf7sIoukOE441/ww\nUnPtTntAMx/GhHA0s+4lGVxcjczHp7M5VNDb5V5INaYpZdvp3G6+6bZNCctC\nX11dSrIDvoIR10eTS8HwrZ7Fs57z+zwpovaBi1akLEH1Ym3zBAruc7sSnqJU\nqf4QnsROAjx2ZA+quTci0tIvixJKipRxMC05eUhoLyNFNDyZwL/NwN9QuM3g\nzMf+po1a2Ljx0/RGkEJnidbIVvUPVUrrPy9MQYsZBYf8Gy37Z7t8QbO9B+m3\nHK2i9phzbxPX8qWv6VOjJPE6/o72C2liHpqCPHRUk7t/3Mz+5xiwf+ElLWW2\n5mRbswxUZeu8XztefrMaqD5Ql46hKhX3jjbBNZNKGc80eSgwkJ5BMpA3+cpC\nTcXy979f9SbBoCXY6ERhyP1CnF4VzAOduXf3x/4vcskq2HpiKNG0VqNDj/Xi\ncrhx\r\n=+qZk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"c140750e97724c17646f541edb5247095eca25f2","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.12","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.1","dependencies":{"qs":"^6.10.1","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^8.4.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.15.1","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.1.3","body-parser":"^1.19.0","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.3.1","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.1","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.14_1621179588740_0.35909191449931366","host":"s3://npm-registry-packages"}},"5.4.15":{"name":"grant","version":"5.4.15","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.15","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"4bc19b6e3ab67ac33135a7d176460dafb8e38fb7","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.15.tgz","fileCount":32,"integrity":"sha512-P2DQAgOKD4ySa+82c3DNDRLma74w/DtdJ60KsNd056oywvEAHTCCXaDBVct2vM4LPSoP8OVD/HctJEQyhExl7Q==","signatures":[{"sig":"MEQCIEvposUcGwIuYPNmZtX79cpRCR3345luuI0Tn+d/C04hAiA8kqT/iUx9CqV1xT9nwCUgb5Dgbj5xnuEQc8PrSAOs7Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174567,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgz25/CRA9TVsSAnZWagAAdRgP/AqnDxWHTR75WPDtbeQk\nfkZ8a0mg6pD3+1PVNiBxAB1gWhhzwZgmO0D9k9ucwq5kP3vDAR5ov4IoQeYf\nnh/ePGGApIMnJzzpFQBD0qyHDZD8ZqvsR+swfeSBeP9yCfBcCSStLHkyIww1\ncocPTf5VOvJ/BZMKRIt9reruVFQiUb/TBG8fc7Ngy2SRVbIkMYS/1KRqamns\nM3vk3BdTG9V9+Z+NyLRbywBHOV+6tp3THXcrJWV/JGK/4SZD7P4g4XCG3QlA\nhNRXgX4pGGtA00UzV+I2O20w/Ky+rN35Oiq/oL7Bns2vgt35EUoZagJGDEDa\nfjSpVTE+dtAd71vwUWemG0hPgsHRSE0D2n5zpX8hipybKO6G3j9Ju/9n7TMP\n2tz0zJG882s7dhCv2cgK5rBmwuPGSRjFSVUcnCcVNlS8lURQS/Pw/SVt6F0H\nKZbY0s6TW9mCP6DWFgZN8FutbEWZexyX3F0Yux7AEmp8u9wdNd2CLo2Qg/PR\nTdJyEUlCypa/hOAydn5IS/3hXfw9MVh6T+mcPom9qDsOawTlHwK4lMEb9s1R\n4QHxgvs+s1cFvPhoEIUoglIyAiWh1Sid7v0bi/9gWw8JD7xeuljJSvgQUyY6\ncE8GhprHFt3zI7rVXDjibEEaokaKkXR+0SZjnjGXioTU1XlbSkYNucLdNHUj\nPXOu\r\n=8Z+P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"b41b4bbf9f90f5000e9a171d946e891c520bf66e","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.12","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.1","dependencies":{"qs":"^6.10.1","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^8.4.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.18.0","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.1.4","body-parser":"^1.19.0","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.3.1","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.15_1624206974299_0.08394144950654447","host":"s3://npm-registry-packages"}},"5.4.16":{"name":"grant","version":"5.4.16","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.16","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"45cbb65d4498d7f4f60c925bf31faad0362a3fc0","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.16.tgz","fileCount":32,"integrity":"sha512-o4z8bmhaMmze/sqs/QZo1Tn9wp7gX7geYDJuAe8cbvMupWd9JW7k5Y8Apf1dNhrxEhETELPMpesjMXQcCuq+GQ==","signatures":[{"sig":"MEUCIQDUjPOSh7uMv1FlD8DYb53i21dFHFG5Pa+PTqWOQWEijAIgX7HI6Hclys1Wz+KVws4bX/mQW6N8M6B4HQetaAPdujA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9D6GCRA9TVsSAnZWagAAmGwP/j95pKxufKrgjvU1fSF2\nLj+ZvIuGyLvBdA6JzuGKL0PyNdX5wojXMYo3P7DAL0I7405wsbhXEDuNowfD\nDjBkwGlCEK8uWrTAOwkLkTie8Upq1gfVGsDfms3JHCeCmXX1dQ2erkBZ2aso\nJby8hZ73S1NB+ZR9PDKVlgI3M3hPvdpgMHfgrtylDX8zQ1XWquZ9OB+TMcVb\nw6JkZmYB5jPxGiAF09MbyUK0zD7WhgA4FFMclBTfs/jQsXLJloHTRCAEJBK0\nimvFd3BKgPUjNER+6VaNaONmhlN/DForh9OCMJ1NrWly9FlBcTCKoorOSMvi\ntnDnEQzhWgrXeSi2yp6rhvsVcVG3Hl/kA6VsBZAeajFkjQMptyBQ3AZuYE7V\n/eCOSmbbB51cNUntSuSG0clMCMV2nAAbAK5ByTfLKs+2lLcfeLbfyPy8QmHf\nhp6LW8qx5e3zhY63TPPUIzslt2hUUkoiAxMrj0tSgNAaCI0w//kOEICXvOty\nMLSziyc6lAjYak/zA0mqv6lmX8tClH/p3AuXsQui5uZgfvcXcM5SWn0syNGk\nl08LSBxj0fLwJs48n9RasJVOkZTlidfaTQgQv6RHWgagvCxt/vAZ5V+mlid/\nXDLp7OxA59BU5uatS0TuHwcqfWlLap/hd49nNOb2rHWN/8jNoByyeLyOqaWY\n2RXS\r\n=3Si7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"312f8325c436c607eaac359e987d7e2cb84572d8","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.12","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.1","dependencies":{"qs":"^6.10.1","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^8.4.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.18.0","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.1.4","body-parser":"^1.19.0","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.3.1","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","fastify-session":"^5.2.1","fastify-formbody":"^5.0.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.16_1626619526630_0.09351510984575762","host":"s3://npm-registry-packages"}},"5.4.17":{"name":"grant","version":"5.4.17","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.17","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"59aad7f04c1843612cb0e6816e038a07f65c9859","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.17.tgz","fileCount":32,"integrity":"sha512-bLpJYxkmi3kg/gV5v9Iv7xqgzAgWP7MhXaMwZVKnzhwiFPKZGzntUgq61aQ8QuLdmpm7tPxRv9Rw6xY4vqaAsA==","signatures":[{"sig":"MEUCIQDP7QzDWoJP6VZRgs2p73lBv99vGrYd1X+b1csN34JoGwIgaj5H5pht5hH+2JlZuoqcjgl4P4FMAjRGuW7LxxecGgA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhM45ACRA9TVsSAnZWagAA2CEQAJ7lEKK0u4ggYieUbu8m\nK4YX+9yVqoWlFQ74a+qAHiNOIYPjXP0mekHUXeQeJdblQN2wIdlqqGdFHiOT\naXM0KqmWVNEL7JR+2SbaQ++3P2bIgOBs1/awIbWtKM2R2xFmPXBk6CR8Do7d\nbkU5TTbgwk9DwW9jS2r4gEgcnI9mjSkLRrKU2ezcMooioDvt7n4qnsjCLoMa\nU/MI92ILJb25NQPw5IW8pkKnk2E3WupIURfAP2Q94XtJGOqQVAHF53fOYmnT\nlVVIL/pjy/cwrs96bOwylhf0Vqx52qkqaapFy2dQr3JaI3xuKh4Uazje60BB\nMyi0lYjbGvZ8HFrRCMs2Z8bz8fkJogkPEFv5H3rSHvX5E31cSKIEIJgIl6Zi\n9KdooHYmrXYGDtlDFCCBaY/bib1sUHwmDkOOAzqnx3b0XAgqAVrgGY2tSyEJ\nz5keLJNTK80o4uWeRBO2c5ONRsRnBdhks4eIarT33WNezjx73T/eH8J+7zz7\nvqfkM0hL3hcRUoBWZw2m+cQfZ8nY+eF7aIWoQdG6oQSLFXFfZz3lVPb/2Ek7\n+eK2C7fiU3Xu0Nt7JkK1ihXMmnL6OFByfFpKcNB95JoH3f5CVhgeUGxixgoD\n7+XcaMsrBJZBiRjV+dk8bMKK+eSur+EY4Fs+uxOLg6KIBw7dI+hDa7aPpnDU\nVK3V\r\n=KdTL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"a913d8f1690462f3e6cac23bdfb84ec208b40963","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.12","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.1","dependencies":{"qs":"^6.10.1","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^8.4.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.20.2","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.1.5","body-parser":"^1.19.0","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.3.1","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","@fastify/session":"^6.1.1","fastify-formbody":"^5.1.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.17_1630768703915_0.22015444944574014","host":"s3://npm-registry-packages"}},"5.4.18":{"name":"grant","version":"5.4.18","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.18","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"4d95ef7be1db6169feb638a26762a9525faea675","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.18.tgz","fileCount":32,"integrity":"sha512-5rw0RkbpmzgM1Q4n8FSasnlqud2NcyxFaEMjA++JQ77MGbRL8VnUZ3JeBoF0HTyfI+xzJbHn68LhtLdYnBz3rA==","signatures":[{"sig":"MEUCICKX8BNaWhV/3U2h3RSheikOmX8YZ0ed3JC4nVYa85uYAiEAw9XVCW52QfayPBqI4EI1C9SzdigOkrx/Aredju6jWkA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176786},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"0ba063bb1fa5fb9abd4c71ea3c808b2599950f60","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.12","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.1","dependencies":{"qs":"^6.10.1","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.1","nyc":"^15.1.0","mocha":"^8.4.0","koa-qs":"^3.0.0","express":"^4.17.1","fastify":"^3.20.2","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.1.5","body-parser":"^1.19.0","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.3.1","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","@fastify/session":"^6.1.1","fastify-formbody":"^5.1.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.18_1634625612079_0.4796406265198654","host":"s3://npm-registry-packages"}},"5.4.19":{"name":"grant","version":"5.4.19","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.19","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"5f4d2ef1cff38b93f284836dfd5b95321815e512","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.19.tgz","fileCount":32,"integrity":"sha512-VCYpHZP2ss7OYdKFIsSK2/WD7Vrf5klzj+CA/6p8PC1mPHqTLEDhMFejnmjICBZytl858eNUWFs8yCUZ28eevg==","signatures":[{"sig":"MEYCIQDq3uu7Q2tUIersiPYuLt4utVL0LXpgoPbEPcQ3NmKU0wIhAIY8D87Bxg5gFTLS/QZ9alEeikna8dSGQZ+DA46SvALE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0sodCRA9TVsSAnZWagAAqEQP+gPA5lL4MX+fA3qoBM8W\nnKDgAzCKkoqsDveiNXj1ifDvEGdIUktu5fV/EHSrydWxZAvb+qdgUc5satsX\n5D00kzeHQn1vm4jnU5geF3hGARtYeLB3B+Gs+HUVn3D3oQ0o1lCchJtGk3Fc\nodM3TLMlByjVCcqXscRQjta0W66hmaL6O+Gf24rHfx7l/zHqJqbDVrDMmiMZ\nvdMYu5Jx8LOmmaHUwPvVdXI0773KAZcUn1ScohEEg7azT9zhZD2XK2WmBOvu\nI9G3Fo47o5PD7CECMQo1GfSkwgViCmhcCDBDsarNf0DwqioWRW4T8nbBorPV\n0eLvGwOln7EeWRXpP8kuc/Y5hgklIogXcfvYhyxyzzvVgZRK8L7sHuRt21zC\nS2xrEMyCQLijy0i6mOvq+cY1wFTPhMUcQk9/6fmK75AaOgqEMWlBZfPm6Ldd\n6T+OJDRjhnerhlNWrJtU6dcAPi7dXSoEkJekBWfIrHyBQM15amu/iNVi9EUF\nI2PNt86poshurbVikRi2JFHAPEBBVYphVcLvV8GoqfmEh7J3IyA2v3l47eDD\nyJxznGH1JmQI+gfuQrH61MB1bZk6RymLZTUddwzs6IcrPM/YqCJIjPNyLo11\numz6ttb5s/Bimg/m4RJfk60bORCfMKJA27zDU3Fff7e5adiHJfFh7U6JQ6fD\n5kjx\r\n=oGN2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"6aca9d91cb009f1cfb663bc5032b14bc92870f7e","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.15","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.8","dependencies":{"qs":"^6.10.2","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.4","nyc":"^15.1.0","mocha":"^9.1.3","koa-qs":"^3.0.0","express":"^4.17.2","fastify":"^3.25.2","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.2.1","body-parser":"^1.19.1","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.4.0","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","@fastify/session":"^6.3.0","fastify-formbody":"^5.2.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.19_1641204253626_0.04118712391773793","host":"s3://npm-registry-packages"}},"5.4.20":{"name":"grant","version":"5.4.20","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.20","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"01ad40559057920e2297aa1d74043edee1056548","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.20.tgz","fileCount":32,"integrity":"sha512-VwoKfA8IgMIbFDBVybb6iTqkSEyy+uZYeXRnaF6L/Dc9X2eq73ciEXQ71atCoVDy6yOD2YGszs+cGAACNK6NqQ==","signatures":[{"sig":"MEUCIA52YvFaCWs5iaq92p0Wj/OKaOjJiGrWTyeFcaoloazlAiEA8WLbfjwfG6aBJC0q9KBtc4gGgmFfbkYLWV/DV9xYeJU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178316,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7ZJtCRA9TVsSAnZWagAAXxYP/1t3cCflySXdwlIyw5yZ\nFtgY7kLEIPssoSvxy260lxqdYHM3KoKB0iRWwfNrMcptHvtAblXnIXamfxyq\n4Suh686lCdBgQbNq98ZzoqykG8e3Md3SWceFyXCXcfgbeI5B/rsGnAIbNZEF\nTh7qoF6Vi0x7BzpMvMmWVvsg7p35WUddIQ7EWR24eDmAGmIrSniCchultdXv\nH+JN7hV6ACTMkDa9IVbWikoMAlbkT5avmvTtuTxZ8/aI3kPatmKFgH/ysKZn\nkhBqmCJWD3mlCzwxZX/z5NuXJkoTi8kDbYQmCkRtYu1AOGFECC/yaXQn6YMB\n0G7lkEJz73aeEESTFBJGCk4YMkv41n2Q7heIopLlIKlYcH7ppsjmqkZ/y+5z\nYv1FGSbjygWkNu5OtE7FEbOX7oUCDfRweZcGnAFom+uuq8vgcNKFtH8V2/1a\nbjlYNm8/0QQj6EAmBkSbbHvRAhC83NoJYIz5TRN9FdBSUOOJy0qAK5wOp0mP\n4MD+n9/vf4AopOBbyybuCuKyUJ2tN9JuefgWceR6eDq4qvyVlkeAOA0cAeQ9\nfARsVQIBto5r/CHt4vezipn9N/PxRpiOoaWNZbyP9Mt4mWJ7rfo2xIFfqVNB\nkvXe2IeZOZLkgH5EvNDoxNQVcIc807zrWtLxvgU4Fq7QIbdwJNVoRyYNmU6j\nQngp\r\n=aQER\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"9f63907e03c9351c0beeb258ba075162a6dc68d3","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.15","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.8","dependencies":{"qs":"^6.10.2","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.4","nyc":"^15.1.0","mocha":"^9.1.3","koa-qs":"^3.0.0","express":"^4.17.2","fastify":"^3.25.2","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.2.1","body-parser":"^1.19.1","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.4.0","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","@fastify/session":"^6.3.0","fastify-formbody":"^5.2.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.20_1642959468958_0.04089994092261806","host":"s3://npm-registry-packages"}},"5.4.21":{"name":"grant","version":"5.4.21","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.21","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"3306942f4a19e40d008e247d071104b19173c0c6","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.21.tgz","fileCount":32,"integrity":"sha512-QaoZudI9Gmh2W415gd71Iul6gpVH9sG1SkjfnGHtqYZopQDQ5PUVxRol5zFCrwGi9S0EbExbelHlZScgdChg2w==","signatures":[{"sig":"MEYCIQCgbotuGUDekDjX2/IOCLsloOAzhjl2ciBnCk3RUxmO8wIhAN4qZ5pu48Wb0D+aWTHurhSdYMe4vjILGwJFncaIPMVN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKLBXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpeOw//SdSYhJzLSCtl9m0vyyWAL3Z51AG7AoQomADRhh4iG5v4ohGj\r\nuBPP/eDTtLSO14hEOpP/CG3xJKYmCWLWk/KLsJV8y/q6YYxOUKGvqCS0COOy\r\nAx8dARk4JcZkkAbeXdmFSP+CV/Pv7+7wmCVZ8clWDc3nQOM8DTKfqHcVhD2y\r\nx4S4mtB8EWFI+uX+QpxeYjVImYp7kJFstUZjanqaIi03O0nWyKqhMSY4nBnH\r\noN9UUtzvTywZjMdJAhESRz2jq+n9G7GuRAB1DkgJ4lB60ZwU9YrgGItXDW5l\r\n5IQGntV6mKkqqABGlz4OLfUIMYR9FtPDP/Vpffc0tIm4sT4K0FHetLL5N5DK\r\n3yVdHnwIsGlwaxw0n5gAgPJr/J3lTmpR+YelReLXwEm/4sZbcFahTIr8arr6\r\nN7kasfv85g9IojLqvgC2edvkmnErlm911w1sCdkN73v7j1sQTHU/Yw0jxWI/\r\nzR8WM/SWp86KtTJsxyi0CEpgX3eosW6xAohsyLdY0zV5Ou2pQKID/JaRbQy7\r\nXYdataeYS6An0NveHXNxh3OplWVC/MbLzQe+Vdt+mHn+nrRKJpsCCOSwYghw\r\n6ryLq5rUgUVTtd9WS8fKkAy7u4na+uZ4jwgkSHIqwQpAVyKT5Nu0+hBRlM2E\r\nLcr1WLs593pDxa5Uq9drSdP8cUJI3qSub7w=\r\n=gUuQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"4d6928346e97e9ed3bbc8d6d4106d254c57c5915","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"6.14.16","description":"OAuth Proxy","directories":{},"_nodeVersion":"12.22.8","dependencies":{"qs":"^6.10.2","jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","request-oauth":"^1.0.1","request-compose":"^2.1.4","cookie-signature":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.13.4","nyc":"^15.1.0","mocha":"^9.1.3","koa-qs":"^3.0.0","express":"^4.17.2","fastify":"^3.25.2","@hapi/yar":"^10.1.1","koa-mount":"^4.0.0","@hapi/hapi":"^20.2.1","body-parser":"^1.19.1","koa-session":"^6.2.0","request-logs":"^2.1.4","grant-profile":"^1.0.2","cookie-session":"^1.4.0","fastify-cookie":"^5.4.0","koa-bodyparser":"^4.3.0","request-cookie":"^1.0.0","@curveball/core":"0.14.2","express-session":"^1.17.2","@fastify/session":"^6.3.0","fastify-formbody":"^5.2.0","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.4.1","jwk-to-pem":"^2.0.5","cookie-signature":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.21_1646833750860_0.016348165440031037","host":"s3://npm-registry-packages"}},"5.4.22":{"name":"grant","version":"5.4.22","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.22","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"b4756e7bb51a6a0091387467b4058ec6a750d69e","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.22.tgz","fileCount":32,"integrity":"sha512-DEi+/JjXT84mmFYhSmv+SX14v+3Z7vuCIYAMwtdPCTXHMSLhWqSYqWAMXDUQZuV7yaJv2d84AYnkCFNooLKBsA==","signatures":[{"sig":"MEUCIQC56MfLlSClRns2LCTqGtUth8vaARdzXMo1rhXVY2MJeAIgQkuJzAPtznTv/prpfWwSqFBpc9viRIjgdrO/gNKZlqk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180127},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"70e89a5b822ac8180840668d18851bf21ec58359","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"10.1.0","description":"OAuth Proxy","directories":{},"_nodeVersion":"18.18.0","dependencies":{"qs":"^6.11.2","request-oauth":"^1.0.1","request-compose":"^2.1.6"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.14.2","nyc":"^15.1.0","mocha":"^10.2.0","koa-qs":"^3.0.0","express":"^4.18.2","fastify":"^4.23.2","@hapi/yar":"^11.0.1","koa-mount":"^4.0.0","@hapi/hapi":"^21.3.2","body-parser":"^1.20.2","koa-session":"^6.4.0","request-logs":"^2.1.5","grant-profile":"^1.0.2","cookie-session":"^2.0.0","koa-bodyparser":"^4.4.1","request-cookie":"^1.0.1","@curveball/core":"0.14.2","@fastify/cookie":"^9.1.0","express-session":"^1.17.3","@fastify/session":"^10.5.0","@curveball/router":"0.2.4","@fastify/formbody":"^7.4.0","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.5.0","jwk-to-pem":"^2.0.5","cookie-signature":"^1.2.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.22_1696577784767_0.15078030573062673","host":"s3://npm-registry-packages"}},"5.4.23":{"name":"grant","version":"5.4.23","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"author":{"url":"https://simov.github.io","name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com"},"license":"MIT","_id":"grant@5.4.23","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"homepage":"https://github.com/simov/grant","bugs":{"url":"https://github.com/simov/grant/issues"},"dist":{"shasum":"32412f56b2cb5ae3f3ecaa7474f574e26865e751","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.23.tgz","fileCount":32,"integrity":"sha512-lEMfgem990lWTU+j9jbOKmIsvvetVlwGzsWjoCgKz9zKcP7edI6mjyUA5QUSn7aeBYONTE3WnfhBhvONQGP1Hg==","signatures":[{"sig":"MEYCIQDrB/kinO2TvQEfvUqykt0aMXaUkD74BqiITEJyT0tQrwIhAJcetsRYOwvOLhlHxn202zgWgNSqdU93VcqpUgs1MeIh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181169},"main":"./grant.js","types":"grant.d.ts","engines":{"node":">=12.0.0"},"gitHead":"61fe48a8dac6aa4ec5764fadff0898b743b85588","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"repository":{"url":"git+https://github.com/simov/grant.git","type":"git"},"_npmVersion":"10.7.0","description":"OAuth Proxy","directories":{},"_nodeVersion":"18.20.4","dependencies":{"qs":"^6.13.0","request-oauth":"^1.0.1","request-compose":"^2.1.7"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.15.3","nyc":"^17.0.0","mocha":"^10.7.3","koa-qs":"^3.0.0","express":"^4.21.0","fastify":"^4.28.1","@hapi/yar":"^11.0.2","koa-mount":"^4.0.0","@hapi/hapi":"^21.3.10","body-parser":"^1.20.3","koa-session":"^6.4.0","request-logs":"^2.1.5","grant-profile":"^1.0.2","cookie-session":"^2.1.0","koa-bodyparser":"^4.4.1","request-cookie":"^1.0.1","@curveball/core":"0.14.2","@fastify/cookie":"^9.4.0","express-session":"^1.18.0","@fastify/session":"^10.9.0","@curveball/router":"0.2.4","@fastify/formbody":"^7.4.0","@curveball/session":"0.5.0","@curveball/bodyparser":"0.4.6"},"optionalDependencies":{"jws":"^4.0.0","cookie":"^0.6.0","jwk-to-pem":"^2.0.6","cookie-signature":"^1.2.1"},"_npmOperationalInternal":{"tmp":"tmp/grant_5.4.23_1726511591754_0.7837040549804772","host":"s3://npm-registry-packages"}},"5.4.24":{"name":"grant","version":"5.4.24","description":"OAuth Proxy","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"license":"MIT","homepage":"https://github.com/simov/grant","author":{"name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com","url":"https://simov.github.io"},"repository":{"type":"git","url":"git+https://github.com/simov/grant.git"},"dependencies":{"qs":"^6.14.0","request-compose":"^2.1.7","request-oauth":"^1.0.1"},"optionalDependencies":{"cookie":"^0.7.2","cookie-signature":"^1.2.2","jwk-to-pem":"^2.0.7","jws":"^4.0.0"},"devDependencies":{"@curveball/bodyparser":"0.4.6","@curveball/core":"0.14.2","@curveball/router":"0.2.4","@curveball/session":"0.5.0","@fastify/cookie":"^9.4.0","@fastify/formbody":"^7.4.0","@fastify/session":"^10.9.0","@hapi/hapi":"^21.3.10","@hapi/yar":"^11.0.2","body-parser":"^1.20.3","cookie-session":"^2.1.0","express":"^4.21.0","express-session":"^1.18.0","fastify":"^4.28.1","grant-profile":"^1.0.2","koa":"^2.15.3","koa-bodyparser":"^4.4.1","koa-mount":"^4.0.0","koa-qs":"^3.0.0","koa-session":"^6.4.0","mocha":"^10.7.3","nyc":"^17.0.0","request-cookie":"^1.0.1","request-logs":"^2.1.5"},"main":"./grant.js","types":"grant.d.ts","scripts":{"test":"npm run test:ci","test:ci":"npx mocha --recursive","test:cov":"npx nyc --reporter=lcov --reporter=text-summary mocha -- --recursive"},"engines":{"node":">=12.0.0"},"_id":"grant@5.4.24","gitHead":"500ab2066e177f14856fd50bf0b507651111692b","bugs":{"url":"https://github.com/simov/grant/issues"},"_nodeVersion":"18.20.4","_npmVersion":"10.7.0","dist":{"integrity":"sha512-PD5AvSI7wgCBDi2mEd6M/TIe+70c/fVc3Ik4B0s4mloWTy9J800eUEcxivOiyqSP9wvBy2QjWq1JR8gOfDMnEg==","shasum":"0b088e39c988f494c81fc0f534214f49a1242638","tarball":"https://registry.npmjs.org/grant/-/grant-5.4.24.tgz","fileCount":32,"unpackedSize":181220,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHP4YH+Ighe6vb9AwlQ/hjaDlk6VxEEtJ++RbEL4Q1MSAiBWJUCz3g2UF9DWOvMoU1sUQtRfY9aCJEOptK27ArWzXg=="}]},"_npmUser":{"name":"simov","email":"simeonvelichkov@gmail.com"},"directories":{},"maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/grant_5.4.24_1738690274726_0.8789306587512797"},"_hasShrinkwrap":false}},"time":{"created":"2014-06-22T15:28:14.918Z","modified":"2025-02-04T17:31:15.116Z","1.0.0":"2014-06-22T15:28:17.198Z","1.0.1":"2014-06-23T09:13:29.394Z","1.0.2":"2014-07-10T04:52:19.374Z","1.0.3":"2014-08-02T16:43:41.982Z","1.0.4":"2014-08-11T11:03:39.815Z","1.0.5":"2014-08-18T09:37:57.492Z","1.0.6":"2014-08-18T11:06:59.044Z","1.0.7":"2014-09-22T11:18:12.600Z","1.0.8":"2014-09-22T12:21:34.332Z","1.0.9":"2014-09-26T17:40:16.271Z","1.1.0":"2014-10-08T14:17:16.968Z","1.1.1":"2014-10-21T20:21:00.722Z","1.1.2":"2014-10-30T08:33:02.175Z","1.1.3":"2014-11-09T16:56:27.360Z","1.1.4":"2014-11-27T09:51:16.691Z","2.0.0":"2015-01-06T13:53:51.112Z","2.0.1":"2015-03-02T07:37:11.373Z","2.0.2":"2015-03-14T22:23:01.152Z","3.0.0":"2015-03-14T22:37:17.254Z","3.0.1":"2015-03-15T17:05:42.598Z","3.0.2":"2015-03-17T14:29:48.931Z","3.0.3":"2015-04-02T11:06:32.480Z","3.1.0":"2015-04-14T14:49:47.174Z","3.2.0":"2015-04-23T08:43:43.603Z","3.3.0":"2015-05-17T18:54:54.059Z","3.3.1":"2015-05-21T08:54:43.491Z","3.3.2":"2015-06-05T09:03:50.888Z","3.3.3":"2015-06-24T14:32:22.810Z","3.4.0":"2015-07-20T09:35:44.814Z","3.5.0":"2015-08-30T15:19:59.809Z","3.5.1":"2015-09-30T08:25:39.883Z","3.5.2":"2015-10-30T08:07:08.919Z","3.5.3":"2015-11-28T08:57:15.191Z","3.5.4":"2015-12-28T17:55:47.198Z","3.5.5":"2016-01-17T12:09:30.434Z","3.6.0":"2016-03-27T08:53:00.617Z","3.6.1":"2016-04-25T15:11:47.632Z","3.6.2":"2016-05-17T08:16:11.243Z","3.6.3":"2016-07-26T21:41:41.457Z","3.6.4":"2016-08-30T13:59:13.204Z","3.6.5":"2016-09-30T13:26:13.046Z","3.7.0":"2016-12-29T11:09:00.860Z","3.7.1":"2017-03-06T16:07:53.355Z","3.7.2":"2017-04-20T12:23:33.204Z","3.8.0":"2017-06-07T15:57:19.056Z","3.8.1":"2017-12-13T10:57:19.652Z","3.8.2":"2018-02-13T14:02:46.877Z","4.0.0":"2018-03-14T12:28:02.562Z","4.0.1":"2018-03-15T00:12:05.324Z","4.1.0":"2018-03-18T21:42:44.751Z","4.1.1":"2018-04-22T13:02:59.430Z","4.1.2":"2018-07-16T12:23:51.845Z","4.2.0":"2018-11-10T09:18:17.857Z","4.2.1":"2018-11-27T12:28:00.821Z","4.2.2":"2018-12-07T10:46:21.689Z","4.3.0":"2019-01-02T17:01:01.154Z","4.3.1":"2019-01-06T16:04:01.168Z","4.4.0":"2019-01-11T13:44:01.016Z","4.4.1":"2019-01-25T09:47:54.414Z","4.5.0":"2019-03-03T23:32:00.721Z","4.5.1":"2019-04-07T15:22:27.764Z","4.5.2":"2019-05-19T10:44:17.339Z","4.6.0":"2019-06-23T18:06:20.052Z","4.6.1":"2019-07-06T10:06:02.941Z","4.6.2":"2019-07-29T07:20:51.986Z","4.6.3":"2019-09-07T17:35:58.159Z","4.6.4":"2019-10-27T13:17:03.822Z","4.6.5":"2019-12-07T13:43:19.579Z","4.6.6":"2020-01-01T13:19:06.500Z","4.7.0":"2020-01-26T12:51:21.370Z","5.0.0":"2020-04-18T07:40:59.120Z","5.0.1":"2020-05-01T08:30:30.156Z","5.1.0":"2020-05-25T14:40:10.987Z","5.1.1":"2020-05-25T17:13:46.174Z","5.2.0":"2020-06-07T20:39:19.579Z","5.3.0":"2020-08-09T09:11:48.633Z","5.4.0":"2020-09-01T04:36:44.270Z","5.4.1":"2020-09-14T08:56:14.147Z","5.4.2":"2020-09-17T08:56:24.957Z","5.4.3":"2020-09-21T06:02:55.702Z","5.4.4":"2020-09-23T06:42:54.951Z","5.4.5":"2020-10-11T16:01:47.674Z","5.4.6":"2020-11-16T06:50:24.731Z","5.4.7":"2020-11-16T18:29:14.374Z","5.4.8":"2020-11-17T09:48:59.695Z","5.4.9":"2020-11-22T14:54:31.588Z","5.4.10":"2021-03-07T08:33:38.422Z","5.4.11":"2021-03-20T14:46:16.785Z","5.4.12":"2021-03-20T21:18:39.105Z","5.4.13":"2021-04-18T15:15:25.942Z","5.4.14":"2021-05-16T15:39:48.884Z","5.4.15":"2021-06-20T16:36:14.681Z","5.4.16":"2021-07-18T14:45:26.951Z","5.4.17":"2021-09-04T15:18:24.301Z","5.4.18":"2021-10-19T06:40:12.260Z","5.4.19":"2022-01-03T10:04:13.831Z","5.4.20":"2022-01-23T17:37:49.119Z","5.4.21":"2022-03-09T13:49:11.065Z","5.4.22":"2023-10-06T07:36:24.994Z","5.4.23":"2024-09-16T18:33:11.996Z","5.4.24":"2025-02-04T17:31:14.941Z"},"bugs":{"url":"https://github.com/simov/grant/issues"},"author":{"name":"Simeon Velichkov","email":"simeonvelichkov@gmail.com","url":"https://simov.github.io"},"license":"MIT","homepage":"https://github.com/simov/grant","keywords":["oauth","oauth2","openid","openid-connect","authentication","authorization","proxy","middleware","lambda","express","koa","hapi","fastify","aws","azure","google-cloud","vercel"],"repository":{"type":"git","url":"git+https://github.com/simov/grant.git"},"description":"OAuth Proxy","maintainers":[{"name":"simov","email":"simeonvelichkov@gmail.com"}],"readme":"\n# Grant\n\n[![npm-version]][npm] [![test-ci-img]][test-ci-url] [![test-cov-img]][test-cov-url] [![snyk-vulnerabilities]][snyk]\n\n> _OAuth Proxy_\n\n## 200+ Supported Providers / [OAuth Playground][grant-oauth]\n\n[`23andme`](https://api.23andme.com) | [`500px`](https://github.com/500px/api-documentation) | [`acton`](https://developer.act-on.com) | [`acuityscheduling`](https://developers.acuityscheduling.com) | [`adobe`](https://developer.adobe.com) | [`aha`](https://www.aha.io/api) | [`alchemer`](https://apihelp.alchemer.com) | [`amazon`](https://login.amazon.com/documentation) | [`angellist`](https://angel.co/api) | [`apple`](https://developer.apple.com) | [`arcgis`](https://developers.arcgis.com) | [`asana`](https://asana.com/developers) | [`assembla`](https://api-docs.assembla.cc) | [`atlassian`](https://developer.atlassian.com) | [`auth0`](https://auth0.com/docs) | [`authentik`](https://docs.goauthentik.io/docs) | [`authentiq`](https://www.authentiq.com/developers) | [`authing`](https://www.authing.cn/developer) | [`autodesk`](https://forge.autodesk.com) | [`aweber`](https://api.aweber.com) | [`axosoft`](https://developer.axosoft.com) | [`baidu`](https://developer.baidu.com) | [`basecamp`](https://github.com/basecamp/bc3-api) | [`battlenet`](https://develop.battle.net) | [`beatport`](https://oauth-api.beatport.com) | [`bitbucket`](https://developer.atlassian.com/bitbucket/api/2/reference/) | [`bitly`](https://dev.bitly.com) | [`box`](https://developer.box.com) | [`buffer`](https://buffer.com/developers) | [`campaignmonitor`](https://www.campaignmonitor.com/api) | [`cas`](https://apereo.github.io/cas/) | [`cheddar`](https://cheddarapp.com/developer) | [`clio`](https://app.clio.com/api/v4/documentation) | [`cognito`](https://aws.amazon.com/cognito/) | [`coinbase`](https://developers.coinbase.com) | [`concur`](https://developer.concur.com) | [`constantcontact`](https://developer.constantcontact.com) | [`coursera`](https://building.coursera.org) | [`crossid`](https://developer.crossid.io) | [`dailymotion`](https://developer.dailymotion.com) | [`deezer`](https://developers.deezer.com) | [`delivery`](https://developers.delivery.com) | [`deputy`](https://www.deputy.com/api-doc/) | [`deviantart`](https://www.deviantart.com/developers/) | [`digitalocean`](https://developers.digitalocean.com) | [`discogs`](https://www.discogs.com/developers/) | [`discord`](https://discord.com/developers/docs/intro) | [`disqus`](https://disqus.com/api/docs) | [`docusign`](https://developers.docusign.com) | [`dribbble`](https://developer.dribbble.com) | [`dropbox`](https://www.dropbox.com/developers) | [`ebay`](https://developer.ebay.com) | [`echosign`](https://secure.echosign.com/public/docs/restapi/v3) | [`ecwid`](https://developers.ecwid.com) | [`edmodo`](https://partnerships.edmodo.com) | [`egnyte`](https://developers.egnyte.com) | [`etsy`](https://www.etsy.com/developers) | [`eventbrite`](https://www.eventbrite.com/platform) | [`evernote`](https://dev.evernote.com) | [`eyeem`](https://github.com/eyeem/Public-API) | [`facebook`](https://developers.facebook.com) | [`familysearch`](https://www.familysearch.org/developers/) | [`feedly`](https://developer.feedly.com) | [`figma`](https://www.figma.com/developers) | [`fitbit`](https://dev.fitbit.com) | [`flickr`](https://www.flickr.com/services) | [`formstack`](https://developers.formstack.com) | [`foursquare`](https://developer.foursquare.com) | [`freeagent`](https://dev.freeagent.com) | [`freelancer`](https://developers.freelancer.com) | [`freshbooks`](https://www.freshbooks.com/developers) | [`fusionauth`](https://fusionauth.io/docs/) | [`garmin`](https://developer.garmin.com) | [`geeklist`](http://hackers.geekli.st) | [`genius`](https://docs.genius.com) | [`getbase`](https://developers.getbase.com) | [`getpocket`](https://getpocket.com/developer) | [`gitbook`](https://developer.gitbook.com) | [`github`](https://docs.github.com/developers) | [`gitlab`](https://docs.gitlab.com/ce/api/) | [`gitter`](https://developer.gitter.im) | [`goodreads`](https://www.goodreads.com/api) | [`google`](https://developers.google.com) | [`groove`](https://www.groovehq.com/docs) | [`gumroad`](https://gumroad.com/api) | [`harvest`](https://help.getharvest.com/api-v2/) | [`hellosign`](https://www.hellosign.com/api) | [`heroku`](https://devcenter.heroku.com/categories/platform-api) | [`homeaway`](https://www.homeaway.com/platform) | [`hootsuite`](https://developer.hootsuite.com) | [`huddle`](https://www.huddle.com/huddle-api/) | [`ibm`](https://ibm.biz/provisioner) | [`iconfinder`](https://developer.iconfinder.com) | [`idme`](https://developers.id.me) | [`idonethis`](https://i-done-this.readme.io/docs) | [`imgur`](https://apidocs.imgur.com) | [`infusionsoft`](https://developer.infusionsoft.com) | [`instagram`](https://instagram.com/developer) | [`intuit`](https://developer.intuit.com) | [`jamendo`](https://devportal.jamendo.com/) | [`jumplead`](https://developer.jumplead.com) | [`kakao`](https://developers.kakao.com) | [`keycloak`](https://www.keycloak.org) | [`line`](https://developers.line.biz) | [`linkedin`](https://www.linkedin.com/developers) | [`live`](https://docs.microsoft.com/en-us/onedrive/developer/rest-api/getting-started/msa-oauth?view=odsp-graph-online) | [`livechat`](https://developers.livechatinc.com) | [`logingov`](https://developers.login.gov) | [`lyft`](https://developer.lyft.com) | [`mailchimp`](https://developer.mailchimp.com) | [`mailup`](http://help.mailup.com/display/mailupapi/REST+API) | [`mailxpert`](https://dev.mailxpert.ch) | [`mapmyfitness`](https://developer.underarmour.com) | [`mastodon`](https://docs.joinmastodon.org/) | [`medium`](https://developers.medium.com) | [`meetup`](https://www.meetup.com/meetup_api/) | [`mendeley`](https://dev.mendeley.com) | [`mention`](https://dev.mention.com) | [`microsoft`](https://developer.microsoft.com/en-us/graph) | [`mixcloud`](https://www.mixcloud.com/developers) | [`moxtra`](https://developer.moxtra.com) | [`myob`](https://developer.myob.com) | [`naver`](https://developers.naver.com) | [`nest`](https://developers.nest.com) | [`netlify`](https://docs.netlify.com) | [`nokotime`](https://developer.nokotime.com) | [`notion`](https://developers.notion.com) | [`nylas`](https://docs.nylas.com) | [`okta`](https://developer.okta.com/) | [`onelogin`](https://developers.onelogin.com) | [`openstreetmap`](https://wiki.openstreetmap.org/wiki/API_v0.6) | [`optimizely`](https://developers.optimizely.com) | [`osu`](https://osu.ppy.sh/docs) | [`patreon`](https://docs.patreon.com) | [`paypal`](https://developer.paypal.com) | [`phantauth`](https://www.phantauth.net) | [`pinterest`](https://developers.pinterest.com) | [`plurk`](https://www.plurk.com/API) | [`podio`](https://developers.podio.com) | [`procore`](https://developers.procore.com) | [`producthunt`](https://api.producthunt.com/v2/docs) | [`projectplace`](https://service.projectplace.com/apidocs) | [`pushbullet`](https://docs.pushbullet.com) | [`qq`](https://wiki.connect.qq.com/准备工作_oauth2-0) | [`ravelry`](https://www.ravelry.com/api) | [`redbooth`](https://redbooth.com/api) | [`reddit`](https://www.reddit.com/dev/api) | [`runkeeper`](https://runkeeper.com/developer/healthgraph/) | [`salesforce`](https://developer.salesforce.com) | [`sellsy`](https://api.sellsy.com) | [`shoeboxed`](https://github.com/Shoeboxed/api) | [`shopify`](https://developers.shopify.com) | [`skyrock`](https://www.skyrock.com/developer) | [`slack`](https://api.slack.com) | [`slice`](https://developer.slice.com) | [`smartsheet`](https://smartsheet-platform.github.io/api-docs) | [`smugmug`](https://api.smugmug.com) | [`snapchat`](https://kit.snapchat.com) | [`snowflake`](https://docs.snowflake.com) | [`socialpilot`](https://developer.socialpilot.co) | [`socrata`](https://dev.socrata.com) | [`soundcloud`](https://developers.soundcloud.com) | [`spotify`](https://developer.spotify.com) | [`square`](https://squareup.com/developers) | [`stackexchange`](https://api.stackexchange.com) | [`stocktwits`](https://api.stocktwits.com/developers) | [`stormz`](https://developer.stormz.me) | [`storyblok`](https://www.storyblok.com/docs/guide/introduction) | [`strava`](https://developers.strava.com) | [`stripe`](https://stripe.com/docs) | [`surveymonkey`](https://developer.surveymonkey.com) | [`surveysparrow`](https://surveysparrow.com/developer) | [`thingiverse`](https://www.thingiverse.com/developers) | [`ticketbud`](https://api.ticketbud.com) | [`tiktok`](https://developers.tiktok.com/) | [`timelyapp`](https://dev.timelyapp.com) | [`todoist`](https://developer.todoist.com) | [`trakt`](https://trakt.docs.apiary.io) | [`traxo`](https://developer.traxo.com) | [`trello`](https://developers.trello.com) | [`tripit`](https://www.tripit.com/developer) | [`trustpilot`](https://developers.trustpilot.com) | [`tumblr`](https://www.tumblr.com/docs/en/api/v2) | [`twitch`](https://dev.twitch.tv) | [`twitter`](https://developer.twitter.com) | [`typeform`](https://developer.typeform.com) | [`uber`](https://developer.uber.com) | [`unbounce`](https://developer.unbounce.com) | [`underarmour`](https://developer.underarmour.com) | [`unsplash`](https://unsplash.com/documentation) | [`untappd`](https://untappd.com/api/docs) | [`upwork`](https://developers.upwork.com) | [`uservoice`](https://developer.uservoice.com) | [`vend`](https://developers.vendhq.com) | [`venmo`](https://developers.braintreepayments.com/guides/venmo/overview/) | [`vercel`](https://vercel.com/docs) | [`verticalresponse`](http://developers.verticalresponse.com) | [`viadeo`](https://partners.viadeo.com) | [`vimeo`](https://developer.vimeo.com) | [`visualstudio`](https://docs.microsoft.com/en-us/vsts/integrate/get-started/authentication/oauth?view=vsts) | [`vk`](https://vk.com/dev) | [`wechat`](https://mp.weixin.qq.com) | [`weekdone`](https://weekdone.com/developer) | [`weibo`](https://open.weibo.com) | [`withings`](https://developer.withings.com) | [`wordpress`](https://developer.wordpress.com) | [`workos`](https://workos.com/docs/sso) | [`wrike`](https://developers.wrike.com) | [`xero`](https://developer.xero.com) | [`xing`](https://dev.xing.com) | [`yahoo`](https://developer.yahoo.com) | [`yammer`](https://developer.yammer.com/docs) | [`yandex`](https://tech.yandex.com) | [`zendesk`](https://developer.zendesk.com) | [`zoom`](https://marketplace.zoom.us/docs)\n\n\n## Table of Contents\n\n### [Migration Guide: from v4 to v5][migration]\n\n- **[Providers](#grant)**\n- **Handlers**\n  - [Express](#handlers) / [Koa](#handlers) / [Hapi](#handlers) / [Fastify](#handlers)\n  - [AWS Lambda](#handlers) / [Azure Function](#handlers) / [Google Cloud Function](#handlers) / [Vercel](#handlers)\n- **Configuration**\n  - [Basics](#configuration-basics) / [Description](#configuration-description) / [Values](#configuration-values) / [Scopes](#configuration-scopes)\n- **Connect**\n  - [Origin](#connect-origin) / [Prefix](#connect-prefix) / [Redirect URI](#connect-redirect-uri) / [Custom Parameters](#connect-custom-parameters) / [OpenID Connect](#connect-openid-connect) / [PKCE](#connect-pkce) / [Static Overrides](#connect-static-overrides)\n- **Callback**\n  - [Data](#callback-data) / [Transport](#callback-transport) / [Response](#callback-response) / [Session](#callback-session)\n- **Dynamic Configuration**\n  - [Instance](#dynamic-instance) / [State](#dynamic-state) / [HTTP](#dynamic-http) / [OAuth Proxy](#dynamic-oauth-proxy)\n- **Misc**\n  - [Configuration](#misc-redirect-uri) / [Handlers](#misc-handler-constructors) / [Request](#misc-request) / [Types](#misc-es-modules-and-typescript) / [OAuth Quirks](#misc-oauth-quirks)\n- **Examples**\n  - [express][examples] / [koa][examples] / [hapi][examples] / [fastify][examples] / [aws][grant-aws] / [azure][grant-azure] / [gcloud][grant-gcloud] / [vercel][grant-vercel]\n- **[Changelog][changelog]**\n\n----\n\n# Handlers\n\n\n### HTTP Frameworks\n\n<details><summary>Express</summary>\n\n```js\nvar express = require('express')\nvar session = require('express-session')\nvar grant = require('grant').express()\n\nvar app = express()\n// REQUIRED: any session store - see /examples/handler-express\napp.use(session({secret: 'grant'}))\n// mount grant\napp.use(grant({/*configuration - see below*/}))\n```\n</details>\n\n<details><summary>Koa</summary>\n\n```js\nvar Koa = require('koa')\nvar session = require('koa-session')\nvar grant = require('grant').koa()\n\nvar app = new Koa()\n// REQUIRED: any session store - see /examples/handler-koa\napp.keys = ['grant']\napp.use(session(app))\n// mount grant\napp.use(grant({/*configuration - see below*/}))\n```\n</details>\n\n<details><summary>Hapi</summary>\n\n```js\nvar Hapi = require('hapi')\nvar yar = require('yar')\nvar grant = require('grant').hapi()\n\nvar server = new Hapi.Server()\nserver.register([\n  // REQUIRED: any session store - see /examples/handler-hapi\n  {plugin: yar, options: {cookieOptions: {password: 'grant', isSecure: false}}},\n  // mount grant\n  {plugin: grant({/*configuration - see below*/})}\n])\n```\n</details>\n\n<details><summary>Fastify</summary>\n\n```js\nvar fastify = require('fastify')\nvar cookie = require('@fastify/cookie')\nvar session = require('@fastify/session')\nvar grant = require('grant').fastify()\n\nfastify()\n  .register(cookie)\n  .register(session, {secret: 'grant', cookie: {secure: false}})\n  .register(grant({/*configuration - see below*/}))\n```\n</details>\n\n### Serverless Functions\n\n<details><summary>AWS Lambda</summary>\n\n```js\nvar grant = require('grant').aws({\n  config: {/*configuration - see below*/}, session: {secret: 'grant'}\n})\n\nexports.handler = async (event) => {\n  var {redirect, response} = await grant(event)\n  return redirect || {\n    statusCode: 200,\n    headers: {'content-type': 'application/json'},\n    body: JSON.stringify(response)\n  }\n}\n```\n</details>\n\n<details><summary>Azure Function</summary>\n\n```js\nvar grant = require('grant').azure({\n  config: {/*configuration - see below*/}, session: {secret: 'grant'}\n})\n\nmodule.exports = async (context, req) => {\n  var {redirect, response} = await grant(req)\n  return redirect || {\n    status: 200,\n    headers: {'content-type': 'application/json'},\n    body: JSON.stringify(response)\n  }\n}\n```\n</details>\n\n<details><summary>Google Cloud Function</summary>\n\n```js\nvar grant = require('grant').gcloud({\n  config: {/*configuration - see below*/}, session: {secret: 'grant'}\n})\n\nexports.handler = async (req, res) => {\n  var {response} = await grant(req, res)\n  if (response) {\n    res.statusCode = 200\n    res.setHeader('content-type', 'application/json')\n    res.end(JSON.stringify(response))\n  }\n}\n```\n</details>\n\n<details><summary>Vercel</summary>\n\n```js\nvar grant = require('grant').vercel({\n  config: {/*configuration - see below*/}, session: {secret: 'grant'}\n})\n\nmodule.exports = async (req, res) => {\n  var {response} = await grant(req, res)\n  if (response) {\n    res.statusCode = 200\n    res.setHeader('content-type', 'application/json')\n    res.end(JSON.stringify(response))\n  }\n}\n```\n</details>\n\n### Examples\n\n> __[express][examples] / [koa][examples] / [hapi][examples] / [fastify][examples] / [aws][grant-aws] / [azure][grant-azure] / [gcloud][grant-gcloud] / [vercel][grant-vercel]__\n\n> _[ES Modules and TypeScript](#misc-es-modules-and-typescript)_\n\n---\n\n# Configuration\n\n\n## Configuration: Basics\n\n```json\n{\n  \"defaults\": {\n    \"origin\": \"http://localhost:3000\",\n    \"transport\": \"session\",\n    \"state\": true\n  },\n  \"google\": {\n    \"key\": \"...\",\n    \"secret\": \"...\",\n    \"scope\": [\"openid\"],\n    \"nonce\": true,\n    \"custom_params\": {\"access_type\": \"offline\"},\n    \"callback\": \"/hello\"\n  },\n  \"twitter\": {\n    \"key\": \"...\",\n    \"secret\": \"...\",\n    \"callback\": \"/hi\"\n  }\n}\n```\n\n- **defaults** - default configuration for all providers\n  - **origin** - where your client server can be reached `http://localhost:3000` | `https://site.com` ...\n  - **transport** - a [transport](#callback-transport) used to deliver the [response data](#callback-response) in your `callback` route\n  - **state** - generate random state string\n- **provider** - any [supported provider](#grant) `google` | `twitter` ...\n  - **key** - `consumer_key` or `client_id` of your OAuth app\n  - **secret** - `consumer_secret` or `client_secret` of your OAuth app\n  - **scope** - array of OAuth scopes to request\n  - **nonce** - generate random nonce string ([OpenID Connect](#connect-openid-connect) only)\n  - **custom_params** - custom [authorization parameters](#connect-custom-parameters)\n  - **callback** - relative route or absolute URL to receive the response data `/hello` | `https://site.com/hey` ...\n\n\n## Configuration: Description\n\nKey | Location | Description\n:-| :-: | :-\n***Authorization Server*** |\n**`request_url`** | [oauth.json] | OAuth 1.0a only, first step\n**`authorize_url`** | [oauth.json] | OAuth 2.0 first step, OAuth 1.0a second step\n**`access_url`** | [oauth.json] | OAuth 2.0 second step, OAuth 1.0a third step\n**`oauth`** | [oauth.json] | OAuth version number\n**`scope_delimiter`** | [oauth.json] | String delimiter used for concatenating multiple scopes\n**`token_endpoint_auth_method`** | `[provider]` | Authentication method for the token endpoint\n**`token_endpoint_auth_signing_alg`** | `[provider]` | Signing algorithm for the token endpoint\n***Client Server*** |\n**`origin`** | `defaults` | Where your client server can be reached\n**`prefix`** | `defaults` | Path prefix for the Grant internal routes\n**`state`** | `defaults` | Random state string for OAuth 2.0\n**`nonce`** | `defaults` | Random nonce string for OpenID Connect\n**`pkce`** | `defaults` | Toggle PKCE support\n**`response`** | `defaults` | Response data to receive\n**`transport`** | `defaults` | A way to deliver the response data\n**`callback`** | `[provider]` | Relative or absolute URL to receive the response data\n**`overrides`** | `[provider]` | Static configuration overrides for a provider\n**`dynamic`** | `[provider]` | Configuration keys that can be overridden dynamically over HTTP\n***Client App*** |\n**`key`** **`client_id`** **`consumer_key`** | `[provider]` | The `client_id` or `consumer_key` of your OAuth app\n**`secret`** **`client_secret`**  **`consumer_secret`** | `[provider]` | The `client_secret` or `consumer_secret` of your OAuth app\n**`scope`** | `[provider]` | List of scopes to request\n**`custom_params`** | `[provider]` | Custom authorization parameters and their values\n**`subdomain`** | `[provider]` | String to embed into the authorization server URLs\n**`public_key`** | `[provider]` | Public PEM or JWK\n**`private_key`** | `[provider]` | Private PEM or JWK\n**`redirect_uri`** | `generated` | Absolute redirect URL of the OAuth app\n***Grant*** |\n**`name`** | `generated` | Provider's [name](#grant)\n**`[provider]`** | `generated` | Provider's [name](#grant) as key\n**`profile_url`** | [profile.json] | User profile URL\n\n\n## Configuration: Values\n\nKey | Location | Value\n:- | :-: | :-:\n***Authorization Server*** |\n**`request_url`** | [oauth.json] | `'https://api.twitter.com/oauth/request_token'`\n**`authorize_url`** | [oauth.json] | `'https://api.twitter.com/oauth/authenticate'`\n**`access_url`** | [oauth.json] | `'https://api.twitter.com/oauth/access_token'`\n**`oauth`** | [oauth.json] | `2` `1`\n**`scope_delimiter`** | [oauth.json] | `','` `' '`\n**`token_endpoint_auth_method`** | `[provider]` | `'client_secret_post'` `'client_secret_basic'` `'private_key_jwt'`\n**`token_endpoint_auth_signing_alg`** | `[provider]` | `'RS256'` `'ES256'` `'PS256'`\n***Client Server*** |\n**`origin`** | `defaults` | `'http://localhost:3000'` `https://site.com`\n**`prefix`** | `defaults` | `'/connect'` `/oauth` `''`\n**`state`** | `defaults` | `true`\n**`nonce`** | `defaults` | `true`\n**`pkce`** | `defaults` | `true`\n**`response`** | `defaults` | `['tokens', 'raw', 'jwt', 'profile']`\n**`transport`** | `defaults` | `'querystring'` `'session'` `'state'`\n**`callback`** | `[provider]` | `'/hello'` `'https://site.com/hi'`\n**`overrides`** | `[provider]` | `{something: {scope: ['..']}}`\n**`dynamic`** | `[provider]` | `['scope', 'subdomain']`\n***Client App*** |\n**`key`** **`client_id`** **`consumer_key`** | `[provider]` | `'123'`\n**`secret`** **`client_secret`**  **`consumer_secret`** | `[provider]` | `'123'`\n**`scope`** | `[provider]` | `['openid', '..']`\n**`custom_params`** | `[provider]` | `{access_type: 'offline'}`\n**`subdomain`** | `[provider]` | `'myorg'`\n**`public_key`** | `[provider]` | `'..PEM..'` `'{..JWK..}'`\n**`private_key`** | `[provider]` | `'..PEM..'` `'{..JWK..}'`\n**`redirect_uri`** |`generated` | `'http://localhost:3000/connect/twitter/callback'`\n***Grant*** |\n**`name`** |`generated` | `name: 'twitter'`\n**`[provider]`** |`generated` | `twitter: true`\n**`profile_url`** | [profile.json] | `'https://api.twitter.com/1.1/users/show.json'`\n\n\n## Configuration: Scopes\n\nGrant relies on configuration gathered from **6** different places:\n\n1. The **first** place Grant looks for configuration is the built-in [oauth.json] file located in the config folder.\n\n2. The **second** place Grant looks for configuration is the `defaults` key, specified in the user's configuration. These defaults are applied for every provider in the user's configuration.\n\n3. The **third** place for configuration is the provider itself. All providers in the user's configuration inherit every option defined for them in the [oauth.json] file, and all options defined inside the `defaults` key. Having [oauth.json] file and a `defaults` configuration is only a convenience. You can define all available options directly for a provider.\n\n4. The **fourth** place for configuration are the provider's [`overrides`](#connect-static-overrides). The static overrides inherit their parent provider, essentially creating new provider of the same type.\n\n5. The **fifth** place for configuration is the dynamic [state](#dynamic-state) override. The request/response lifecycle state of your HTTP framework of choice can be used to dynamically override configuration.\n\n6. The **sixth** place for configuration, that _[potentially](#dynamic-oauth-proxy)_ can override all of the above, and make all of the above optional, is the [`dynamic`](#dynamic-http) HTTP override.\n\n---\n\n# Connect\n\n\n## Connect: Origin\n\nThe `origin` is where your client server can be reached:\n\n```json\n{\n  \"defaults\": {\n    \"origin\": \"http://localhost:3000\"\n  }\n}\n```\n\nYou login by navigating to the `/connect/:provider` route where `:provider` is a key in your configuration, usually one of the [officially supported](#grant) ones, but you can define [your own](#misc-custom-providers) as well. Additionally you can login through a [static override](#connect-static-overrides) defined for that provider by navigating to the `/connect/:provider/:override?` route.\n\n## Connect: Prefix\n\nBy default Grant operates on the following two routes:\n\n```\n/connect/:provider/:override?\n/connect/:provider/callback\n```\n\nHowever, the default `/connect` prefix can be configured:\n\n```json\n{\n  \"defaults\": {\n    \"origin\": \"http://localhost:3000\",\n    \"prefix\": \"/oauth\"\n  }\n}\n```\n\n\n## Connect: Redirect URI\n\nThe [`redirect_uri`](#misc-redirect-uri) of your OAuth app should follow this format:\n\n```\n[origin][prefix]/[provider]/callback\n```\n\nWhere [`origin`](#connect-origin) and [`prefix`](#connect-prefix) have to match the ones set in your configuration, and [`provider`](#grant) is a provider key found in your configuration.\n\nFor example: `http://localhost:3000/connect/google/callback`\n\nThis redirect URI is used internally by Grant. Depending on the [`transport`](#callback-transport) being used you will receive the response data in the [`callback`](#callback-data) route or absolute URL configured for that provider.\n\n\n## Connect: Custom Parameters\n\nSome providers may employ custom authorization parameters that you can configure using the `custom_params` key:\n\n```json\n{\n  \"google\": {\n    \"custom_params\": {\"access_type\": \"offline\", \"prompt\": \"consent\"}\n  },\n  \"reddit\": {\n    \"custom_params\": {\"duration\": \"permanent\"}\n  },\n  \"trello\": {\n    \"custom_params\": {\"name\": \"my app\", \"expiration\": \"never\"}\n  }\n}\n```\n\n\n## Connect: OpenID Connect\n\nThe `openid` scope is required, and generating a random `nonce` string is optional but recommended:\n\n```json\n{\n  \"google\": {\n    \"scope\": [\"openid\"],\n    \"nonce\": true\n  }\n}\n```\n\nGrant **does not** verify the signature of the returned `id_token` by default.\n\nHowever, the following two claims of the `id_token` are being validated:\n\n1. `aud` - is the token intended for my OAuth app?\n2. `nonce` - does it tie to a request of my own?\n\n\n## Connect: PKCE\n\nPKCE can be enabled for all providers or for a specific provider only:\n\n```json\n{\n  \"google\": {\n    \"pkce\": true\n  }\n}\n```\n\nProviders that do not support PKCE will ignore the additional parameters being sent.\n\n\n## Connect: Static Overrides\n\nProvider sub configurations can be configured using the `overrides` key:\n\n```json\n{\n  \"github\": {\n    \"key\": \"...\", \"secret\": \"...\",\n    \"scope\": [\"public_repo\"],\n    \"callback\": \"/hello\",\n    \"overrides\": {\n      \"notifications\": {\n        \"key\": \"...\", \"secret\": \"...\",\n        \"scope\": [\"notifications\"]\n      },\n      \"all\": {\n        \"scope\": [\"repo\", \"gist\", \"user\"],\n        \"callback\": \"/hey\"\n      }\n    }\n  }\n}\n```\n\nNavigate to:\n\n- `/connect/github` to request the public_repo `scope`\n- `/connect/github/notifications` to request the notifications `scope` using another OAuth App (`key` and `secret`)\n- `/connect/github/all` to request a bunch of `scope`s and also receive the response data in another `callback` route\n\n---\n\n# Callback\n\n\n## Callback: Data\n\nBy default the response data will be returned in your `callback` route or absolute URL encoded as querystring.\n\nDepending on the [`transport`](#callback-transport) being used the response data can be returned in the `session` or in the `state` object instead.\n\nThe amount of the returned data can be controlled by using the [`response`](#callback-response) configuration.\n\n### OAuth 2.0\n\n```js\n{\n  id_token: '...',\n  access_token: '...',\n  refresh_token: '...',\n  raw: {\n    id_token: '...',\n    access_token: '...',\n    refresh_token: '...',\n    some: 'other data'\n  }\n}\n```\n\nThe `refresh_token` is optional. The `id_token` is returned only for [OpenID Connect](#connect-openid-connect) providers requesting the `openid` scope.\n\n\n### OAuth 1.0a\n\n```js\n{\n  access_token: '...',\n  access_secret: '...',\n  raw: {\n    oauth_token: '...',\n    oauth_token_secret: '...',\n    some: 'other data'\n  }\n}\n```\n\n\n### Error\n\n```js\n{\n  error: {\n    some: 'error data'\n  }\n}\n```\n\n\n## Callback: Transport\n\n### querystring\n\nBy default Grant will encode the OAuth [response data](#callback-data) as `querystring` in your `callback` route or absolute URL:\n\n```json\n{\n  \"github\": {\n    \"callback\": \"https://site.com/hello\"\n  }\n}\n```\n\nThis is useful when using Grant as [OAuth Proxy](#dynamic-oauth-proxy). However this final `https://site.com/hello?access_token=...` redirect potentially may leak private data in your server logs, especially when sitting behind a reverse proxy.\n\n\n### session\n\nFor local `callback` routes the session `transport` is recommended:\n\n```json\n{\n  \"defaults\": {\n    \"transport\": \"session\"\n  },\n  \"github\": {\n    \"callback\": \"/hello\"\n  }\n}\n```\n\nThis will make the OAuth [response data](#callback-data) available in the `session` object instead:\n\n```js\nreq.session.grant.response // Express\nctx.session.grant.response // Koa\nreq.yar.get('grant').response // Hapi\nreq.session.grant.response // Fastify\n(await session.get()).grant.response // Serverless Function\n```\n\n\n### state\n\nThe request/response lifecycle `state` can be used as well:\n\n```json\n{\n  \"defaults\": {\n    \"transport\": \"state\"\n  }\n}\n```\n\nIn this case a `callback` route is not needed, and it will be ignored if provided. The response data will be available in the request/response lifecycle state object instead:\n\n```js\nres.locals.grant.response // Express\nctx.state.grant.response // Koa\nreq.plugins.grant.response // Hapi\nres.grant.response // Fastify\nvar {response} = await grant(...) // Serverless Function\n```\n\n\n## Callback: Response\n\nBy default Grant returns all of the available tokens and the `raw` response data returned by the Authorization server:\n\n```js\n{\n  id_token: '...',\n  access_token: '...',\n  refresh_token: '...',\n  raw: {\n    id_token: '...',\n    access_token: '...',\n    refresh_token: '...',\n    some: 'other data'\n  }\n}\n```\n\n### querystring\n\nWhen using the querystring [`transport`](#callback-transport) it might be a good idea to limit the response data:\n\n```json\n{\n  \"defaults\": {\n    \"response\": [\"tokens\"]\n  }\n}\n```\n\nThis will return only the tokens available, without the `raw` response data.\n\nThis is useful when using Grant as [OAuth Proxy](#dynamic-oauth-proxy). Encoding potentially large amounts of data as querystring can lead to incompatibility issues with some servers and browsers, and generally is considered a bad practice.\n\n### session\n\nUsing the session [`transport`](#callback-transport) is generally safer, but it also depends on the implementation of your session store.\n\nIn case your session store encodes the entire session in a cookie, not just the session ID, some servers may reject the HTTP request because of HTTP headers size being too big.\n\n```json\n{\n  \"google\": {\n    \"response\": [\"tokens\"]\n  }\n}\n```\n\nThis will return only the tokens available, without the `raw` response data.\n\n### jwt\n\nGrant can also return even larger [response data](#callback-data) by including the decoded JWT for [OpenID Connect](#connect-openid-connect) providers that return `id_token`:\n\n```json\n{\n  \"google\": {\n    \"response\": [\"tokens\", \"raw\", \"jwt\"]\n  }\n}\n```\n\nThis will make the decoded JWT available in the response data:\n\n```js\n{\n  id_token: '...',\n  access_token: '...',\n  refresh_token: '...',\n  raw: {\n    id_token: '...',\n    access_token: '...',\n    refresh_token: '...',\n    some: 'other data'\n  },\n  jwt: {id_token: {header: {}, payload: {}, signature: '...'}}\n}\n```\n\nMake sure you include all of the response keys that you want to be returned when configuring the `response` data explicitly.\n\n\n### profile\n\nOutside of the regular OAuth flow, Grant can also request the user profile:\n\n```json\n{\n  \"google\": {\n    \"response\": [\"tokens\", \"profile\"]\n  }\n}\n```\n\nAdditionaly a `profile` key will be available in the response data:\n\n```js\n{\n  access_token: '...',\n  refresh_token: '...',\n  profile: {some: 'user data'}\n}\n```\n\nThe `profile` key contains either the raw response data returned by the user profile endpoint or an error message.\n\nNot all of the supported providers have their `profile_url` set, and some of them might require custom parameters. Usually the user profile endpoint is accessible only when certain `scope`s were requested.\n\n\n## Callback: Session\n\nGrant uses session to persist state between HTTP redirects occurring during the OAuth flow. This session, however, was never meant to be used as persistent storage, even if that's totally possible.\n\nOnce you receive the [response data](#callback-data) in your `callback` route you are free to destroy that session.\n\nHowever, there are a few session keys returned in your `callback` route, that you may find useful:\n\nKey        | Availability            | Description\n:--        | :--                     | :--\n`provider` | **Always**              | The provider [name](#grant) used for this authorization\n`override` | Depends on URL          | The [static override](#connect-static-overrides) name used for this authorization\n`dynamic`  | Depends on request type | The [dynamic override](#dynamic-http) configuration passed to this authorization\n`state`    | OAuth 2.0 only          | OAuth 2.0 state string that was generated\n`nonce`    | OpenID Connect only     | [OpenID Connect](#connect-openid-connect) nonce string that was generated\n`code_verifier` | PKCE only     | The code verifier that was generated for [PKCE](#connect-pkce)\n`request`  | OAuth 1.0a only         | Data returned from the first request of the OAuth 1.0a flow\n`response` | Depends on transport used | The final [response data](#callback-data)\n\n---\n\n# Dynamic Configuration\n\n\n## Dynamic: Instance\n\nEvery Grant instance have a `config` property attached to it:\n\n```js\nvar grant = Grant(require('./config'))\nconsole.log(grant.config)\n```\n\nYou can use the `config` property to alter the Grant's behavior during runtime without having to restart your server.\n\nThis property contains the **generated** configuration used internally by Grant, and changes made to that configuration affects the **entire** Grant instance!\n\n\n## Dynamic: State\n\nThe request/response lifecycle state can be used to alter configuration on every request:\n\n```js\nvar state = {dynamic: {subdomain: 'usershop'}}\nres.locals.grant = state // Express\nctx.state.grant = state // Koa\nreq.plugins.grant = state // Hapi\nreq.grant = state // Fastify\nawait grant(..., state) // Serverless Function\n```\n\nThis is useful in cases when you want to configure Grant dynamically with potentially sensitive data that you don't want to send over HTTP.\n\nThe request/response lifecycle state is not controlled by the [`dynamic`](#dynamic-http) configuration, meaning that you can override any configuration key.\n\nAny allowed [`dynamic`](#dynamic-http) configuration key sent through HTTP GET/POST request will override the identical one set using a state override.\n\n\n## Dynamic: HTTP\n\nThe `dynamic` configuration allows certain configuration keys to be set dynamically over HTTP GET/POST request.\n\nFor example `shopify` requires your shop name to be embedded into the OAuth URLs, so it makes sense to allow the [`subdomain`](#subdomain-urls) configuration key to be set dynamically:\n\n```json\n{\n  \"shopify\": {\n    \"dynamic\": [\"subdomain\"]\n  }\n}\n```\n\nThen you can have a web form on your website allowing the user to specify the shop name:\n\n```html\n<form action=\"/connect/shopify\" method=\"POST\" accept-charset=\"utf-8\">\n  <input type=\"text\" name=\"subdomain\" value=\"\" />\n  <button>Login</button>\n</form>\n```\n\nMaking a `POST` request to the `/connect/:provider/:override?` route requires a form body parser middleware:\n\n```js\n.use(require('body-parser').urlencoded({extended: true})) // Express\n.use(require('koa-bodyparser')()) // Koa\n.register(require('@fastify/formbody')) // Fastify\n```\n\nAlternatively you can make a `GET` request to the `/connect/:provider/:override?` route:\n\n```\nhttps://awesome.com/connect/shopify?subdomain=usershop\n```\n\nAny `dynamic` configuration sent over HTTP GET/POST request overrides any other configuration.\n\n\n## Dynamic: OAuth Proxy\n\nIn case you really want to, you can allow `dynamic` configuration override of every configuration key for a provider:\n\n```json\n{\n  \"github\": {\n    \"dynamic\": true\n  }\n}\n```\n\nAnd the most extreme case is allowing even non preconfigured providers to be used dynamically:\n\n```json\n{\n  \"defaults\": {\n    \"dynamic\": true\n  }\n}\n```\n\nEssentially Grant is a completely transparent **[OAuth Proxy][oauth-like-a-boss]**.\n\n---\n\n# Misc\n\n## Misc: Redirect URI\n\nThe [`origin`](#connect-origin) and the [`prefix`](#connect-prefix) configuration is used to generate the correct [`redirect_uri`](#connect-redirect-uri) that Grant expects:\n\n```json\n{\n  \"defaults\": {\n    \"origin\": \"https://mysite.com\"\n  },\n  \"google\": {},\n  \"twitter\": {}\n}\n```\n\nThe above configuration is identical to:\n\n```json\n{\n  \"google\": {\n    \"redirect_uri\": \"https://mysite.com/connect/google/callback\"\n  },\n  \"twitter\": {\n    \"redirect_uri\": \"https://mysite.com/connect/twitter/callback\"\n  }\n}\n```\n\nExplicitly specifying the `redirect_uri` overrides the one generated by default.\n\n\n## Misc: Custom Providers\n\nYou can define your own provider by adding a key for it in your configuration. In this case all of the required configuration keys have to be specified:\n\n```json\n{\n  \"defaults\": {\n    \"origin\": \"http://localhost:3000\"\n  },\n  \"awesome\": {\n    \"authorize_url\": \"https://awesome.com/authorize\",\n    \"access_url\": \"https://awesome.com/token\",\n    \"oauth\": 2,\n    \"key\": \"...\",\n    \"secret\": \"...\",\n    \"scope\": [\"read\", \"write\"]\n  }\n}\n```\n\nTake a look at the [oauth.json] file on how various providers are being configured.\n\n\n## Misc: Meta Configuration\n\nYou can document your configuration by adding custom keys to it:\n\n```json\n{\n  \"google\": {\n    \"meta\": {\n      \"app\": \"My Awesome OAuth App\",\n      \"owner\": \"my_email@gmail.com\",\n      \"url\": \"https://url/to/manage/oauth/app\"\n    }\n  }\n}\n```\n\nNote that `meta` is arbitrary key, but it cannot be one of the [reserved keys][reserved-keys].\n\n\n## Misc: Handler Constructors\n\nGrant supports different ways of instantiation:\n\n```js\n// Express or any other handler\nvar grant = require('grant').express()(config)\nvar grant = require('grant').express()({config, ...})\nvar grant = require('grant').express(config)\nvar grant = require('grant').express({config, ...})\nvar grant = require('grant')({handler: 'express', config, ...})\n```\n\nUsing the `new` keyword is optional:\n\n```js\nvar Grant = require('grant').express()\nvar grant = Grant(config)\nvar grant = new Grant(config)\n```\n\nAdditionally Hapi accepts the configuration in two different ways:\n\n```js\nserver.register([{plugin: grant(config)}])\nserver.register([{plugin: grant(), options: config}])\n```\n\n## Misc: Path Prefix\n\nYou can mount Grant under specific path prefix:\n\n```js\n// Express\napp.use('/oauth', grant(config))\n// Koa - using koa-mount\napp.use(mount('/oauth', grant(config)))\n// Hapi\nserver.register([{routes: {prefix: '/oauth'}, plugin: grant(config)}])\n// Fastify\nserver.register(grant(config), {prefix: '/oauth'})\n```\n\nIn this case the [`prefix`](#connect-prefix) configuration should reflect that + any other path parts that you may have:\n\n```json\n{\n  \"defaults\": {\n    \"origin\": \"http://localhost:3000\",\n    \"prefix\": \"/oauth/login\"\n  }\n}\n```\n\nIn this case you login by navigating to: `http://localhost:3000/oauth/login/:provider`\n\nAnd the [`redirect_uri`](#connect-redirect-uri) of your OAuth app should be `http://localhost:3000/oauth/login/:provider/callback`\n\nOptionally you can prefix your [`callback`](#callback) routes as well:\n\n```json\n{\n  \"github\": {\n    \"callback\": \"/oauth/login/hello\"\n  }\n}\n```\n\n## Misc: Request\n\nThe underlying [HTTP client] can be configured using the `request` option:\n\n```js\nvar grant = require('grant').express({\n  config,\n  request: {agent, timeout: 5000}\n})\n```\n\nFancy [request logs] are available too:\n\n```bash\nnpm i --save-dev request-logs\nDEBUG=req,res,json node app.js\n```\n\n## Misc: ES Modules and TypeScript\n\nImport Grant in your `.mjs` files:\n\n```js\nimport express from 'express'\nimport session from 'express-session'\nimport grant from 'grant'\nimport config from './config.json'\n\nexpress()\n  .use(session({}))\n  .use(grant.express(config))\n```\n\nImporting a `.json` file may require additional flag:\n\n```bash\nnode --experimental-json-modules app.mjs\n```\n\nGrant ships with extensive [type definitions][type-definitions] for TypeScript. Additonal type definitions and examples can be found [here][grant-types].\n\n\n## Misc: OAuth Quirks\n\n### Subdomain URLs\n\nSome providers have dynamic URLs containing bits of user information embedded into them. Inside the main [oauth.json] configuration file such URLs contain a `[subdomain]` token embedded in them.\n\nThe `subdomain` option can be used to specify your company name, server region etc:\n\n```json\n\"shopify\": {\n  \"subdomain\": \"mycompany\"\n},\n\"battlenet\": {\n  \"subdomain\": \"us\"\n}\n```\n\nThen Grant will generate the correct OAuth URLs:\n\n```json\n\"shopify\": {\n  \"authorize_url\": \"https://mycompany.myshopify.com/admin/oauth/authorize\",\n  \"access_url\": \"https://mycompany.myshopify.com/admin/oauth/access_token\"\n},\n\"battlenet\": {\n  \"authorize_url\": \"https://us.battle.net/oauth/authorize\",\n  \"access_url\": \"https://us.battle.net/oauth/token\"\n}\n```\n\nAlternatively you can override the entire `authorize_url` and `access_url` in your configuration.\n\n\n### Sandbox OAuth URLs\n\nSome providers may have Sandbox URLs to use while developing your app. To use them just override the entire `request_url`, `authorize_url` and `access_url` in your configuration (notice the `sandbox` bits):\n\n```json\n\"paypal\": {\n  \"authorize_url\": \"https://www.sandbox.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize\",\n  \"access_url\": \"https://api.sandbox.paypal.com/v1/identity/openidconnect/tokenservice\"\n},\n\"evernote\": {\n  \"request_url\": \"https://sandbox.evernote.com/oauth\",\n  \"authorize_url\": \"https://sandbox.evernote.com/OAuth.action\",\n  \"access_url\": \"https://sandbox.evernote.com/oauth\"\n}\n```\n\n\n### Sandbox Redirect URI\n\nVery rarely you may need to override the [`redirect_uri`](#connect-redirect-uri) that Grant generates for you.\n\nFor example Feedly supports only `http://localhost` as redirect URI of their Sandbox OAuth app, and it won't allow the correct `http://localhost/connect/feedly/callback` URL:\n\n```json\n\"feedly\": {\n  \"redirect_uri\": \"http://localhost\"\n}\n```\n\nIn this case you'll have to redirect the user to the `[origin][prefix]/[provider]/callback` route that Grant uses to execute the last step of the OAuth flow:\n\n```js\nvar qs = require('querystring')\n\napp.get('/', (req, res) => {\n  if (process.env.NODE_ENV === 'development' &&\n      req.session.grant &&\n      req.session.grant.provider === 'feedly' &&\n      req.query.code\n  ) {\n    res.redirect(`/connect/${req.session.grant.provider}/callback?${qs.stringify(req.query)}`)\n  }\n})\n```\n\nAs usual you will receive the response data in your final [`callback`](#callback) route.\n\n\n### Provider Quirks\n\n\n> **Ebay**\n\nSet the Redirect URI of your OAuth app as usual `[origin][prefix]/[provider]/callback`. Then Ebay will generate a special string called RuName (eBay Redirect URL name) that you need to set as `redirect_uri` in Grant:\n\n```json\n\"ebay\": {\n  \"redirect_uri\": \"RUNAME\"\n}\n```\n\n\n> **Flickr, Freelancer, Optimizely**\n\nSome providers are using custom authorization parameter to pass the requested scopes - Flickr `perms`, Freelancer `advanced_scopes`, Optimizely `scopes`, but you can use the regular `scope` option instead:\n\n```json\n\"flickr\": {\n  \"scope\": [\"write\"]\n},\n\"freelancer\": {\n  \"scope\": [\"1\", \"2\"]\n},\n\"optimizely\": {\n  \"scope\": [\"all\"]\n}\n```\n\n\n> **Mastodon**\n\nMastodon requires the entire domain of your server to be embedded in the OAuth URLs. However you should use the `subdomain` option:\n\n```json\n\"mastodon\": {\n  \"subdomain\": \"mastodon.cloud\"\n}\n```\n\n\n> **Openstreetmap**\n\n\nOpenstreetmap OAuth 2.0 applications have to use the `openstreetmap2` provider:\n\n```json\n\"openstreetmap2\": {\n  \"state\": true,\n  \"scope\": [\n    \"openid\",\n    \"read_prefs\"\n  ]\n}\n```\n\n\n> **SurveyMonkey**\n\nSet your Mashery user name as `key` and your application key as `api_key`:\n\n```json\n\"surveymonkey\": {\n  \"key\": \"MASHERY_USER_NAME\",\n  \"secret\": \"CLIENT_SECRET\",\n  \"custom_params\": {\"api_key\": \"CLIENT_ID\"}\n}\n```\n\n\n> **Twitter**\n\nTwitter OAuth 1.0a custom scope parameter can be specified in two ways:\n\n```json\n\"twitter\": {\n  \"custom_params\": {\"x_auth_access_type\": \"read\"}\n}\n\"twitter\": {\n  \"scope\": [\"read\"]\n}\n```\n\nTwitter OAuth 2.0 applications have to use the `twitter2` provider:\n\n```json\n\"twitter2\": {\n  \"state\": true,\n  \"pkce\": true,\n  \"scope\": [\n    \"users.read\",\n    \"tweet.read\"\n  ]\n}\n```\n\n\n> **VisualStudio**\n\nSet your Client Secret as `secret` not the App Secret:\n\n```json\n\"visualstudio\": {\n  \"key\": \"APP_ID\",\n  \"secret\": \"CLIENT_SECRET instead of APP_SECRET\"\n}\n```\n\n---\n\n\n  [npm-version]: https://img.shields.io/npm/v/grant.svg?style=flat-square (NPM Version)\n  [test-ci-img]: https://img.shields.io/github/actions/workflow/status/simov/grant/test.yml?style=flat-square (Build Status)\n  [test-cov-img]: https://img.shields.io/coveralls/simov/grant.svg?style=flat-square (Test Coverage)\n  [snyk-vulnerabilities]: https://img.shields.io/badge/vulnerabilities-0-geen?style=flat-square (Vulnerabilities)\n\n  [npm]: https://www.npmjs.com/package/grant\n  [test-ci-url]: https://github.com/simov/grant/actions/workflows/test.yml\n  [test-cov-url]: https://coveralls.io/r/simov/grant?branch=master\n  [snyk]: https://snyk.io/test/npm/grant\n\n  [grant-oauth]: https://grant.outofindex.com\n  [oauth-like-a-boss]: https://dev.to/simov/oauth-like-a-boss-2m3b\n  [http client]: https://github.com/simov/request-compose\n  [request logs]: https://github.com/simov/request-logs\n\n  [oauth.json]: https://github.com/simov/grant/blob/master/config/oauth.json\n  [profile.json]: https://github.com/simov/grant/blob/master/config/profile.json\n  [reserved-keys]: https://github.com/simov/grant/blob/master/config/reserved.json\n  [examples]: https://github.com/simov/grant/tree/master/examples\n  [changelog]: https://github.com/simov/grant/blob/master/CHANGELOG.md\n  [migration]: https://github.com/simov/grant/blob/master/MIGRATION.md\n\n  [grant-aws]: https://github.com/simov/grant-aws\n  [grant-azure]: https://github.com/simov/grant-azure\n  [grant-gcloud]: https://github.com/simov/grant-gcloud\n  [grant-vercel]: https://github.com/simov/grant-vercel\n\n  [grant-types]: https://github.com/simov/grant-types\n  [type-definitions]: https://github.com/simov/grant/blob/master/grant.d.ts\n","readmeFilename":"README.md","users":{"bojand":true,"sahilsk":true,"bapinney":true,"kimi_xin":true,"mhaidarh":true,"whitelynx":true,"chirag8642":true,"canercandan":true,"kobleistvan":true,"hugojosefson":true,"fjodorekstrom":true,"karzanosman984":true}}