{"_id":"spryly","_rev":"56-38fb6b087678dadb56f5717d9eaed573","name":"spryly","dist-tags":{"latest":"3.0.2"},"versions":{"1.0.13":{"name":"spryly","version":"1.0.13","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi":"^18.0.1","@types/jest":"^24.0.11","@types/node":"^11.12.2","@types/ws":"^6.0.1","husky":"^1.3.1","jest":"^24.5.0","rimraf":"^2.6.3","ts-jest":"^24.0.1","tslint":"^5.14.0","typescript":"^3.4.1"},"dependencies":{"call":"^5.0.3","hapi":"^18.1.0","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^6.2.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"adf1b0e4b5053f5feb54abfe42747ec92c23731d","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.13","_nodeVersion":"10.15.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-K9kYjfBQSES+imiv6mLP2hugw82SoZo/dFwt0EfNimH1foGwZzfHisKqCKy+WmdRDbl0Wo/gI29B7//RzLPSzQ==","shasum":"e43b8d1ff8f42c6241cb248b4335db35a8adc373","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.13.tgz","fileCount":57,"unpackedSize":91083,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcoTZSCRA9TVsSAnZWagAAnkwP/R3MLRc3Ad/eqYShcjSE\nqJ8oPyJaoAB6FVm6SqIiVHttgNyHPJ45vsi6b9dEj2uy6d3psbGvLIP6udyh\ntEysJGfua4vsX4OBFJ0VXz67LpweqifAevL1O80qwdC11UwuvmC9zWJbLUjG\nTc9VrP4RZDwNpUTZHZnL1sDH3ndzjlWUiqxBSi8t2h8AAh13ZuxQ/lcpbqkc\n+4aLqesj93shiUWzQXrt+Z8dSw0JVDfsZ5BNWhPmN809x5ONzePlki4Y3aaP\n+cKIEi2T5QFR4cvUsyFJRJOtfz2H1DhqlPcsvZR5kn+ZHATsLS1b/EqDtnVl\n5kif9NFgviR84G0E4+Z31u1xXTnv8VPqrDCkcqyQ3ZUvt96gpZ9lVuh+oIaf\njU7duhPbn2uFqRrysIG/cntW0bMdu1JyfU/DAhOgdTftheb+rozXwZ/Ui+dy\n+riqndelsQbHRsEyEZ+xL9TGEEWbUhIA30IrZQwJMdP5uRaL3edCtihdBauF\nucqXWy2enywJCHiWQMov1djP0SYgZajExyZN2KCcpjTWQE+SF7mjBSn/0JVw\n3HE1wsdF1Qz07PWOEiL1WXb2sv9wHqacve+CsemGbfPlPca1fAZ66zcbmYwG\nUZ/Z8KDnX+vJ65jSKW29VeIZ/H0eHmYy2miatYYeMIhMcWhQcAmRZCJ43/pd\nuwRk\r\n=V10C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhwYF38pbmgfFf+Winj9itOzZtFraM32AZawkOqKllQAiEA4TIEfYQN+gVb8QuAUSXcgmUcd+/mF3CYZKArEz1ibSU="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.13_1554069074228_0.986808391906556"},"_hasShrinkwrap":false},"1.0.15":{"name":"spryly","version":"1.0.15","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi":"^18.0.2","@types/jest":"^24.0.11","@types/node":"^11.12.2","@types/ws":"^6.0.1","husky":"^1.3.1","jest":"^24.5.0","rimraf":"^2.6.3","ts-jest":"^24.0.1","tslint":"^5.14.0","typescript":"^3.4.1"},"dependencies":{"@hapi/hapi":"^18.3.1","call":"^5.0.3","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^6.2.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"bd837240813ed4131e8767f67d4c8e4fcd211ce8","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.15","_nodeVersion":"10.15.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-CiZIYoJSVKWDMy8ucp/8JeN4HbDhAOb701spVmLv+QPtzOgdOmK1JT9UooFBe1Vougw6HHij2GF3xvdP2JdMWQ==","shasum":"cde5a4bab6937a251cb47f0a3b048b67fd6b8a2b","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.15.tgz","fileCount":57,"unpackedSize":91143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxgHcCRA9TVsSAnZWagAAaBwP/0iqPwQbajUnQIwg5wVc\nClcGE6nj0/I+fAaKKX1/B7J4Kn60IQlkYNKID62uv5Ih8q1nTSrCqOCcoDTv\n53rjJFvpNLyahECqs/QeC8g3ZqLjRXPp+05ZhjAzpaw2tiWyZhVeR8F44MuI\nIg74evjUekBN6t7iPkCHJ09guPw9wF2RMwsBIy6Qx6ZhiNOczEoNNqMdiiK0\nDapK069lMfYGcDuy9RakOL+LauO/ungSJrhmD8yEO8K6ruYT0ebrhvEIJws0\nb0EjWoRyzS5cGR1qfWYK75yUYy5ZQnHSPCAUEw7c2oN2sOSRVosTDCk99slp\nsbseoV12eKP8yFJOgkhnstdGIGyCiKxi3OGERvabVzhXOX7uujFecGUjouGS\nc6JzBhZy8kL8FJSbtx7ajTJEadwNyYth6suBVHd7Qt2mLdpJSY23kcC4ZFnR\n7xpVDulBvSjhE34m0aqHS0dRdIXh9Zczevl8KlK3lUUSYh+WvG2WoA3wNOot\n3ur5hYcT4oYbMQiWjEcw9uda6IzRB1ungdeJ6wAd60S0yI8YlcTI6B7Vm/M4\nhODwq/l8RIXgqsyVHoOzz/iQ6H5JpX6YMJj/VAC/2agq3K0JUZaQHwVEVjF3\nl9yxpLvkjyAF1XZEvqex/hG/bSsU5EKcHoC1nsTgRFvkjPVupfBGRuFTIFka\nMseb\r\n=lCiW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8BAMyg14E/ThTfxOXoiyWOpV0QlGUmJQ+V1Sg98wtogIhAOt+ic7seTOf9ooQDsEGZAdODLF+bhZY7mvoBpPeGZ6i"}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.15_1556480475014_0.921129515366123"},"_hasShrinkwrap":false},"1.0.16":{"name":"spryly","version":"1.0.16","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi":"^18.0.2","@types/jest":"^24.0.11","@types/node":"^11.12.2","@types/ws":"^6.0.1","husky":"^1.3.1","jest":"^24.5.0","rimraf":"^2.6.3","ts-jest":"^24.0.1","tslint":"^5.14.0","typescript":"^3.4.1"},"dependencies":{"@hapi/call":"^5.1.0","@hapi/hapi":"^18.3.1","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^6.2.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"dda4012a57ffac8fbb13bb6d93d61c4d03d97e1f","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.16","_nodeVersion":"10.15.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-0x7pLwiOKw+cW1Jnhdp6/ef4JR9QP5n/vvumu83ZEySjPghgNh/P84H8Dv/f/znEN04oGrpiRZ1PBtteK1uYqQ==","shasum":"d8fa813042151a1b28720ea84838669bd31ab72e","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.16.tgz","fileCount":57,"unpackedSize":91155,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxgM2CRA9TVsSAnZWagAADgUP/3kcr+jDTy2dF0YIUXii\nY4IwbRS3nKezHOE8P0XbIDj+mz5vVN77PnB1RiLsPspb+mxW/WaBdjipfHRk\nJpo0SNwiz31U0YaKWjcwGoocAIbpWhJpWhburi3AeBh515beyx5ab21VkA8i\nqSujwvo/F+7X9pJ35xnVVPQn0TNaqmQXQ0jjUPhHQy4kDsW0vjdwn+9MkgeS\nC4y5YL565pDp1FyVNl1CMYlIWCWQlfloaUEXmyDnUL4mOW60SNa9qG0BvvwG\ne4b1pxYOxXfSMasnonaew4qkSP57apfZGS9dkwvtLDgf3I5BXi/0GxZsz7b2\n4KIvEh7/PzONlzr3Wil/Z4kZsW6PRvk+QQgUMcm7wlz7Axb0hfbSkF9qMG8K\nFQHPXYjSAeveN5UEt6o9gGWJLNM+F80+gW9AYymTpzhI+Nshm7o0hJQamnZU\nmglc4kqIIudw24Qlkoh4RgZVFNZkA2bG2cUP4U/GjJbBmTK0w7EJV1ibiH/9\ntIH84OWXlpWPlogdhRoedV+m4Rhqe5iqeOhrym4tyGVVO5628u/6IyEIn/jv\nXdHbK0M6xk1sKwA9si+J5a/zxGJIqN5son3DtTZTpd7L+S7r40HwuL4laFv2\nu1yKCPiIbF9mm3nnMP9Pq1h+mJA4XKdoednJq5WAeAVBMbWO2QwnHEg7kf1W\nErjY\r\n=DuoM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDRa9Y9uqKt80uTkvNsT1M3qqm6fcj3iFYy0x0mymKn0AiEA56OUpXnzdWrkizJ8EiwjpH/LKtJ2oTWOhkOW+M8EHGg="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.16_1556480821762_0.36595235412309446"},"_hasShrinkwrap":false},"1.0.17":{"name":"spryly","version":"1.0.17","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi":"^18.0.2","@types/jest":"^24.0.11","@types/node":"^11.12.2","@types/ws":"^6.0.1","husky":"^3.0.5","jest":"^24.9.0","rimraf":"^2.6.3","ts-jest":"^24.1.0","tslint":"^5.20.0","typescript":"^3.4.1"},"dependencies":{"@hapi/call":"^5.1.1","@hapi/hapi":"^18.4.0","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^6.2.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"6ca8ca0d948d00c8e2c18de1c354cab4599cfec8","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.17","_nodeVersion":"10.15.3","_npmVersion":"6.11.3","dist":{"integrity":"sha512-1CHPo5+YJYOjqPa89rG8L2DL+OKVxdxTeKGidZRnN9q1Oi5Eaqvz/AfXVJl89YqKzcVa69S1H43v3NJs+rOzuw==","shasum":"8a40518e70da0ca5e3eafe2fcb26ab5fae6a6a6d","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.17.tgz","fileCount":57,"unpackedSize":91155,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdiS9QCRA9TVsSAnZWagAA9WAP/RQmnKa1+pGT5dARXPhe\n+2gBb1Si0ZTC84twOrAU2zsphZW6d4jx79aca1bTktksSVOU/JZ63WuR+fcG\nEc1sFfCRiNmkOkEhLudM14yij2ggxBbTsSuk7Pl1tQQNRCqh8e4X6Z1NLlSD\nqksLFzQSqG4pg7nVGILi8WohTrkBpt1VyasdUe2iGjE6PGVbMY44zOH5jf8o\nkaNRmzv3r+cqftpwN6Rza2UCtDu4FeqjCrp6XfJzaU+q5vaw7GYMm32i0PyZ\nJ9wd9EO7OnRxFDffyQ3NA4fX2cJcf2KCdaWZ3+N03aNJhzkgkPeGx7tva1RG\noleytAmmjCyD90ctGDlhg43+mMsIVJkal6G+2+YZ5KcD8zDCUYBXG36aEzDx\n3uiV7Pmtf6gvXRgV5x6GD8Ozp5usnK1Vojoq3EbYve/8xRLHXosqxkpbq/av\nerjiZv7jcUvtzQv8OinqRz17NiuXrn6uyQ0RgorG/nWdmPpg+0VvJ5nFLOXP\njtgRzHXsXQhkp2JSBtvAmJ5BuPchuHHmiDINsA15ncSMJbq3H58tYB0Smza8\nkfgSWA5tpFc8e45i2bMalG2r5D3pijr0gd9kwt2Rwm9keclQLTl4YE94JDbP\nXYcJJu7K77dMZ0YxWEnPI0JXeHvScpHGHKN/FcXbTAMoo0RmoV20ptcQtjep\n+KMX\r\n=4yKT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFo0PQTvbCI/ZKzMdGTJFEm41COwm006JDZV3dnPC5AGAiAQ2GUH74m+34BQ+U3Ka0CRwPvr7HLdwsKF/w5dlNCfcQ=="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.17_1569271632287_0.7711505766897557"},"_hasShrinkwrap":false},"1.0.18":{"name":"spryly","version":"1.0.18","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi":"^18.0.2","@types/jest":"^24.0.18","@types/node":"^12.7.11","@types/ws":"^6.0.3","husky":"^3.0.8","jest":"^24.9.0","rimraf":"^3.0.0","ts-jest":"^24.1.0","tslint":"^5.20.0","typescript":"^3.6.3"},"dependencies":{"@hapi/call":"^5.1.1","@hapi/hapi":"^18.4.0","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^7.1.2"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"54c1e7cd006d4d6674bd85b7bcc18e524184c6b5","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.18","_nodeVersion":"10.15.3","_npmVersion":"6.11.3","dist":{"integrity":"sha512-Nf/N5ezNOMf0oUVxYxDG52aAcjWqla7F2eD374Ez11oJwFY4gSNdlZVneIL5p9ymY3LWL0Ntwexj1/SLRNU/Yg==","shasum":"42fa3c97aeee14b7df496a24e7243ff3ec968152","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.18.tgz","fileCount":57,"unpackedSize":91837,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlmI9CRA9TVsSAnZWagAAV24P/2YMRIWJQmLPAbHOJ85E\ngcyPN/ENBlbUHp6XlPm7pj2L6G8DLrvypw0aowIParkNinQkHvL2c/PvOSRm\nHY7LDLeOJOKYpP7IdxnnGmui7RQxbYsh8ByHJgwrAjLehIZoK5nEr2z7xY87\nvFWDT9tpvo/yk8VZYYSeBfuTHNAFWmHm8a9aI6ZNeH/TFDUnfU/egnudTc8m\naXG4sQdv08Dw4EyPghv34eD4UDEyucOGwBFnz0rXOkxSyqEGau0Dm+B+IRw5\nUMMrs/X8uWBVTDRFM5R9DUKYAM+lcivph+n1orES+v0xtNBo2qM4NtpyQ5KH\npnSavr/09emx57uMTzWnZa2MffiJUpFQWRbkIetzWbiK9a17qgaHDiX5EHsk\nJ9NagBgUSMmef+G4/R3DfwwaAm01Fx/iuJf+0IcDtkVJ75ZNsnCRfkebkaJM\n9XfcJkdvsdVBYZDoaba72Vyw0ghvs9wrrmoEUm7QZXqNdBBCIVfcJkJNw4TU\nabIs2yQlP7WgKDTE7yl4XJnPLDi3gIpOEHRSYH7oH+27brmfDWbiAidiu9dL\n36mNElROtm09sdnyDZPTCkvy6UAz6bjhAyaKXxE/bG6i8Qt5jC4oVy48IIXU\nR43QfwR375uKEYKKQsZ7IxBmL4oxexfv0TDxgebQyF7k1g71zB5scINJwUjI\n+6Fh\r\n=eCTe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDH9Czq0twhfriSiImd+2FFiZ3ZqEojo1S1j/sBTmlexgIhAMIt//lnD82WgJOtVvaqXSNH6UflYmpDA9/6Suu5k7Mm"}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.18_1570136636376_0.025695072601209068"},"_hasShrinkwrap":false},"1.0.19":{"name":"spryly","version":"1.0.19","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^18.2.5","@types/jest":"^24.0.18","@types/node":"^12.7.11","@types/ws":"^6.0.3","husky":"^3.0.8","jest":"^24.9.0","rimraf":"^3.0.0","ts-jest":"^24.1.0","tslint":"^5.20.0","typescript":"^3.6.3"},"dependencies":{"@hapi/call":"^5.1.1","@hapi/hapi":"^18.4.0","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^7.1.2"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"b59e9cfd046a16cadb9bd6291094987f016f7170","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.19","_nodeVersion":"10.15.3","_npmVersion":"6.11.3","dist":{"integrity":"sha512-PnC4vH9ht73Zqm1VaRWwDAm/yAn01+3fW48UpMz/Gq1mPVf0oJgNpTDAIMRhuguZB8j8lGOWfwU5a1DAZg1rlw==","shasum":"a8d4a3a875c43d7a18e0b7fc159b3140d449b40f","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.19.tgz","fileCount":57,"unpackedSize":91843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlmOMCRA9TVsSAnZWagAA4ZgP/i5Imx7Giqugxd9SJmq6\nB1s2S0VfwtLsGHDifLTU12Xj59+dQ90Qgh5cmJwfXESgslSokpT/4SQvLJtN\na+C7+fD6RKk4/eu8GgNkTG8GZzp6DFpJXSkPz0dEMLd7yLL8F8U6HSWYU/4E\nN0zzsvliZGfAhfYG2/8jGHkeFMPHWgc76Ka41TdmQupPTGfSOY6vIJUrvxJC\nPQGFCILQxNlkDFFoSPbAUu0uX0RsdjJsFhoZ0SvYHmfTT+PV5sQsYpgPZhe0\ntJPhIA/ttgpj5nd3REDBfoXnovxeASzOVv7wRmO5QuZRm6UX5B072AyEpV2z\n5XO7N5avXxpuIKQzE4PUTssLd98tEWBsrjU5tyVZDylVNoKrEdK0rR0z/Imf\nYVuNyF6vdgj82trCMbBL+LlvHxPIdBmkWMZl2in2bXgxBjDLujSQxGv23acs\nOK+UgEMsIHfjM5+DCaKPrvWcmKkPpOyx/SAactDFv997cWQHJ/DIxHCboUwA\nntyVsqj5LYHptypYMpag3u2zlZSqLmQglYvMAGx7wcmbu9LZf+0W3CZ5y0Sm\nqknoMsqrZYE7QaEzJO7vd/XeCkKLi6q22CGkG6yodFhOD9r6a37Zh8Kreefg\n0J9nmndm1qPNqKO9NM+ZYar6J6F4R7f5mPW/2bqCr9bR2DqfUmarJw13VIMI\nSzUZ\r\n=bt9S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBkdsyhFDzYw25jlFS7ETFkmfi1Bvd3OUtrhvo2YuvqGAiAnhby5H0K/PYw96z6CmO/diXcK5UrnZw+af7TQQf90OA=="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.19_1570136971945_0.8065805303906186"},"_hasShrinkwrap":false},"1.0.20":{"name":"spryly","version":"1.0.20","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.1","@types/jest":"^25.1.2","@types/node":"^13.7.0","@types/ws":"^7.2.1","husky":"^3.0.8","jest":"^25.1.0","rimraf":"^3.0.1","ts-jest":"^25.2.0","tslint":"^5.20.1","typescript":"^3.7.5"},"dependencies":{"@hapi/call":"^7.0.0","@hapi/hapi":"^19.1.0","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^7.2.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"d8baf64816442933530133212ff4bee4439eb005","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.20","_nodeVersion":"13.1.0","_npmVersion":"6.13.7","dist":{"integrity":"sha512-vK1wT6vo2DRbQdkU2sKkYTtFbM2U143JL/uMgkIFyQ8vzq/mMP+sxgG8fqFJhGIsj4kJailuOPGivA/x2wH9xA==","shasum":"db2239c46b858bbaed821c244bc21ee1bf198e7b","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.20.tgz","fileCount":57,"unpackedSize":91841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJePHz6CRA9TVsSAnZWagAA5vEP/RDgWorN8yIZ7KUaGL3q\nqTWVdkHH61uxZHrzc6PuDl2gvaZd0iYOXIg10H/hT06BZaAJeDtQKtXhBMI9\nWJ1bND4o06R5VigNI/hPfKY+BQsfmxHnywU5w7TR9OK0DRM1T4PsXA9AJpcC\ndNyo79z0/RR7nIVEs2JTa4Xwz9urBtpL8uapltSGE0aICBBU2AxcKpBLBFOQ\n9fa4wVIP/nZQtiCbUhcTgNtqrfEm/Q1JxaypdjU+S/MaaEOWo4U4SESeWd1v\neSrp1NjM8wXSYtmg1XiDn5lowIihxQgmsC60FVRSN0ceb7T4dZx+a+usADth\nr1d/5feimJjY6qrMBBvXx1M0MTZtbCGZ3wF0UcLAL9G4NJadImIpQoAJCwCt\nzqDVgjb0DzAL7M7WF7hu4Tct5LOGtZ14k4cpNCohulczb0zLNqs2BqC3U/bW\nbhKEnU35pev3fn/6S9cLgjPl7MPAjpkQ7ePcli3OyR4QRYfe22Ub2pcE/XqJ\n0NGWuVcn0LOQd9gQMuVVVNXaJIs6DAMPWWunnbol6Fct4BZuCSSKtL8XHknF\nb5lHd1ZLZ0KtFjywpC4/9OaH+3G71Mf4Ipywqc9vDNghUsrqdydFN5xJsaSu\n1VAnS93pFRD3H5ckDGMGPGc/OXkBCc+HU3UBMgy5AmnLsWUQg3I5jc0Ry0s9\nLXJU\r\n=fsvP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFm3YJYnVJ5/YDdg1mdiEsUzh8lbamhiZFnSq+15JogOAiEA8ttMbZ9X5Ac907luOQwexWpGYYqqwrpqkIZpksruN5M="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.20_1581022458060_0.5065537514209653"},"_hasShrinkwrap":false},"1.0.21":{"name":"spryly","version":"1.0.21","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.2","@types/jest":"^25.1.2","@types/node":"^13.7.1","@types/ws":"^7.2.1","husky":"^4.2.3","jest":"^25.1.0","rimraf":"^3.0.2","ts-jest":"^25.2.0","tslint":"^5.20.1","typescript":"^3.7.5"},"dependencies":{"@hapi/call":"^8.0.0","@hapi/hapi":"^19.1.1","lodash.get":"^4.4.2","reflect-metadata":"^0.1.13","ws":"^7.2.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"c4fce3ef3e127cb7bf3a7f52b9ca0b68216034f7","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.21","_nodeVersion":"13.8.0","_npmVersion":"6.13.7","dist":{"integrity":"sha512-LTdmOvkeNw2dVxN9Xbk5hj2FhWaTzF52AkuSQl3wuW5o+dhgEcgOGU8gn5akpSxNVSF/vQZHyzFWEbHQs+POhg==","shasum":"773c085074e298fa0040596d516bb673a4c7f32d","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.21.tgz","fileCount":57,"unpackedSize":91841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeTCyaCRA9TVsSAnZWagAA4tEP/0Fa4/au/PuS88+jbC8a\nH67gGH6RgfZKC9sxiUOlMKpLHhGHJFP8P8HNMzsTt1K4b78Mi8e3MIbpfOoB\ntkShSSpUCFn1WjrLcoU2cQxoQWzGo6zvidGkNK7be1vDwAFtpPvKT8z+CJ1d\nNV2S5pzbiYbPx20rniKmo5PsIInu9uuJ0ISnvLksch/EE52rI84kBzG21xd5\nx2Ux+vo8FIupWaRrAtUe6hnA6OWiAqG49RRQ0hHlO6b8e3R5y3Xg7bBhviQo\nc8zza2lFst9oDzq8W9MdQn4hsRWzudC+OHuHN1EW73kRpJtCg0r0X61vXkdB\nQIAIAUucfW9CJoTDKrvR5xV2NYW2UVoiN41wfw9G37L8p04MDfDBCZ3DTqNy\nmds9G1yhrjnJ8On2LmbMfta5occtNQhFGTvsSnXsAjHpaf/SbGwHh7FnmFvB\nlLq6jP+GtiPCZpoJMI1q0sS8alU1OQLabZ3VVAEcV9qSZ/VqqEjqxQBtJ9dx\njyhJ3L7yHMK08znR5oHvfb8JkWpIjfhpE8MhOR7P78ZfjUZcrInsQhsoIZv7\nysJAU8TztksBUQj1t1a81a+90xHIXjdJwLXtyWH31y83c0aSQOLU032Zn45C\n6H1FxQyUMHKwuFWyqbSSxLfh7OhfoNCxdBUAOK7wTmWAdWgubWjLLcvXg+bz\n3CCI\r\n=DZ1B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEaxRoZ5QU4cGV+KOx6E+9AumZ/cgqpE0JQiXpJZYRpxAiBToJZCUDtYDI4yHXEI7X3xbHScbB5JIT8e0pw6CUhLpQ=="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.21_1582050458174_0.9891480274900553"},"_hasShrinkwrap":false},"1.0.33":{"name":"spryly","version":"1.0.33","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.3","@types/jest":"^25.2.1","@types/node":"^13.13.4","@types/ws":"^7.2.4","jest":"^25.4.0","rimraf":"^3.0.2","ts-jest":"^25.4.0","tslint":"^5.20.1","typescript":"^3.8.3"},"dependencies":{"@hapi/call":"^8.0.0","@hapi/hapi":"^19.1.1","hapi-pino":"^8.0.0","reflect-metadata":"^0.1.13","ws":"^7.2.5"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"cd94944e7685cee534b5e1ecdb161113c9839ea1","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.33","_nodeVersion":"13.8.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-zvMMnngnhPYrMM72trRkvm0soIKdXMNWkmM6a1cwiaymy+VfkGlgQr19cJawKbv/NEIfuUgroLWH1Ok1N0b5Hg==","shasum":"eedee8b48856b6f7364314d93186d55bf860b76c","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.33.tgz","fileCount":57,"unpackedSize":91992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqG/bCRA9TVsSAnZWagAAN3cP+gKWhongyNcoz9OueO/V\n8dcyokXqJT91bZvK8LxMKAeEccAoMQbAKDP+zYreGhFK3MJK4fFXfYm1dYaq\nA7VO3EYp/h9OpoqUmKPFuJTBByXD5WzhtZHd0iezevYuoCR99aBpfbyL6O2C\npmo1o5sXceLCK1M6bKHAuShOwBj4n6+gipZx8SRp/VobKVLQJ5zgVObgQj33\nU3qkXqUh3BleHli5366VPa3+lJetx6ZrpO2JNNkeOS9YEaKPs2iqQrzgm+OO\nG0xw55hB/eEL3iiYZwV0SaBEGTL6wKh1otHx7Ivi/eWMOgSPwuSsN6k7YizR\nJMxkNKGT1Y+O+3HOhj3kS1pSyhczyO/CY3nOmGlniKHPOG0N74lvJtNAbPHO\nK3x8rh+eAniFVIIy+/sxyGm9HneKLCqDG0rTcFV2jrHi+iydUjiObePLAKlp\nglwjUkfV4jD3b/9BmqiOroV/9gQdwG4EHVD55LJbIlXU4Tw0gbUQ7M05za6y\nYQn3+HAwItAovnQTWoC+xZzjMQlRBVGJx8E8ZAH7p99hXXuhX6MGZcruGPyh\nd7hPg8D0fHOlae6c70blYm5o67gEhFhbEBN7xt3yQykUbI8Zqze59S4/kJQm\nMmF1Aih4Api8egFETVowbduuGr07Xksun95K/ayl5B9L6iZGWKWOXNpEP3hh\n2+v9\r\n=tQFR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHt8GuZXckBLLdb1bEL3RYOZZF01Xw9VsPguHlWs2nCrAiEAn/55c66auSIfucaepVdIvliy6gFg/KD0tK3f9osbq4Y="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.33_1588096987358_0.7125779786893536"},"_hasShrinkwrap":false},"1.0.34":{"name":"spryly","version":"1.0.34","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.3","@types/jest":"^25.2.1","@types/node":"^13.13.4","@types/ws":"^7.2.4","jest":"^25.4.0","rimraf":"^3.0.2","ts-jest":"^25.4.0","tslint":"^5.20.1","typescript":"^3.8.3"},"dependencies":{"@hapi/call":"^8.0.0","@hapi/hapi":"^19.1.1","hapi-pino":"^8.0.0","reflect-metadata":"^0.1.13","ws":"^7.2.5"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"af94982f7ddc9bafa6952dae0b44cd072283f0e4","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.34","_nodeVersion":"13.8.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-mhulg4aWusCDA6ww0CYdG3t9/j9UGN//2RBjTn7h2U89MBL2EtN3eVUUiUkHLNF/zUPlVlEzy2OhUoec4hqSqg==","shasum":"677868d37c667aeed984453a18f38f55f1645a5b","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.34.tgz","fileCount":57,"unpackedSize":91881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqLlSCRA9TVsSAnZWagAAoUYP/3K+o4f+5e93nJxtqDuF\npqbulg+vHJNZASD77HkDs9T98VWwed08lEAJq54CHRGiHrr4hjbtWq3mWVnm\nWmnlIi3VCD8YfF2FY0rmPrlkBUi07DQtLL21iJRWH3RlOQbF7upHZDI761py\nBpNjBqei2tGwqR7dd6dEWv2Txu2ApZjWcvsDhkCAzVbpNeKPfLmnDO7OIzgc\nK6SbhUtGTCbv4q5D1SrKhc2J8Mi3nXaEMQx2Mm0NSEp0rADaoWJW2d7Hi+YE\neo+rUsBp14BDLlL3anLUX/L3ylVs8Y/eQTCrw7AD61JGsro1aesoQAVc8Yym\npBR696TGWhvkB7QXW5HEg1HBG44F2UuitiUFBGjWs3cH+k2f7I3OnIwHae6h\nFVyx1fLOPLeAH2HG9V6wRfRol7lklkTdJIk3tpj967K+be5sxw0mw/bbfHS9\nQAcGGp1PSqRiwZ6Umr5SBVmglpkH2wYsZbqElzx9InZ5hvx6DIcfhuTQwSwD\nSkPwAu7vbMCnIjlL6LOBwAGaCWsSWgtj9mPhBIvpL8OGGlIs/fK/7KQjbRuA\nOyv71xKcN7aezPmFZsYsHnd5setSfD/jtZTLW5rMx7G32ob/sZbc/jI2f/CY\nqAQYWbrH9qNh1kpNrCBoM0Zz5dltqKhkGY3CLH/r6cP7gdB/IYXVtJ/QhJCr\nVaoX\r\n=/dTm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrQFz8Ll/FXFN82I3P8G1MN5fyjKzrDHHqlZ9bL/dS1gIgFSbTEZGOAh66u4dtLwN8SDXjPKpcfKHqv9UBAQRW0yE="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.34_1588115793914_0.6185903935273558"},"_hasShrinkwrap":false},"1.0.35":{"name":"spryly","version":"1.0.35","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.3","@types/jest":"^25.2.1","@types/node":"^13.13.4","@types/ws":"^7.2.4","jest":"^25.4.0","rimraf":"^3.0.2","ts-jest":"^25.4.0","tslint":"^5.20.1","typescript":"^3.8.3"},"dependencies":{"@hapi/call":"^8.0.0","@hapi/hapi":"^19.1.1","hapi-pino":"^8.0.0","reflect-metadata":"^0.1.13","ws":"^7.2.5"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"7e2e38ab7bfc0c985e9511459517a3dbddd8ab03","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@1.0.35","_nodeVersion":"13.8.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-/zJh0PGaMohfBtNgHdgG3N2ojp5tWqbKWj5l3y2LnOC9P9RE9HnMKBYuRqK04Qe9tFtpNOe5/2gzmYuEfC3RJg==","shasum":"ad5a42cb389e9290007c46d5af566c517dd91e04","tarball":"https://registry.npmjs.org/spryly/-/spryly-1.0.35.tgz","fileCount":57,"unpackedSize":91895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqLo2CRA9TVsSAnZWagAA1+EP/1kr7Gn+oABl1o9xL6RS\nV1dNkGUs1eNIpft1PIzufemW+ceNQ29T64+hewHJdflcYmDk2S79HocOTF2z\n9k6jA3ke0zq8JNJIhvo3bp9OnwiEbz8RXKizvcLG2fnWhbEHn2vQ/BYPsRCb\n5NgDamXoiqhK27lc5CrFQHj8WOtezQTxnRZbSdauqieH9vM1U3IIl7t8QAo0\nwv11G9ixDyCrSV2e3rLsMGYuwAlZnSUwwpXn/sQcVWw/bSIiZH0GhdAx8cIX\nc7LKzTR9lRIV+VpbKURfAlVQptjXIq+XXfqCkMu+HQD3/Al12CUNJyZjZBDf\n3hWP6vekjWebHn7Q4HXl/iVXefE+pmZY1Hqg1BPUclyMc48C3Q7pcr9tb08+\n83fZgu+zEdAi1hIIP9kI5W85+iJ8Y/Zx0lJWmgfziCxOAK3FzChQaSj5bYLU\nPlvpr3mx9PnW2oeTrUgGmm56AWFAmLbVt7ylRGJ6bpYatY7ztZoe/Wbai6Yt\nHsWDaXpNGEB2KMLJguxzJpXQUA0MYYM60YitN0ZjIadd875iqCGvZ2iQH/TB\n37iwvyE/LFS4Ij8Tch+6HlC+p+JsXHSpNbOlpF1jE6sAzcVuwFCTF9qN+EWh\nfrdovnHJ284v0LWUXH9gn95y0WRGIqtvbPGtn9foo/Dq1p1Yl3ar7PiVhP75\nXh42\r\n=TiI4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0f63lcXtDFI/ssPbdSPZuxDo95K6KixDVL1UpcbCyiAIgQ0dN/GN+/Yq1Iera+cfeI7dEUDSyBUHIr9YVdfKcGBI="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_1.0.35_1588116021813_0.49457715788572076"},"_hasShrinkwrap":false},"2.0.7":{"name":"spryly","version":"2.0.7","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.3","@types/jest":"^25.2.1","@types/node":"^13.13.4","@types/ws":"^7.2.4","jest":"^25.4.0","rimraf":"^3.0.2","ts-jest":"^25.4.0","tslint":"^5.20.1","typescript":"^3.8.3"},"dependencies":{"@hapi/call":"^8.0.0","@hapi/hapi":"^19.1.1","hapi-pino":"^8.0.0","reflect-metadata":"^0.1.13","ws":"^7.2.5"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"5d4fa1544013e557b5bf28003e1ffabfdd47e492","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@2.0.7","_nodeVersion":"13.8.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-3i8mEc6/4sXhYCf6cipJCc1/RStq3kD+45fPhuJRGmZk2+Q+56cGuZRqB1nxahoUIrdlUP8fYN10O6ol1ZBTAQ==","shasum":"96ce7381e3e088c95f2ccf7396b36e94b0412a8b","tarball":"https://registry.npmjs.org/spryly/-/spryly-2.0.7.tgz","fileCount":57,"unpackedSize":92640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqilxCRA9TVsSAnZWagAAGMUQAJP7/NxMW0gWkq8wiuti\nnqi6hoqJltzrQ7OzXHeLvwDEUqwzN92kygoZ4BLgmeZKCVVWM0eQU3NXmmHS\nyxLvRWMJr8YMV76k5y9xGM82A73lfiaJ/MIDBkr+YOwBHxSf1DQ7z7XfvWOi\nCA6ZAVH3O8+t61YqroOIgzXVoDcYcMDxlaiXZ/cdrZt2e2oktIDA8kR/3WeK\nzMoj7w2GVEPnSrJDpx86L3smcFVSKUsDxWvVj3m3GlFGsKyQff4MLggUfm11\n8Akrsn/vOC7l0lQKuVvO49v/gECQSFFUhunNUCH+7rJbM5D/8PQat3kaLy+4\nf7JRR2uMUhEM8By2VY4U8C6mV9pNw1C90gsEgJtTH1zMuMGfGvgxddZ3d8wf\n6RsJUIxOdGelsWsKUR6bxaeqw8TqQbrtB69m1etNTTqh8Du3Rn/MarPK+6vu\nPeyKT7Y3/fQNNvgKzl5HcRuc8F5gdXst4p0SBOGMWBqHYK+w4tXV+xkcnSxL\nG/kzWvwPuNos/wUNDIkTfcdJ0YTVulf273u4VdQ2UMgS4/H0pomax408mv7t\nN0a9Y9IQWebHR+jdIgZxUvKJryqhdZLRya+np39gzMiRQXD+YkgApx7tFmwi\nugHLgEFAew04b9s7ffc+6teiBM4fboemOVzMYkSqkix9MKkkgZp1Y/yavXUI\nR3hn\r\n=nwRf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGA3aJ+McwTd63n30VLtS0zzCbmfKZ0FMJ9L2qYyTglzAiEAidpyA1jxM9ApChM7jjjr0CAGa/Z0xhziisr9pc7Byfo="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_2.0.7_1588210032649_0.8444011398624216"},"_hasShrinkwrap":false},"2.0.8":{"name":"spryly","version":"2.0.8","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^19.0.3","@types/jest":"^25.2.1","@types/node":"^13.13.4","@types/ws":"^7.2.4","jest":"^25.4.0","rimraf":"^3.0.2","ts-jest":"^25.4.0","tslint":"^5.20.1","typescript":"^3.8.3"},"dependencies":{"@hapi/call":"^8.0.0","@hapi/hapi":"^19.1.1","hapi-pino":"^8.0.0","reflect-metadata":"^0.1.13","ws":"^7.2.5"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"8f1e5f79a45bfb6e0efca57eedd8a460927151c6","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@2.0.8","_nodeVersion":"13.8.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-T4PEcpIK+9tYbAygjLldGbFN4pE4adUFbTM38O9U1/mGVrQxnyVeOdXYA4S16hg+1NwbVfOJ2bUMiqAGhRFVIw==","shasum":"7ed5a27c22816c6094999122ea336b3796d792b7","tarball":"https://registry.npmjs.org/spryly/-/spryly-2.0.8.tgz","fileCount":57,"unpackedSize":92703,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqoDlCRA9TVsSAnZWagAACU8P/1TEGaqpgiVgyd0l9HcU\n8IR8skbFCp8Bua3QKa3PTFKjpnAlNnAJaoM5iS1JxPWqWW480gRwMRRdQoVF\n6Vztr5TtALwUsby49ecMUhYeBE1Nou0gfh2Ollz/O73eRhThK6L16TLmdJgf\nRh/Ex8F00Tq3pQSpjswMqHrQZzeTuySSQiDxxOPpavcc0qMqD0JVkqHigjtu\nd60bnQcVSw7SnVL+ksbRhvSk04ip2GjttfoYrtZlix+OVM3x6JQeA66gg1hi\n4ovjHJrl9/SKa/RvTScjEelFjuiO3xVXhqZe6cljGh3i5mEtIWu2Be/C8X00\nUgxiNYx8ZBFO4xnTdnTvRCSSiP6cmYYEGNFk7J9LyRzEsiPJ/g9N+Vg8/quQ\nJIoeg92EsnUSPZq85w8kF/qMmcZzpA/ZSzVaCF0z1ANYIRwqWTxskWIGfBhk\nbOnFKhuzCPQoYCjeyVrsb3ZZ+GADZpb72lS3lN+p+GnJKUmhButLOoSMqLCO\n9sspR9MdNj47I//PJkT6xN5e1W9lb7XA4fu9ywHhHSd44YKbanQEvHX6GuHL\nUFN9ZALQ3vT8H9DYQusZmCmDbEmOVktJfsqnZOV9fdpbz/il9LpEy5fseYfp\nJ50mS6I4rFlIE8luAoc3MACjv1kblCs6vElPKlpbyLxyB8egUQFmleAKEm+r\nyIf1\r\n=CWqs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDoN3hc++3jZDMCbaxvuS5HbP7sGSw53V7f8gX8orVXgIhAMXR9qWuihG4clg2wY77XaH3kdcfXzG/+oIYN/v1IQ82"}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_2.0.8_1588232421205_0.09780424809963817"},"_hasShrinkwrap":false},"2.0.9":{"name":"spryly","version":"2.0.9","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","tslint":"node ./node_modules/tslint/bin/tslint -p ./tsconfig.json","precommit":"npm test && npm run tslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^20.0.1","@types/jest":"^26.0.14","@types/node":"^14.11.2","@types/ws":"^7.2.7","jest":"^26.4.2","rimraf":"^3.0.2","ts-jest":"^26.4.1","tslint":"^5.20.1","typescript":"^4.0.3"},"dependencies":{"@hapi/call":"^8.0.1","@hapi/hapi":"^20.0.1","hapi-pino":"^8.3.0","reflect-metadata":"^0.1.13","ws":"^7.3.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"79ff0a2b529f713880cb813f498d82df5f532e0d","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@2.0.9","_nodeVersion":"14.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-NJ9DqDt54PP8vDRVR0c8zRXFQKczqN6qGRLEdJt3g3bAa3+ouYriiEr4WCIcsNsanhQ37DZcJ8vgfnqjyru13A==","shasum":"ce7d5ba3432c69318447936a28b4e7acede49634","tarball":"https://registry.npmjs.org/spryly/-/spryly-2.0.9.tgz","fileCount":57,"unpackedSize":95325,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfeq53CRA9TVsSAnZWagAAlkcQAIsEp2DW/0XYZPx8zAth\nrgOGtKzYoP1ed/Gfmx6nf+jzhlJVQon9Cu0bZE6VduMOvBNFEz7c38jPeKi+\nVbRswSDbFR+SWlenjRMA4sOinAcYeFuzpG2bmiQYyJXPrlHWobdTl3c4hFib\nDMtCYaoWN75JeOrntBDeoCKFY/dvELdJQdhMh+c3CWHK7dx2ZPhru2Kz314L\nwcw1ydKpDQjGtNI+6i9NgdgNn9xRxGr8p9PB6l8P4K2y6t4V+9zyQapvxc2t\nb8L6O7CZYyeFvfe8out/E5Y0FSUTrOnucYj6W0Mwfh0MNJ+QDnfMuuiRks0x\nM1ZE43vQyjXx5J4s/Wa8uvqvztQMbqTLoKV5m6SGHgISPz/n+FN2CSe/DNuX\nv1pnwYVdnvymrDwt9evj9m9Towl0RDsuy03SKMw3r/08hDqRljyyD+1PqQM7\n5TDlmkVE5tDKrAkf2c0FBetfH9XGa+crxFUQA5ZUE8q0HEulJyzsWw5ESTzJ\nS8wsDTt+mlBp+RLlUizRCDkk5qVRzGUvmpoibFxSNOU17wc/tR1ZY9wcHtFO\n932P6ZKaRC16gGs9tZR+W8J6T/l4xC8qyWcaeT9dRXT8AxLwtWWWPqzTKs10\nC/XYFfd86y92Kw4toBJq7a8o5fIGRoi+Z/eYPbYgCdS/V+tn9sqRAHFAq77F\nJmuO\r\n=cPGE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPrE8BRxX9jB4cLtrR0fm82ecgPX+F0ITffS8I8b5tCAIgCeCS15wCC3pCEOOOOXrPWPelAGwtYJqEABniBSWbKCk="}]},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_2.0.9_1601875574887_0.3162124037410141"},"_hasShrinkwrap":false},"2.1.0":{"name":"spryly","version":"2.1.0","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","eslint":"eslint -c .eslintrc.json --ext .ts ./src","precommit":"npm test && npm run eslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/hapi__hapi":"^20.0.1","@types/jest":"^26.0.14","@types/node":"^14.11.2","@types/ws":"^7.2.7","@typescript-eslint/eslint-plugin":"^4.12.0","@typescript-eslint/parser":"^4.12.0","eslint":"^7.17.0","eslint-plugin-import":"^2.22.1","eslint-plugin-jsdoc":"^30.7.13","jest":"^26.4.2","rimraf":"^3.0.2","ts-jest":"^26.4.1","typescript":"^4.0.3"},"dependencies":{"@hapi/call":"^8.0.1","@hapi/hapi":"^20.0.1","hapi-pino":"^8.3.0","reflect-metadata":"^0.1.13","ws":"^7.3.1"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"e92350022380a5f4c848a5d6cf5a8e707367d0b8","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@2.1.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-mERV5SxmANLvUl1SckqJHDq4P4GLU1jQOP9V9mEEfxi2vJ2MG1GK+n86PBM6KqlTk7Hde8G72KS5moeftxN9tA==","shasum":"3104dc527646bb73066f9b91a2cb99ea82f96386","tarball":"https://registry.npmjs.org/spryly/-/spryly-2.1.0.tgz","fileCount":57,"unpackedSize":95188,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgExCDCRA9TVsSAnZWagAASBAP/0CXidGFWriP+NjqUeO5\nYOeWj4hf24JySd1LT4b9EFFZQ+sQYKknTToaAWdZDF/OAQgBF3NGiGDRTEAT\nmxSgmCsekIAfC494abH/3eSxDtrfSeBr5jWdHGk8Q+G4PSzmsqKeQtnulqF0\nnxU7vn4/ltcYu7graCny6E7Kb4vv1nQTY0f/FXxx1g9vmVO9rVNJUdl2jf0D\nA3X8TI9SPjdMy8Aq6A7yOEWGK2sTt/tdJLCEvTvkChum8aU6OI7lYAkMofWR\ncveRWwiDUDR3m3QPoAvAN1FanG/bAsFTvNDAnV2ke5QJdZVz6OO3L4DMyxGS\nveOTHB+QZDzQ+RQPx7XnD59JDk98W66UvJmN1TVAIm35h86l1eTO58LnMBnK\nYF6VNpoZ+KCwGoRwliUAXt8XiFgXJMNYT4ZHzL0TbP1NqBjVZTZB9XERxNL9\nmLZC0uHQSUheQKZfNbwpy2lD0UqApyR2MjvsjSyTplz8EIs+sWreKsYFxEJp\nDUgmaV6fNPg380BNFP/rFu8VAPGX0NSH13Gx+D0KXR/3H6j1LSvL9pgPjQR0\nz3JWrDqUvpI/+/jT7aJ8bd0IZ3aTdomYFJb2GjvI/YUNT9wGhbpDv8p0CLEf\nP0hFy6ppa/2+Iob8c02ifMdHX1lF37GSQRJANNsXEkiS76gVHAUOXMBAqNgS\nrOfb\r\n=eRXQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDd6R5hfd54slEeNaOvvojyMZxeLBeruxxchFsDxoX75QIhAIcWqRdjE+4SRpv8PO2lj/QdTGHVNPcoeIFapx/Rhqir"}]},"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_2.1.0_1611862146732_0.949388375640684"},"_hasShrinkwrap":false},"3.0.0":{"name":"spryly","version":"3.0.0","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","eslint":"eslint -c .eslintrc.json --ext .ts ./src","precommit":"npm test && npm run eslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/ws":"^8.5.4","@typescript-eslint/eslint-plugin":"^5.58.0","@typescript-eslint/parser":"^5.58.0","eslint":"^8.38.0","eslint-plugin-import":"^2.27.5","eslint-plugin-jsdoc":"^41.1.1","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"@hapi/call":"^9.0.1","@hapi/hapi":"^21.3.1","hapi-pino":"^12.0.0","reflect-metadata":"^0.1.13","ws":"^8.13.0"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"38b02a046b1db41f4775a7cbb987023722676bea","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@3.0.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-7zCEH30yO6ABvGMv1Lp+0YK0dEPSNpQ07C3ImjGpeJKgYo9BCBuwwwxa3Wrf61TTMY29dM61Kt/sGS8M9GPmOQ==","shasum":"110fdb6982135bb626df2c2fe5442795687a4f9e","tarball":"https://registry.npmjs.org/spryly/-/spryly-3.0.0.tgz","fileCount":57,"unpackedSize":95380,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG/e08713XUVhMpTVFdzC6q9ej5vR07Tr+Gl63Dw7+FgAiEAwrIOIp4e5MkY7abG3bzhzd6uvxtOepxY2USPeksM44E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNekQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqS7w//RfgvWOwgrtbzkzR9wi0QwWxOJhALig9+ConQppKuPdqUOQO5\r\n9TN98UTaBmXJzlYhcomyshgrpkjse2WOfe7Bq7JnmsFlzHd+7RGRgBMBOSBZ\r\nCiGj70sbp/fGeuvmP5KyeZwiw5piokfA7VizsF2ViJML4dv+hj8bKxbii7cw\r\njnTcN70l7j0le4/y1msw5pPFRJp6IpEczgwy+XxswrDTmGAXQ0ni1esTDLsr\r\nEmbyXllFHlCPC9Tgezy/pC2MD+NVpuhHtvau/JyAL3bi/b/byyarctyvZ8Zk\r\nYztQe7kj07LSWPyYjEXaCxXe6Kn/FQpuY4s5tKJZr6Xezz770N5DW9FZzNuA\r\nl1F6qzYdo5K0GcbJJXDnFxAD8xj+iL4bOGH5Xt1PBnmBfCaojOyB4jMJQ2TK\r\nNJD562Q4dYRZsCKbe6/QoWD7GXpQjxhRj7H9GTTadSGhTLanQgxSG+pXBXgq\r\nbu9jq+ai/6wiJzhXRrTJsN9F+srZ/9BmCPhSRrU+SFV6by5BCXPRc46SzL9D\r\n3a8hgFgGWkjYe5jvReF0aAH24h1P1PcLEBIOKXbcFQXPbVHTFTP7TRIL2wvj\r\nocbZOdt9zKH4Dr7PFN2i2bd1zthXDuaUb6O3gA1V3GVVMfy4ZWUAnbBff3cA\r\n8FgerpNRXwe7uoK7HQB0PoXLYyFwETQRthk=\r\n=OaHL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_3.0.0_1681254672717_0.2731359580190349"},"_hasShrinkwrap":false},"3.0.1":{"name":"spryly","version":"3.0.1","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","eslint":"eslint -c .eslintrc.json --ext .ts ./src","precommit":"npm test && npm run eslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/ws":"^8.5.4","@typescript-eslint/eslint-plugin":"^5.58.0","@typescript-eslint/parser":"^5.58.0","eslint":"^8.38.0","eslint-plugin-import":"^2.27.5","eslint-plugin-jsdoc":"^41.1.1","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"@hapi/call":"^9.0.1","@hapi/hapi":"^21.3.1","hapi-pino":"^12.0.0","pino-pretty":"^10.0.0","reflect-metadata":"^0.1.13","ws":"^8.13.0"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"9fa6eee8bb121c700d9f38768f4715da765eed6b","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@3.0.1","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-Afrunyds3tOk2A33D4n3UJmd+CZDgMHHOvLvdSHZvKlYpSjIcrBewoCyhVjOhZFoDg8zCjoe3gxI1MqW3yULaQ==","shasum":"3f2344b67558afb5bf38f0c57e2d196140375440","tarball":"https://registry.npmjs.org/spryly/-/spryly-3.0.1.tgz","fileCount":57,"unpackedSize":95689,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDc0VXCYlYf+/S1X4DxjMJkZLsrqHNbNubVKldNozxnHAiBxk/6GQ/JEhx0nRUPCRLXzJ0fj4T0thSkVAGM667Tw5w=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNfTyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJYQ//TWtYUfC1qh+d4UsJyyKJwgtU7fCBQpOugAcTLQWcBDNmEpKQ\r\nB3/XcayqZ+1cBkJEpu2rYQDRpRRn5H66JWKn6gl8SPBeQ93ROTY8wJXXRWV8\r\n+HIJFM7X0tdUR0SqJqAJxy9Htyc/Gm0DJ/91Yy6B+4Ifs8FBMzmZPU/vt8F4\r\nx2rmpBeKoJotOkHlfNomzAAqOBRnYIACK5gzvLXSeC82CMn5HsXNRUr+x35J\r\nN71ovJHOj2jr06BVrn9oaj9sEJlfG8CnXo6GRvO7Hlhk+wxlhXzDdLHXkO0J\r\nkn/8CDEn4pzZh0KysN2fupBQcfOatnKpRvvMcMhIY6ImrEo3VlQ74JkZC9GG\r\nrdK23pJ0eYJI6FSBFjcr6gxWpFKxqUfuVDC8/uYUHUT13VYbFiFpoeyCcMQ0\r\nHp2QymRXA6TgFfiGz686OaFGcGKVaWj7li4bOaBu0O+z2EOQLd6deKFukoZA\r\nj3rmXpKuvnyw3xNm4rduoMv6ylS2CBY3F008B2iNA/I2srGOrxis9c6+089k\r\nvAOWy3A3ahGNVuY52bSmu/wwInzeYFWtpEAxTAht0HNJsZAruB3hIPyB7bxL\r\nwikiCeNC+IaCYtQEIU4Z/55hyInMTX1cAcfPcNGLwmwXGndkbiIjas5Kv9qV\r\nfK+gmqExPhYQV5D11ypKTpIyg0BZgL+CG8Q=\r\n=DMG0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_3.0.1_1681257714626_0.34509352492369616"},"_hasShrinkwrap":false},"3.0.2":{"name":"spryly","version":"3.0.2","description":"Make Hapi with Typescript a little less painful","scripts":{"prepare":"node ./scripts/prepublish.js","watch":"node ./node_modules/typescript/bin/tsc -p . -w","build":"node ./node_modules/typescript/bin/tsc -p .","test":"node ./node_modules/jest/bin/jest.js","eslint":"eslint -c .eslintrc.json --ext .ts ./src","precommit":"npm test && npm run eslint && npm run prepare -- --hook","preversion":"npm test","postversion":"npm publish"},"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"keywords":["hapi","typescript","di","injection","async"],"main":"./dist/index.js","types":"dist/index.d.ts","author":{"name":"philprice@gmail.com"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"license":"MIT","devDependencies":{"@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/ws":"^8.5.4","@typescript-eslint/eslint-plugin":"^5.58.0","@typescript-eslint/parser":"^5.58.0","eslint":"^8.38.0","eslint-plugin-import":"^2.27.5","eslint-plugin-jsdoc":"^41.1.1","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"@hapi/call":"^9.0.1","@hapi/hapi":"^21.3.1","hapi-pino":"^12.0.0","pino-pretty":"^10.0.0","reflect-metadata":"^0.1.13","ws":"^8.13.0"},"jest":{"rootDir":"./src/","transform":{".(ts|tsx)":"ts-jest"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)$","moduleFileExtensions":["ts","tsx","js","json"]},"gitHead":"659996bd88f627dffa719c3b9b5f6b0b2f21dd20","bugs":{"url":"https://github.com/sseiber/spryly/issues"},"homepage":"https://github.com/sseiber/spryly#readme","_id":"spryly@3.0.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-+7JPaAbGXigZTe48qOIAHxkPw4uPOGnRdW27mkVCH0PosxgcBGgKhAb70hyl1pwjI/O4G/CPVNX+i3MstMMbNg==","shasum":"d8c40da68120902afc6abe23173ae54a40ad1174","tarball":"https://registry.npmjs.org/spryly/-/spryly-3.0.2.tgz","fileCount":57,"unpackedSize":95720,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICekcRyzavnvF2fd1pD41jjdRJ4hZb6DA+iwqzHVRmLSAiEAu2HtxmBjz56gWHvNhcSmq9bQki2acTAzcMXZvJOX61k="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNfVZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoYsQ//dIWBOjSaPOby4NWX0yyAeGQv2gxcWU+u1M/xRMmuHZULSto8\r\nXekftjiOJGNtBlaQ40jcttiO2W2kOvPIX9fsxsi94OOubtj5XM5OaeemZ8tg\r\n2ZbhAB1wBSXMrGbeA9+nZ0vdkZVYr1noUlAYHbQvJizajGRWGHoMLUPWJEg6\r\nGcfXjTbbz9WfSk0rRh8mKbSKgAYhPg4w7TelQJIK55lMtxMOuenJvu7iLmnN\r\n93///TufFv0Zaq/AoFLC7ZaSa4UNFh7qL3aq8Eqpj2bwiTBW7xatFFzFepCE\r\nuZaChzlNHtJya+qKRMXWXAXP3/RgSRpeL+o+XKCV2RMlug7szYUdJ6pZ+fie\r\nkB+fxDIr4xSWilCQVK2eGHWZqELbOHNa+49ZYNnkQ/FtG4cpdPVmvSzTq/6+\r\nJMUPOQXRmhNGs581VqIwDvtLD9TRUS8hvqKoA+W5CAdMcVetWrBy/eZOJ6KF\r\npFdLGOJcPaZcioEw9LxG+8cMb1OVoAFGxihvbBP1GCpM9eCWBRdQWYhPAzbs\r\nDlnw/2GAU1HXD0sieW9eb2XPpiZee05ahmbWs6IcxmDvbYOsno6OSC/D6YtR\r\n6TycsbqHeD1adiefDeSseeSgeHP7XWj/FMEyW2Vi8x8lld0J3IVnTS8W+Syr\r\nfnlZczEyXqiMB5PARfxriboGr2YW0yHy/7s=\r\n=lyWy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"sseiber","email":"scott.seiber@outlook.com"},"directories":{},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spryly_3.0.2_1681257817340_0.6117460708123941"},"_hasShrinkwrap":false}},"time":{"created":"2019-03-31T21:51:14.228Z","1.0.13":"2019-03-31T21:51:14.382Z","modified":"2023-04-12T00:03:37.659Z","1.0.15":"2019-04-28T19:41:15.188Z","1.0.16":"2019-04-28T19:47:01.893Z","1.0.17":"2019-09-23T20:47:12.445Z","1.0.18":"2019-10-03T21:03:56.512Z","1.0.19":"2019-10-03T21:09:32.058Z","1.0.20":"2020-02-06T20:54:18.157Z","1.0.21":"2020-02-18T18:27:38.301Z","1.0.22":"2020-03-01T23:21:29.232Z","1.0.23":"2020-04-28T00:53:34.161Z","1.0.24":"2020-04-28T05:58:14.784Z","1.0.25":"2020-04-28T06:00:19.060Z","1.0.26":"2020-04-28T06:35:38.125Z","1.0.27":"2020-04-28T16:58:58.540Z","1.0.28":"2020-04-28T17:18:26.858Z","1.0.29":"2020-04-28T17:20:18.733Z","1.0.30":"2020-04-28T17:34:25.765Z","1.0.31":"2020-04-28T17:36:15.828Z","1.0.32":"2020-04-28T17:38:38.727Z","1.0.33":"2020-04-28T18:03:07.569Z","1.0.34":"2020-04-28T23:16:34.037Z","1.0.35":"2020-04-28T23:20:21.993Z","2.0.0":"2020-04-29T23:20:38.033Z","2.0.1":"2020-04-29T23:43:00.987Z","2.0.2":"2020-04-29T23:57:42.473Z","2.0.3":"2020-04-29T23:59:50.078Z","2.0.4":"2020-04-30T00:01:25.744Z","2.0.5":"2020-04-30T00:51:29.490Z","2.0.6":"2020-04-30T00:54:36.513Z","2.0.7":"2020-04-30T01:27:12.757Z","2.0.8":"2020-04-30T07:40:21.301Z","2.0.9":"2020-10-05T05:26:15.008Z","2.1.0":"2021-01-28T19:29:06.833Z","2.1.1":"2022-04-11T01:33:43.029Z","3.0.0":"2023-04-11T23:11:12.892Z","3.0.1":"2023-04-12T00:01:54.860Z","3.0.2":"2023-04-12T00:03:37.532Z"},"maintainers":[{"name":"sseiber","email":"scott.seiber@outlook.com"}],"description":"Make Hapi with Typescript a little less painful","homepage":"https://github.com/sseiber/spryly#readme","keywords":["hapi","typescript","di","injection","async"],"repository":{"type":"git","url":"git+https://github.com/sseiber/spryly.git"},"contributors":[{"name":"scott.seiber@outlook.com"},{"name":"jerryjo@microsoft.com"}],"author":{"name":"philprice@gmail.com"},"bugs":{"url":"https://github.com/sseiber/spryly/issues"},"license":"MIT","readme":"# Spryly \nMake Hapi with Typescript a little less painful. This is derived from the original \"Chipper\" library\nwritten by @pprice.\n\n - Manifest driven server composition \n - Hapi plugins as ES6 classes \n - Service composition and injection via decorators \n - HTTP routing via decorators\n - Websocket support\n\n## Depends on Hapi >= 17.x\n\n## Example index.ts\n```\n    // The manifest is an object that specifies the server port and the order\n    // of service and plugin composition. It has the following form:\n    // {\n    //     server: {\n    //         port: PORT,\n    //         app: {\n    //             // server.settings.app settings go here...\n    //         } as any\n    //     },\n    //     services: [ // compose all the services\n    //         './services'\n    //     ],\n    //     plugins: [ // compose all the plugins\n    //         ...[\n    //             {\n    //                 plugin: '@hapi/inert'\n    //             }\n    //         ],\n    //         ...[\n    //             {\n    //                 plugin: './plugins'\n    //             }\n    //         ],\n    //         ...[\n    //             {\n    //                 plugin: './apis'\n    //             }\n    //         ]\n    //     ]\n    // }\n\n    import { manifest } from './manifest'; // import something like above\n    import { compose, ComposeOptions } from 'spryly';\n\n    const composeOptions: ComposeOptions = {\n        relativeTo: __dirname,\n        logCompose: true // auto-import hapi-pino logger\n    };\n\n    async function start() {\n        try {\n            const server = await compose(manifest, composeOptions);\n\n            server.log(['startup', 'info'], `🚀 Starting HAPI server instance...`);\n\n            await server.start();\n\n            server.log(['startup', 'info'], `✅ Server started`);\n        }\n        catch (error) {\n            // eslint-disable-next-line no-console\n            console.log(`['startup', 'error'], 👹 Error starting server: ${error.message}`);\n        }\n    }\n\n    start();\n```\n## Examples\n### API (Route) Example\n```\n    import { inject, RoutePlugin, route } from 'spryly';\n    import { Server } from '@hapi/hapi';\n    import { Request, ResponseToolkit } from '@hapi/hapi';\n    import { AuthService } from '../services/auth';\n    import * as Boom from 'boom';\n\n    export class AuthRoutes extends RoutePlugin {\n        @inject('$server')\n        private server: Server;\n\n        @inject('auth')\n        private auth: AuthService;\n\n        @route({\n            method: ['POST', 'GET'],\n            path: '/api/v1/auth/generate',\n            options: {\n                auth: {\n                    strategies: ['sample-jwt'],\n                    scope: ['admin']\n                },\n                tags: ['auth'],\n                description: 'Generate tokens'\n            }\n        })\n        public async generate(request: Request, h: ResponseToolkit) {\n            const payload: any = request.payload;\n\n            if (!payload.scope) {\n                throw Boom.badRequest('Missing scope field in payload');\n            }\n\n            const tokenInfo = await this.auth.generateToken(payload.scope);\n\n            return h.response(tokenInfo).code(201);\n        }\n    }\n```\n### Plugin Example\n```\n    import { HapiPlugin, inject } from 'spryly';\n    import { Server } from '@hapi/hapi';\n    import { AuthService } from '../services/auth';\n    import * as HapiAuthJwt from 'hapi-auth-jwt2';\n\n    export class AuthPlugin implements HapiPlugin {\n        @inject('$server')\n        private server: Server;\n\n        @inject('auth')\n        private auth: AuthService;\n\n        public async register(server: Server) {\n            try {\n                await server.register([HapiAuthJwt]);\n\n                server.auth.strategy(\n                    'sample-jwt',\n                    'jwt',\n                    {\n                        key: this.auth.secret,\n                        validate: this.auth.validateRequest.bind(this.auth),\n                        verifyOptions: { issuer: this.auth.issuer }\n                    });\n            }\n            catch (error) {\n                this.server.log(['AuthPlugin', 'error'], 'Failed to register auth strategies');\n            }\n        }\n    }\n```\n### Service Example\n```\n    import { service, inject } from 'spryly';\n    import { Request, ResponseToolkit } from '@hapi/hapi';\n    import { randomBytes as cryptoRandomBytes } from 'crypto';\n    import { sign as jwtSign } from 'jsonwebtoken';\n    import { v4 as uuidV4 } from 'uuid';\n\n    const SECRET_LENGTH = 64;\n\n    @service('auth')\n    export class AuthService {\n        private secretInternal;\n        private issuerInternal;\n\n        public get secret() {\n            return this.secretInternal;\n        }\n\n        public get issuer() {\n            return this.issuerInternal;\n        }\n\n        public async init() {\n            this.server.log(['AuthService', 'info'], 'initialize');\n        }\n\n        public async generateToken(scope) {\n            const id = uuidV4();\n            const arrayOfScope = Array.isArray(scope) ? scope : [scope];\n            const payload = { scope: arrayOfScope, id };\n\n            const options = {\n                issuer: this.issuerInternal\n            };\n\n            const token = await jwtSign(payload, this.secretInternal, options);\n\n            return { token, id };\n        }\n\n        // @ts-ignore (request, h)\n        public async validateRequest(decoded, request: Request, h: ResponseToolkit) {\n            // TODO: validate incoming request\n\n            // Ensure there are ids and scopes\n            if (!decoded.id || !decoded.scope || !Array.isArray(decoded.scope)) {\n                return {\n                    isValid: false\n                };\n            }\n\n            // Build the \"profile\", we really just need to copy the scopes over so hapi can later validate these\n            return {\n                isValid: true,\n                credentials: { scope: decoded.scope }\n            };\n        }\n    }\n```\n","readmeFilename":"README.md"}