{"_id":"@mhio/koa-api-handle","_rev":"33-1e52872dd375fe9adc425b26f2f35823","name":"@mhio/koa-api-handle","dist-tags":{"latest":"0.12.1","testing":"0.12.0-4"},"versions":{"0.2.0":{"name":"@mhio/koa-api-handle","version":"0.2.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/int","test:int":"mocha test/unit","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -x -w . -i test/output","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-async-to-module-method":"^6.24.1","babel-register":"^6.26.0","chai":"^4.1.2","eslint":"^4.16.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"^4.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^11.4.1","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"1b2b84f442c32feaf8685dcb0164436666a319d6","_id":"@mhio/koa-api-handle@0.2.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-Qjmo1SVr9/Du9Qy4ONhh0n0Hn7GmtfCZzrwDBn/b4g7Uamd11UgMJvZIw2aSH5zmG9yo7K0Cl6bD79DrcOImvQ==","shasum":"48f8d315a519c436c6ffbbc3d8c3064db4d18fee","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.2.0.tgz","fileCount":11,"unpackedSize":18511,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG0r0VmethkZKYGsPpJuCmat2LmYBYJjlEFY1smBJbkbAiEAvA17H2HnaiyyEdg/3fLH15+UKuYY5gG2B1cnOeahtcM="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.2.0_1520641093149_0.24209076333692492"},"_hasShrinkwrap":false},"0.3.0":{"name":"@mhio/koa-api-handle","version":"0.3.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/int","test:int":"mocha test/unit","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-async-to-module-method":"^6.24.1","babel-register":"^6.26.0","chai":"^4.1.2","eslint":"^4.16.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"^4.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^11.4.1","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"35858e6f4d3212003ad3a7234a861b6306d4ce25","_id":"@mhio/koa-api-handle@0.3.0","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-F/s0aXzNj5VP9vnQ4NtjkYk8pixRom3pnW6G/7pSmnGx6V5gt8E7aZgfdOT0e+rqZ6PApy4LtQrI+HFlioG+Zg==","shasum":"6911d7eb2ab389ef34fc1cf66fec4e3f9b8bb53b","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.3.0.tgz","fileCount":12,"unpackedSize":29835,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIQCAi26AqtSogkqhunHYd75DtEl9QiX5etErgnFBCm+rpQIfB0IAoL6iU0O9C1NXuKRP+T3Ss2/ZYt6CdaLV4oySwA=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.3.0_1522219100597_0.6031642151431553"},"_hasShrinkwrap":false},"0.4.1":{"name":"@mhio/koa-api-handle","version":"0.4.1","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/int","test:int":"mocha test/unit","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^5.12.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"^4.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^13.1.0","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"633b5057a198dc225daf9e6b200b2334f09663ef","_id":"@mhio/koa-api-handle@0.4.1","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-ZM2nxJeqCzSlhylx1wo4sJVWR6v38oN8FMSUp2W4z93EOS7gyQjLW0cxWFkeIJo3GWctw4Phoq7meXN8gGUFnw==","shasum":"add1145286d0be7667c890b71d42c2bb6370bcf4","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.4.1.tgz","fileCount":12,"unpackedSize":30947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcOs0bCRA9TVsSAnZWagAAf98P/iMoZrC6wFgdJC+XeRzi\n5CHoLItiMMsMJG/JNTKqZQSNxWcrYTxC2TmR2r5jKh3grQ3aPVP+znscQ15c\n5lBh0fpwkDzgeVFDFCDXpgkJ+G8V9h2N1uVr6VjhUYZ5t7J3gSCNnHo3n1lG\ngxhEbfsuyXNQY80FSdT2OAVT8b53GW0IrOmIHlDf2941LLBIN3Uni3sX4Kgf\nnQB0PlBMtqgPSaDrp0tFNB2c86613QmFfDmBLPxxVWmiUcoe7NP7w0THxb25\nVW/svtJT8AAefsX7w4+guqyMDMi56LeMnDCd2aD0lAj0tVFgMM/Irj67zJ3+\nN7XWLH11VHXJQDaNzd1Xabr2usJIXgBbp3k1GmpyEtKQwakAZ3QtMV+DUzHF\nYXTaGIDoPcUNIHkbBKksSSMSL1CdT3ro+gnn9wgzzBnBgtOw9tAZsxaxZLeF\ncRFddszUEqJcWqZ2CaJPtTjGx8MO1gTPnrPo5X5YNl6nmnAvwVM3Sg1h7s20\n1owLxVJqV2nder3U6xVB2dNBDUpJB8x8yloO+oTidI08WjNv57JiGWHkLwym\nMC2/2WKT1HvRaG+LMO5Dh9AoZllj/XRaBfUQzT/ZgJ5eYJBUDsib6yRZx9lR\niCsfI8S7XtYAINaUzZrstZaVG3YKt9CUU27Nj9/gQu5uXZHW7xdm83/Rb8IQ\nL87V\r\n=3Wuy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA4JQvO5h/SG29rLoP/0MlpGIs9yy0QdV6Du6OqDzs1CAiA4zGils8sURvFcebQX/zlR7Qshvhk5POh2ZO4uu0ygpg=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.4.1_1547357466705_0.4582952202719133"},"_hasShrinkwrap":false},"0.5.0-1":{"name":"@mhio/koa-api-handle","version":"0.5.0-1","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/int","test:int":"mocha test/unit","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^5.12.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"^4.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^13.1.0","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nlet handler = {\n  ok: ()=> Promise.resolve('ok'),\n  other: ()=> Promise.resolve('other'),\n  error: ()=> Promise.reject(new Error('nope')),\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\n\nrouter.get('/ok', KoaApiHandle.response(handler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(handler, 'other'))\nrouter.get('/error', KoaApiHandle.response(handler, 'error'))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n","readmeFilename":"README.md","gitHead":"cec2fe411f3946150ae6215865649c032f59e7fa","_id":"@mhio/koa-api-handle@0.5.0-1","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-kL8N3v17jFiOx2SNnK0SAUnPdXk/6i7p+rkTP4rUyQOahTgdlfXnx/bA40aervLGwk6EE6txZzM8/NcB9fAPtA==","shasum":"21e9a24fa54c77571df6d13f83f9d63a9cdddff2","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.5.0-1.tgz","fileCount":12,"unpackedSize":31257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcOtLICRA9TVsSAnZWagAAFngQAJDnH0dlkNZeGhvMgXGU\nqrrum0pdhD+AUrgBmpyDkNw8ft8MGUtfLJRAB9/RNV4CZH3kKzJS5W8U4G9t\nca46YKW1QK46WdgZ6LakKSDx9xgU7EQH7nXCiQO/jB2w2yMI+vGunLudGDhX\nKQAUsDYMzUycs5XjnUxk6PMYabIopEfXf22arC1xvtTdbKULsxdx1FthkRr+\nwm5LwGd63OVRN9FaJm73JFToSVR27BJb5bNoF7X/1wbSIzsQGCrvsTUbLj0U\nji+ZLjK8BasZvbHLragvtrmID5RExIUrpTByXQPgX8fXVudYe0Ft+LN+EihU\n9eG3b79CMkhQDrwtiRtNx0zuqQ7rORyYrp2Ig0jKJko/j6HjOJliWmejtbQ7\nKWLW+uoKDRsTdGL42xEAFXM6sI3UBG6VYlwo3Fn4UYrSAXeE3Q7y9X+vUGq1\n335WTnAsWLSjE+qlhNZK40al3ZPBSiv+PLthY6gSBnUGKv4Irn/JRiclwNoQ\nwzdFo+ueTkoShB85muV5gWNglFrMqU0R+CbsbvNqmB7iGmM0tMirPueY5Pvt\nAsQiTsegAH+1VoLeAcZ8Uwge+jFpnMPvUL+JIswX++QW3jYffZhppaSCr/CS\nbDV2ek316Z0u2m7UchSPB/8ItMwZW5Ash9P7Z5qccdMbEZsOh6pgUj3u+lPD\nJujj\r\n=T6ty\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCH6o7awtfgT2fmgnINJifDFM978eb0AbhYQ8wvPVEuKgIgYSEi0JovotuM3S4m2GyBtd7USKXfOAb7dA07znCQjDQ="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.5.0-1_1547358920097_0.5051651944776301"},"_hasShrinkwrap":false},"0.5.0":{"name":"@mhio/koa-api-handle","version":"0.5.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/int","test:int":"mocha test/unit","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^5.12.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"^4.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^13.1.0","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"488b81ee1ec4ae52e2817eb773584826af3c4d10","_id":"@mhio/koa-api-handle@0.5.0","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-ikQyVJWa4Zy+nSWT+VcYDuMbiwDmzbcLFAEqnelAt13Sgk+sXF7pMXmg240qVUg3SyilGpnIrUro4bNFBD3cKA==","shasum":"c8d93c5fc5f1e7d60cadab646e6449f219a66983","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.5.0.tgz","fileCount":12,"unpackedSize":31521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcOtLlCRA9TVsSAnZWagAAj/4P/1J22knqAtwdR5CWzcNV\ni6gwuyVqy0I3P8o2qozDPkNVJgZ2e8s9smZYZNsDXmp+5haSkQtcozgpp5q8\nmKnSTMJ9FyyRd87KFhFT6c3rd/zyvbjoLQWkLmuy3VX1GX1D4Bmyi22gurL9\nJS07h641g2ZV6S3Jhey8yWcI2tfV+lATFaW1Jq9dq6U66sV3uLDzDlhjlDO7\nD9KJ9tdi4EbSIqqE9NJy0XtlRUqnUrQhuC95YnUGNVls5zOCaLMAXlkt5MGG\nCuq8OZY2i1fFt/RTz54Pd14Tt3hS82xVFkilHfR4cLf9D+iXkvaBRknj94QV\naarbV6IiEX1a1k09/TYBlGhLiY46T8hcO3kpOaswSVm5h+usucX1SHOow1l7\n5Dk4gEjsOenxA4Z90RdLjBNrw2EC1l3wdSsS+lvwW2pi4+EfAcwUZuZ3Jhxr\nSbhPifyPc2XFQV86yqeDCkFsv/xj65DQInKIIanaUXVknDmuyi9hOr4ri2lo\natliKE7acbHtbLyNbv1Od4aAAnK/7BYd8UBfjKYO3nILgLx7XVnBaDk4msAv\n9j/b+gS/t9OjUb81g7MKfCb4ipjuIlsJFI8sN58UNefctefl4VTKX2V6Ybsu\n178X9M3ywp6qW7mvr/Qi5Mslgsk9mNsxP4YxdkmJnqL/q/O48XUFW/ermYCu\n36MK\r\n=QRUP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID1r+KWcWo2i5MRIGiw9R+YAHVgblEnfJD6wjVElBblEAiEAjBPUATz2fURd6SJbvpO9c/XHt2sEriLv6kdeDMvTzBE="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.5.0_1547358948480_0.46539804837889864"},"_hasShrinkwrap":false},"0.6.0-2":{"name":"@mhio/koa-api-handle","version":"0.6.0-2","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^5.12.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^13.1.0","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nlet handler = {\n  ok: ()=> Promise.resolve('ok'),\n  other: ()=> Promise.resolve('other'),\n  error: ()=> Promise.reject(new Error('nope')),\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\n\nrouter.get('/ok', KoaApiHandle.response(handler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(handler, 'other'))\nrouter.get('/error', KoaApiHandle.response(handler, 'error'))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n","readmeFilename":"README.md","gitHead":"8d86202e3d30f0921d4fe16ada5c3487c3cbb2da","_id":"@mhio/koa-api-handle@0.6.0-2","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-IwWgqkKMxpXwxSVIkLfxeHpapewQybpuICfbqRzbGxZ6bve1N825ZhgyyQNsQw0968aM3vSc0UOVohna/ruCPw==","shasum":"bbf20468918f56efcd12ec634fb78edb08420784","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.6.0-2.tgz","fileCount":12,"unpackedSize":37554,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdewEFCRA9TVsSAnZWagAA7lQQAJMOYabmhSdWajCAILI0\nOp2OKF0p5RPmV0ebYUTughIqKDniYLinlXoOucW+CG5x1VL+2iQlzYdyblpf\npGmw7S6FseDAEDYAGlgJP6KaCVFuW4HI/O0j4p4qmrimeU68HfBMjlfdTbdN\nFSlBT8X7uPw+seamKlHY3ZtiVEfc4Tak/zV/7uJ33s6Q6CxK3IscwpW7w8aU\n2JSgJFolJ6xjFy7flEektdoh5NcKE5PUBYx6S5smjD4egb8QHFJF6nJYJroq\nbbUlKX8nghecAT9J+/4gDnzwAuuvQca2XU9/hlzZBO25P+ztp5Zj5gql7kiJ\nIXkCZejTzW8eyxJvf3SSBytwQuF6EtwXs2pdmBIbLdIMNkuVKgB5ZyDN4IIe\n/kvnhsK08DHd/JNvsCUZFYpr5KWOww74eCr0VDqPQpCOIjAw6qRUv5EKHQyC\nxAdCRyDQw9ELaCRT0+QOOzQfVKPP2eSFXcdMzE6iVt7xbhsGFp1dqbv643SZ\n3IyU9Fj5MMbOE1D53/5tgueRqT0LVlYNFcexDjpbwvAZ+TMNDi2VVdr8bRnX\n/OrPumE/pe/rpWst3EelWT8fotqzHTkdgYHuRg3d2qMhINuv1j1CBxmHSEwS\npNXIx0k8kzRvxXIR02e1aTcqNuwU/p2TamK/XbKCKrNSlXTIuV2XCCjNi5Ma\nzgWF\r\n=WNFY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDCLR1co8uxorWm80jzxzwnMBF8w5NSaVJYJ6tSI6pBKAiEA4SmXu57IpDvY8hHzPDhxX5xeZd2fK/ujEdDV43I8xpw="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.6.0-2_1568342276848_0.04516250548525802"},"_hasShrinkwrap":false},"0.6.0":{"name":"@mhio/koa-api-handle","version":"0.6.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^5.12.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^13.1.0","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"5c72e0d5da6594cf52f8538bd5ed7c07047c9ff5","_id":"@mhio/koa-api-handle@0.6.0","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Le1EZ1u6TQrjyw49zmUWObd21qnkPKTcvALUkWyRy6gxYFgfaF8eSAQdopKzer3wPh9YRTl4B9GThSJHou+GGA==","shasum":"238865718de46b5a30b4d2f1b028c0339a129e7e","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.6.0.tgz","fileCount":12,"unpackedSize":37455,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgbaSCRA9TVsSAnZWagAAzbUP/iR1tvPozYO6mKs2oH44\nuydDLhgBEgv4/aDgzB2TR5/j5GA3wUUAn3xMXGw5G8l97obQ5jyR3Rx90qBI\nmD3eXt+sIijJXDOxq7a2z5REhLaJVcexkq+6OfMUDtrx09k3gCvSO3jiLv93\nb2I2rgiIexEQ+Jg1ECc6i/8xVKMpmGAcD0iTTA3sAAQMcJo8KgtoHs4GKyKD\niO7Pu/N5AdjODUNWt3D/V+Z8wkUkvmrZkoqTf3rCSa+XWaZndSR7LVJ+WTlu\nslkLOYq7wvnsSiueCcWUqDNK5aXrPQ12TlMcJb1NonCx7RURV9GLxAngpKl7\nALslypEJW1Vv0/2BusJFq3URIsrhlyG5WIB5QiguJb9c7wON+Ekgi3SNEb3G\n7C2qeLPmElhbbd+jQAKO8B2io3gKTn+Q1UDhogzamfpSHrfB3gp3AY9j4ot5\n2kF7fghd8AGOKEAseboaQ6PDsiy/aG2cj1Us4caT5biKUPZHcbC5SK3BwwiA\nadUaT4BGwA52JwSHZ4YFcOYKrKbsOt5SZf9PXR4XFcm1vAS9iLwg6i+WZddP\nV9UFOXvZwD2xvGQuHxr3W/gmIv/E5CzGoAyj7Dt07vk2NHd4WS2x2Ih58Cec\nJtzL317PBm9wKMSaTFxCs/3vhLfDYwcQdo6KNr/lzjvhYBMTdxDQlaDi0Sft\nhdE+\r\n=cmEF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDilAhjPR43ibZOvBSl8v1lPjMokZz0RdeehQUfCr/PyAIgT0YWXvbbRs8ZlStKi10agcRxFp/k6IP9kZ6wnSs7nps="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.6.0_1568781970409_0.07508707614181298"},"_hasShrinkwrap":false},"0.6.1":{"name":"@mhio/koa-api-handle","version":"0.6.1","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^5.12.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","mocha":"^5.0.4","nodemon":"^1.14.11","nyc":"^13.1.0","source-map-support":"^0.5.2","supertest":"^3.0.0"},"dependencies":{"@mhio/api-response":"^0.2.7","@mhio/exception":"^0.1.0","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"db0ec3abab536f007ae6f4d5860e1062bc658078","_id":"@mhio/koa-api-handle@0.6.1","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-O2/W0TXnrL9hGkXOsHWP+JyODIACBmfEMTuMbqrPxkJtvDt27IMIG+7qG+q0k6ScPo0FYQFbU1Ancn12lnu09Q==","shasum":"e70f89a294dfa9cd260a228e9172404f10e72178","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.6.1.tgz","fileCount":12,"unpackedSize":42322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgy7GCRA9TVsSAnZWagAAUQMQAIasjxC5sXLlJA+A405p\nbw71mtTeYm759OxtYASHSj5LbpRx+h1fIWSDHvTwmndkAFChrlG8l2v7fRtL\nHUS39UMYNPpUgSrcrM6kxo40ZBzDbGkGXV2JWo9DJPRL01UW45puPx4pVUyK\nki3wGXZnegEkUkIl2oWNcfGGPl4O5stw/RjSjI1rudluFuF1z/c4AZFs0car\nEfNsw4exR08JXG45ik0UgiHkF8CzCERstGW+hRRgoOOp73+QbspgB2qw/0H1\nEsnYRdL+hxvTnMCq1PgqbniZ9e7kV2FHx+pyJyhxxZoOnp/6BkARPDbg6YyK\nWP+/25rpZWhOloZ1UHF9qXM91Pf0d+VF9HlRG0EpvUhd3eBSGIHN2L/vgOTr\nHCUccU1u4MdyWsuynX+lo9b2PSQedfVpA1k1LqSf3rvRfJYryqMEOc6Py/zC\nKDI5h4PNP9fN+B0iX1gVyGWslYwwV7VEvLGxvC4XXV778TB4DCIxm0B5WCFo\nlTRsdZVbOZsrV+qamzWI/8CUuc6v2GwCmC9S55OpCW0CCxv67ywViXnoDXQ7\n11OaTv1QsVvPJWXuX1dswcSZXJZkoXEJWfEjlX/7xtuFQLN+Ew7K/9STwFzf\nY3h8Em6vcd51TSeVBWeTTNS7WwyIX/DGRmmZujffc9OsZTzpEV8oAOcaOZYA\nvw8v\r\n=J+EJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKYfd1sel4SlIFjJGXdYcAefgHhAh9k/YRsu6n0Lq0mQIgcz6VhpMiQdCgIyDgXP4iBFucUYwf1IguVrftfAMhp7Q="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.6.1_1568878278129_0.8517230421067139"},"_hasShrinkwrap":false},"0.7.0":{"name":"@mhio/koa-api-handle","version":"0.7.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"Matt Hoyle"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"e45f757ffb294cfe186bac322e542482547617b7","_id":"@mhio/koa-api-handle@0.7.0","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-jMQMEbZ7o5la5hbXyV46109E1t5I5Lq33t1TrFUr3oMK7357koOY2621BJHfOvpZjl1lyf9AUfBCdc0dcp/w8A==","shasum":"a8fbeffdcab0650397afde76e920411208a3b684","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.7.0.tgz","fileCount":12,"unpackedSize":42824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdv/HhCRA9TVsSAnZWagAAnYIP/iNnGaKYVV7Qg0AX9Hoi\ntJcFzro099iyuxCiHHphvKKeKJUniyHVGpiHkD/9rgof97KcJyC+In6E43HE\nbwQNi2cJKJxyRclwTxc0L10kHTlXxaCBllr4v+MjTxrO30yk0p3gBgCMbomS\nVv3Lk15w4umQoswqrwN6L7ctGrtUyLneGy+1yhUzBuJhbdMG0ROPaZCcLwtB\nC5yTkOEnJe/Eqd0DD6uabdNEtzoqwIkYPe9Azh+mCxJ1lNg8uWFP/MtdwQ/9\nlzKI25Lg+XK4+y3oXaeArNzPtZnnVvOmwFHBC/p8utkt5lJJrc4/vx3AJUnO\nyJj5215qTXD7tQ3g6CNZyyp8umskuG1NWSum99CqKIJjfBSvcqlEYPKjkX/D\neGXnhZ4NUI8YhTdDfQ061FGHNEJrnVM/5PHQEgaWmXo9vp+kgF/tXXVNquWl\nhYAKSEyAjmp4rAbWWTleFKlpVOmxUCnkganQtcYNQ4YGs8n6oWRXm4lp7LE/\nPk02kJo5kuF7QUzNkejscMZ3FN1rHXIz/iBOnDJGMLREC+zJyxycKCPfHp76\nwq4lgUppwyxrsg0hoxnk7EcC2U05qZvBfkCCwVZsODOUcdeg3h5abhdrBk+7\nC+KWkp/eStxO6CeRe8u1s4wOWsg+/Be++NbnRiQDb4A/BHMpvsGTSFgNBWh3\nhvRZ\r\n=lZk7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFYu8RH+x4omo2vLAClnTQBGRz155ca6mfkoSJ6GoWihAiEAmuXhLaA3xto2QcIntdQYthaoNQ3r13sCzDnRizmbqQ8="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.7.0_1572860385079_0.6221954691975438"},"_hasShrinkwrap":false},"0.8.0":{"name":"@mhio/koa-api-handle","version":"0.8.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"ae860c1bcd6d8279f0c63dee550c8bbeb394873a","_id":"@mhio/koa-api-handle@0.8.0","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-kmkub+JMc9XLr0JGc4/mhIyAwI4xMBgiIcT/DQaT5tnAgHg5nZ7gjzuvv9UqPxMTyWMyHAnIH3WA2Un0yGS9aQ==","shasum":"5d30485dfa8eaf51312b6a14c23599eb444cb8d7","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.8.0.tgz","fileCount":12,"unpackedSize":44561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+G1ZCRA9TVsSAnZWagAA7xcP/RsyRr6tAeio9kNFaQPY\nLfF++4tJ0z5NfrwDK5gbYjkAiayevWCeehf1l7V+QeZvXa5UBbU2DJpm9wX8\nSxWrwjk2Hl7APCMnmxqyGAJM5UkmXaL3o3DqUVqTfHKfOYlORvULj+yzPopv\n9EUSJI0eOO4zuOW2egLp0LMAYCMyfymqnrvmSaabmDJfjET+UYXIm/TXaQXB\nTbH0bHw7VBm++w+ovi2AI8skmuYRDfVT26/nMsHZOAILWLqMCN1+iBgAH9qt\n8RUlsPN68mfi9T0WZnYTvH7hn4pngl8kJB7tM5+dyI5LOaG/E0DX0izWszpV\nUvicwqQrvDNmH4OIpXrOjdl7uTI6VJ/J8nqJMwOOxBiya+Mf1P7IfQC1vLoV\npZog/9Kelk3bzGrkEk9ls8JBNnaxet5V4CrzBBamOfzbq6AXPrFJvtVEqQYB\nVjGfW5alAbpAtbmMI04P9qyl3wDQVaS4XiODhKefO0//LLH/7/OLuKuLqDIM\naBAEaALFbDPx408IEjbOOifosA4LY23mTr3ofqmJAOzDsUQa14yWQFG64tZe\n7HYROfrYd+ZR2uhdX+gMP/wpxiQ3ouIcrWR/9h9oxz9Kwb21gTdSypmWANka\n8jC6K6wVKPDPO6JUSY12O54tyjN81FVKkraQ2WMry7BLf6QJVNVSNPvtJJr8\nvqgh\r\n=UJVh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHTsacL6UK572bAnK5Op8cIux1bxh0C8udcvmkO8B9WrAiB/7lQwlzUHIsKaZTgyqYUBFmgK/lrgM1QmdilxlQaJ1g=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.8.0_1576562009445_0.42665145466034415"},"_hasShrinkwrap":false},"0.9.0-1":{"name":"@mhio/koa-api-handle","version":"0.9.0-1","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n","readmeFilename":"README.md","gitHead":"25ececbb3e3ca6782a198078c7336ff6459f807f","_id":"@mhio/koa-api-handle@0.9.0-1","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-Q90YkSo2J/eCMcLOKQlohg1wdZltKGaeUEl7Ai/gwovrjnPPcnxjARos7EmKg3r3k6RyfOBxWbTNJZK7xwY7Ew==","shasum":"43a9c4b9ab1aaa9fd86ff6e6604503da80d31bc3","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.9.0-1.tgz","fileCount":13,"unpackedSize":52924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeG/q/CRA9TVsSAnZWagAAtuIP/3sRo9J96uND4JYKprPS\ngQc3cvnjDah1warQOESHa8iphsvS5jzCjjan9qd6o5OhUZuP8r4zczTazoPM\nzvj1HrkBHSgZw0DGBZ8uCVeJPPCtvG2fLHlBpO+Ni/XLB4ZHlDuAi9hON5s8\nEjO7X9xs5FkafXQUlUY1CAjvkvH6ZOgUJJA+KAW9Y3RXyn+x6GZ6GFsUsR8h\n+A3H5SzUTMDfS2WW/mUXMe8iGqNKUXHh7vtvHVXCAd++a8f76liKZYGteCPN\n2Tdg2zy+IIK3LW41Si3EsYGq7/Kp4Yrp7Hx5p+ld9Ia3mf/ymkQpYHvluAcD\nnpjMHkIU15YIjYz2HONYcgcMF+xYzidmmi6Yzk64uJF1D3kOM+GezsXskFw0\nIDIid+9nzVjVLykTMBZtJe5/AJDSx65ahzB6R6Cx3ygKHNomet6ekJlPwONY\nejHBqTOt8GmjX3bDv32rRKv0IgUF+rYFOVb2Bcb5avCxaLEI6IbzhChZytSF\nupKgFgVg1lFFhCOqu8iuIYrDN83ekn74BsUw3alP3Tda+j8Muwb9q+eL+mis\nMZghKUnWYYUU+KaTm0qeTtPItFggey56ktUqX6121h3DEH9k0I/fLkWHj0Uo\nwhCeEjMRNuCso3i80fd3z6CdCg4ky8O+fEsYzAz5PDkmg0FeDrwMxsVyabQa\nHb4U\r\n=AkV4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOXOBmSzkYvnwQZDfX9mp8mtM8dD7CFK6Skuf2ILXZVQIgQAn9+IzBBOF1n5dH/kKCwei2yTNG5cnSbhRCTpnnL7c="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.9.0-1_1578891966956_0.9727698600958226"},"_hasShrinkwrap":false},"0.9.0":{"name":"@mhio/koa-api-handle","version":"0.9.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.foreach":"^4.5.0"},"gitHead":"78ec3fc557edbceee5b92aa89b583ef69ca5d8a5","_id":"@mhio/koa-api-handle@0.9.0","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-A+ExgWCDKAxRiI6gnwA/jhT0w/Fv8G6LXuI62rk/S2aYCCczGX3j7qZEH39ifg6cXZ8RdQ9FNipkHXzX3yhGmg==","shasum":"160882cc7d628208283dadf7e7b949c5087740ed","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.9.0.tgz","fileCount":13,"unpackedSize":53753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeG/1uCRA9TVsSAnZWagAARj8P/33uwZzal0Flx8rg5Tjt\nlYhM0dO7g+QijeXeoavJvRevU6XNXlbLC+FIbjg0uYQNLN9w/w32+7GyoZIq\nSdrjdg1lv/H6zSZBgLk1YKIKpxQihVkvP3XvrjcLBxnjYDLAJaflYGfLu8oA\nW759juHD+lZmE9m9ThvdunYCVeshLx0j43BBwPnt5ImqhQnz2S3m56I6eRwI\nmoVkoYmCq5gwon/LLzIgbF4cO7yXF5GS52ugCZpR0UCwWGgENKbiPsgAagrn\ndeeUSfrc/0rHcqlMpMSnPkNoWQo7KmkZOdP3htI18lCPGqarX9XFwQTNrtj+\nYDEAoFrl3hoV1FseO34uSw45zZnY6GJZ9y0m8YemJnvte/5gHie+8bcl4CLv\npuwxbw9USl9UXglC55nsSEB+9k9bz54O95RMetmuzxIPbJBxh+8tGbr02UqU\nFas2R/quIOhvcNkCCExe7wh2J8rAdFcR01qmR1tR5fz/Q7KvSD0p0eaMCEWd\nXwnAgbybGkLnY4FLqgwqESikbDZ1OCuypO0oCIOP2/yqhQ1S5cJqFrHtdArt\nux9fqmxC8Ru8Vo1Njo5fDZAOPhld3PMt2MsVIdDc8RW6HK8Peyq+MWwjPaLK\nRnY2bhvCN0QpSkyCycQH2Z41idJEbUY3QcABOPWDDpM07btBIiIGCN8LLopT\nCVjk\r\n=UC/O\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCV46IfqQFnOY2mr/SOIxXV+EVPiAjaBTdNt99b928ehgIgSCs8MBog9W/RJC5VgaH1Px27MrZeXNNy5yTAd99xt6c="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.9.0_1578892654464_0.9537257800654395"},"_hasShrinkwrap":false},"0.10.0-1":{"name":"@mhio/koa-api-handle","version":"0.10.0-1","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n","readmeFilename":"README.md","gitHead":"6b262e9b518e224061bd9878494e79f1e5396ba6","_id":"@mhio/koa-api-handle@0.10.0-1","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-j1AVuMUI9OjLCzHbadbnLHVsoSwi24xDfGhQ+iytBfiboN4B6EpH+J7OzU7+ke7mrf6M0uazubIiV4KqZycdbA==","shasum":"88b3e488824d3c9910ba71f5c716d837685657fd","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.0-1.tgz","fileCount":13,"unpackedSize":58225,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJek5ZjCRA9TVsSAnZWagAAXzgP/0IM8nszcVa+WyUCGHtc\nXUHzWYTPnwaxMV2pRO4XcK2Ii/7EjYbVVCacIjUq8hpYw3t+X993bRv7KIeG\nQv2EaammMUkkFUcLjZm+bHArcSJWphJIrQKMZ2CXjGtTNbrTUA8EAEqp1tKb\n1giLzHdjMFF27w9VsIXJACFC8aGzbN0N9Jml8nyOOXHb/0V+TwVz7A7ftlh9\nFkPRP0u8G/+iSMsxkXDbs2HbiJHA7G1ioOEBWOjHIIN438to3oFSs7JOoY28\nkNtZ7Gj5N/rDtSbp29hVdHbR2fXU0F4nX4EzQ6/y4sWn/CjPGeA9OBKvw00V\n3yVDtv6HgGm3OyBSulT1zuT5olIjC9oNygMyT/5XabeIzf8PHvHTfRZpNR5j\nteMfuqSXqx/fJ6pagnlkt/fiTSWIhT3QPVlolbQ6Fa2tXgx53P2mdTl8g1tK\nSieqpoPhVT6W/9R8YpNZRVKfywtjJzxbjxdyGCyRjp0gDTCmV2qDSvkyprOz\niLOmvbYv/r3zGgZkDbavULVhdcC+G5cjc71K4TBXTFhzFyBPHwxvg+omM91a\njs+PEWWj4G15vgVmfbh/Ecnb5vzDsWgaYrgtKl60QqIqAtNBwqSfpXwfSM6X\n9lHJ8ldtcvV1vkhu0Vcprr5R0ag578Xtqk2s35+yy0xuqny8wz94/otjbtqp\nCy7F\r\n=DRc8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyw8WH9WJ0QvOjuv1yeVVJTZClkoJpv/pmM5Yd4bJf9AIhAKIfl3lkLQjIgSvpPVLjZn66x1h0t2fM7mQaruvs/SrC"}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.0-1_1586730594829_0.9237671558770615"},"_hasShrinkwrap":false},"0.10.0-2":{"name":"@mhio/koa-api-handle","version":"0.10.0-2","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n","readmeFilename":"README.md","gitHead":"438f157d97853252b5cd659ea036e08189cda163","_id":"@mhio/koa-api-handle@0.10.0-2","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-EKrdg1tueJ62ZLOX4V1Z5uFy3nMU5mJ6bcYFE0DD5kKPw4IrIOQ3YM2qsyZ9Aj//KqlE8EzPvxKTTyrBow84RQ==","shasum":"5a4868072656d04622723225fdb3ab120fbc8949","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.0-2.tgz","fileCount":13,"unpackedSize":64304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJek5emCRA9TVsSAnZWagAAbx8P/0LXcalvWjGsDakj2FkW\nH6XIVUEuNGB1+WBuSuAnxw78S3RsKSdrmuyo01YWQJOI2Roy1MVkQv4G4i/o\nv3pLVJUWmU0a+See6zEa4p3tGycF4JzKqrrFUOYNeaVk2kQvKto65IcEJlaO\n7v5mJreNmJE2FhK3bX4rF8HXzSo5NgUQpjr/NAAQyYaOxsWgLj0pozEv8olB\ncPD9HzQgNMgldjXn0fapGaeqhG2y3a+E6zFZ8rVmjURyMSA8nFG/I8883oHo\ndrNvvFde8iZpkT5IZilNMhn/au/bIYdRiuZr59Fe5PalS5iEN1VsvKlRL85M\ne/VvPpjywy+Vc5W60+k/Uh4y70XSZETGAFKZRAG58jIhciWaVIsxwS8EqNrP\nL5P0gH3gGaivfKQs8IOGIWzX0vlidcQ8gtGvpab3irzfJIfptLKb+4Lm2R1B\nBprM6FPdtNcQohnO7PD4FYOQ9/BrUeqYyBhPwII1nOd81qwsEixQIwEx190p\nEigsTUKwD8mEauYTHFc0OER+QV7p0c3D/1NWk6Axa9wQGS9YDeSfo2c99lxt\nJqQP49f6hDiVgic358gYgV5CmNjZ9L3mDoXJ2JbZmoKGv/DBLJejvx8rSjPW\ns1xlSldWurycfhtlKQpgQXKLHvGXh/fyz4YnVH1e1c/YEAeUiwu+GgN3A+nH\nDIYE\r\n=k6ai\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE6eAuxMZ4TCTnIFq/XV38LDRzoAP393eNQQjuwtNQ3VAiBa7/HNKgjQ7EosvgJhC6ot1AQ0ghbSsbsnJwlvzba5zw=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.0-2_1586730918196_0.43920178884819117"},"_hasShrinkwrap":false},"0.10.0-3":{"name":"@mhio/koa-api-handle","version":"0.10.0-3","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n","readmeFilename":"README.md","gitHead":"c3d5dd9cb5de09fb01fe10db5e2fa60e3145691f","_id":"@mhio/koa-api-handle@0.10.0-3","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-yKA236x6T8I2zWACoaznCcaZikog6Gir7/muthNu61CiT6D+MZDbJSOyBaffb5ce7keXVxY7TCESgUJuI24UXQ==","shasum":"65dc0a96470a2534f07e36542c91f4de515e2799","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.0-3.tgz","fileCount":13,"unpackedSize":69411,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJek605CRA9TVsSAnZWagAAoH0P/314TRguQKYznDxVm9L/\npRdVQ/scqz1rprq8Hwhz35YgkqeNa1aFDibOH6zEw45qdJFIcmQM9Xupb88d\np/G41Q3WdbhPcPGKrL0AX+WdKxvvKaxYTXfYAtTbNxseOv3ydkDDejLQ0tA2\nzWyyESBemUPhFC+QGnSQNYMKLJZuMBDFqFkfTEgOWpRU2ODVgnZySMcgulu2\nLjubZ438g2jJxeTRt9PXLhciT9nbwKVdBWVdohlv5VZzIaCYUBfilZMMkUln\nEv8FqkMG7fP4xqSV5I28GsikqoSTMc0NoprMgbKQIBaOjKIB641KAQPidXnp\n5hnlNFuuX+ZICps6ZbW8WtJhA2nBh8FHmsADHHAnChTZPpeBGzWiVtNcv8w7\nomUDJHaRz5i/2TDU0aEBaApwUlJ2KlDTsAzLBjAlIg8QITOCIVU7rJrSlyNG\njMUNPcGKZoDaWgC61sBab5ilEq1Oc01Qy7oGf8xpBJwC6UEs7KqOkML/f3c4\nqZ2WWotB/MAqFYDPr/YsE7d42Um6BzzVFxZQW0q67VglnWvwJk7oLNqLgxDV\naGld6OnN9e+NVt1LPNXC/KO/NFguqkrkL5JhHv3xBuA3Pt9s1RU9AQVHXsyN\ndapPDsJpPnkhmMFPiWNY6jLP5V7NX2Rn09rjRZ8gvmoOaxackzM5IidQUmdD\nISIP\r\n=V0VT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH/B7j7hU/j1Rdjeh7FR9jmDkK48CXVvn9/F2TSw+f0CAiA0AqjudTRSrb+IYT4TJaGunJdgdxW+NQJ1rHEe5osbiQ=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.0-3_1586736441169_0.7077488539486252"},"_hasShrinkwrap":false},"0.10.0":{"name":"@mhio/koa-api-handle","version":"0.10.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"5.0.1","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"^1.14.11","nyc":"^14.1.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"bc11f1c90693ac119ac535c6e359f75d1f2f59db","_id":"@mhio/koa-api-handle@0.10.0","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-LOghSnp4EfZhUS4eVCDQsHsmZWhjRj8HpsWoQVM33paW0VN7jghcP70WNWq55ilSLDG56aV5iZhwcBnyM/gATA==","shasum":"263df00b48824909ec04db177fa2b5948d45022c","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.0.tgz","fileCount":13,"unpackedSize":69032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJek66UCRA9TVsSAnZWagAALdQP/1+wRl93KDl0WAa3fyFs\nYyBGgXzmKoMo1fLOYZF5QeUB5THrF4V04PGTJcDOCLZGHYx0TAizrA7IJCWb\n/+jb9zrO58oJgmMrKehYpZNZVf6NGaU5MkRPKyslzX6FwqKvgbo0tPaJIasj\noJhYt7OvC2p8DCDnDl4SjpaMUJGL8YpaBKUzdGK1M9RRcL23Wd9OHKAOoJhC\nx8ECrD20b3Jf2LA4Z8RIL4QraEozjCi3SlPhqC9boAybcy6njLZg72QX+Brd\nvAyA1DYaAMh8xdREfOpdu3ItH5eWU8tCdwR3GtAuWDoJkkYSFB2mEgMssQWR\nFBOTWDG47P+4iLTbJagxWmOmNuvop7Qm0jngBstEdy3wPPZAY5oWP3BWMgx6\nz3l9/28SaCo7ylI+ulb3LmYG3qlGnMfLV/yM+WmMQ2G/1M1JNNVeE7D6sP+W\nzOiw1BD4vsLfoMdFe12mYchAfbTvx+kvP8R5wMSkPfS6VryWynZ+az6cxKvY\nG7KqqkdLgYVRWY3n7Uw1MDeGfwJtnxe5McMsubOn/9m+Xu7B/eqHB867qoVm\nQsmnsEIKHGsUnnxPe2wSLe3rHC6hJ9AibjidlMgbw4lGtmi1LzA5CL4oZOFs\nDJ/qApLYnZ1swErYyjJSE/nEmGC+AwngHFg02Xw4qnanrWPOqVn6dBqXINkX\nE6TZ\r\n=6B4J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZrJ/y3BG4XdqvKFZak0BijykPvEHVi6UDSZWirJH8GQIhAIzJ0ViFEwoEqidJnA/4wHsdLJLQO2FSUT/yHtmQYg49"}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.0_1586736788121_0.3437450861933351"},"_hasShrinkwrap":false},"0.10.1":{"name":"@mhio/koa-api-handle","version":"0.10.1","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"0818cb45b1c9c62976ad1ac2c2066a1769857c62","_id":"@mhio/koa-api-handle@0.10.1","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-0SkGGkDUlTDo692UAX0FwA1Acmj1UiS4vGxLU/G0aRFy3aKFXAfuTLAnOz51Cnr9zmP19IK7u6HCWaGmreFpIg==","shasum":"bfda021575604a51c9017fc2470bbf6fd7de44e5","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.1.tgz","fileCount":13,"unpackedSize":68741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelMoGCRA9TVsSAnZWagAAFy4QAJ8X14h+0sU1h5/vkNUB\nyn1Pcxoa/8HWsXgVElO6YcSZO6CMWjNKWXgpJ8wdYuf4snPYRQAEoDnFcGT/\n/QfzFWWOHhymMgDsqpLib/2ZmZW8FV+fkaD4GXtXNYBV+7zGEsIu1BT3Hh6A\nm4waGtzFZoqpRXVgG9QwUZdUND8iFfdIHfr+8nWAZ1kuoDIYDnDhj3we51Fq\nuMaNTu9VR7BgptIuWKpfSRk3tJm9BxZ5rxzZii/oHJYmPULwBGKNWv4VIMQP\nSA1rKWCPOBzLLN6S/8Dh+h0/3vffxxDELF0kHZJXGZ7m6ez7L/rUDzAgl+Df\nhw/bB+cZRa6Qg9IQFyDfWqy8Pkgu2zIqNCSvUsTisZmTvh8LmA2jyKF/NXTk\nwi60hoXntE8WeyNKkUyW0gmfkVJgn5eeZjojGBJetQ1g38JR7fAW5gGib/Op\nYt2ZrR8Gu4crhsZ4J0kSfrRQMYRjq5j/R6qgDavbavlseYP9XnfDBK48d4di\nCSMhfKuH3ne6fuj2Swd/o9EIGi/zY/SuugnqHh6Kf3e328gZTpg4LEKyv2oZ\nd4n2jp3zoLhZln3+3bn1cr6Wtl2oGwWc66YvP76kwbBQrXr1DrQiBATcVy+N\nqqw5PHUNvDITsrmt0uSIEbFZGCOk/BxWVm0JCNK+1S+5rhnjx6cla9pVJyHM\nN4LK\r\n=gIpN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID9zvWbgkaprC7QNqcCvv9AXvsX/7jxXFKVrclDyNP75AiB4NGM4t4hQcNdYCvlHrGSL0BjI5EkBp/ip7Nb9pKltqg=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.1_1586809349700_0.5672901277333018"},"_hasShrinkwrap":false},"0.10.2":{"name":"@mhio/koa-api-handle","version":"0.10.2","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"0c24dbe1a9326cee0cbe67c7e403f9e030cde8cd","_id":"@mhio/koa-api-handle@0.10.2","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-YfBmvRQ7NIMpMNNNzAB3gxjCqHnHRZrJq4RQ2X8VDgUum9OUiwrzXfs4v9+gW6OPX4tjnzJgMPMHWQ2Nwb0rKA==","shasum":"c34aea9a4fcc9d4675d57c7f7fab268cd570f0cf","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.2.tgz","fileCount":13,"unpackedSize":69057,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelMraCRA9TVsSAnZWagAA42kP/jJzbD3NnX5sw10DQGpj\nD+n1ty0cGEI1JTm5vtgq8F5CVm29q6IvTrbIhsjKSh7y10rmom4Lui9QZDWv\nqJ26OX1yTPyvALneXNBq5zBgu85Bflhr+b0mnrXMx0aroCNleeyoXahkvgEP\nBnIGLHGaOLhpvI7a4TndYyznIn6LdYLkbDUbudbfBYMHzmIQpTEqZWfsG8VJ\nKQf7JxdzwIH62dzfIKVJBmzHf1rUaZT6caKAFo1BXl5D/msa6oR6tjYM4icz\nCJ/CNZmXXx07osi4hlvIpOHvzRS5MrL7hhNs3ZP8fSXYsamGJ8AmXi10wayz\nA/VF23WwTPcnLRzvVFr55UvxVpRrLzijYNXG0rqCqJeeVBu0s3vJooQf+UFD\n+kOzsPtAildW08GWVM2qTwBr0m3St4ALgvXOQ3PoF6duW/O0AH4Smfa1Ijrd\nc4vVlwzsKmIJTET43xh4ihgf2Hv+43OcyNtDSFalFF2RE6MFVCmZkPgN1vcQ\nXmVup/ahcDysBmoSHatfbrAGtQBWBKBn7ikG2om1p9c12Lt2Q7WbklwrQomr\nuGYjuTF62bSC1nC1QlfEpL57ur7BS4ZF8au0ZihbPVuJSpDivibq3KA8wESc\nkkMw5Yex3PBsycjxPa22LG/fTVWLKaNcc1XP2lzRdjEZdP2Y7HVaUSPVdJv/\nsi0q\r\n=pYma\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCBdwzjBVkK0RIc5SCKu86IvsbNVCAN3Cxt1+3dLsHqgIgCtq1FJqaYrh670gkP6HomIwCyz0zKPBLOLlDh8DZDcU="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.2_1586809562185_0.5207331564827051"},"_hasShrinkwrap":false},"0.10.3":{"name":"@mhio/koa-api-handle","version":"0.10.3","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"2986b4aa8afc4f93e46bbb43dfbc2bc0775b4693","_id":"@mhio/koa-api-handle@0.10.3","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-0xQ978IYqnpfsFmQsoePb7bAlG99mSdYdZqa9jGD5DzL+iCRaGiL5DPX8kHgWRVfbjg3ZnCC5gk/QT6di3xzMA==","shasum":"2b9c5926fa4ffc5754acbaf6a0b4fd593cf73411","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.3.tgz","fileCount":13,"unpackedSize":69217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelPX/CRA9TVsSAnZWagAA0JsP/ivH/+U8k4MEj7AhVGup\nr8m38hpKxK50C5ySO238K38TIXwKiU/CA+FlO3M4t4fGzl5FjtcpBKyqnqO5\nwg2VjY81g/+5VMMZGTRZiusL432WWue6suCRTxwI4Dool2SpDWoEG7nh2+iq\nyo+GCWhUWOpeCjygLcf3H9EFmnPZE+HD1F9UMQxqwTGz8+iRurNuIL3rDpFp\n8okGEwcR7WQH245echTqO1DgsvnuQfx72mrFSI5LHmlQ4PQnEvhpohqkAKpL\nleH5x++xXRkMfNtSMkO7Sf199Y+k1Vw590LbJWhM1r6tqc6+Z28Kn32PDOg/\nc02dgT71fFtCAuopxZYUzrnZIkSSwkzgXt/0kJqJvsjaR01vB93xdv0WWHYL\nvWCFz4p7H4k00GA2t+5sZG7CSlXz0dIX+U43wO97RKvU4yjh9RO/yjBjh82T\nmYWGYN5GtVEQmg6VzrYZyABUsk7efX+jy+aMQprtwyja862mkUWb6Qr5Sh+v\ngcgO0ab49eYqyAIvbCpSpOqgM3rIrdDgQs87zeE0iyJJYQkfmnsP54z5+4ja\nzObqZoyJhr6uhWBM8/a39SAwXd682h6DBPghqqh9aRqVayuGRcG6gablHybf\n+IfqV79vfM+/i3VaGpumBqqgZJE/NXs60oQ+IQ/Yp3+MtUsck0pIkAGHxaVZ\nF2vU\r\n=Mcrz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHyVK6HZ+adjz5aOIcbdd5EzNRmx1v9Uq9//9BWfyX5HAiBZyeFuemkPZtwmk47Ml1tcTFuM0UmMCq6hzh2u0brtUA=="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.3_1586820607396_0.6067607921727309"},"_hasShrinkwrap":false},"0.10.4":{"name":"@mhio/koa-api-handle","version":"0.10.4","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"18ab73ee616066cd02f8b1c31766bd338b5d7448","_id":"@mhio/koa-api-handle@0.10.4","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-jq16vR+hsSAH40RCKeAeUwhfS4eIapQ+J3+awB/IAp8JEyPC8vSJL0EKCkQT33oVdwRPekWwstiRw6cQa+I2/w==","shasum":"2fede10bd4191cfa1b83e904b51953bb6d581990","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.4.tgz","fileCount":13,"unpackedSize":69251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelVyICRA9TVsSAnZWagAA/nUP/0i28UlsuRAzDBPiae6M\naBxAlUtJgPBcA8OcJhEq/VwnsecupWPN48T2i7Nwuytzq2MBBwqpSz9hlSQ8\npXEcetOYGs6fEqAY7chrKJ2eN6w8Qkbjrl7tD87yfRD/wQNJWfJbHScDkrTG\nECaWuAOqHiKVNrlvJ7uv1hu5UHqqnvy06W6YAc28K8fHo/sQ8bnPA0sUDVxf\nAosZa3ifB8XiME3vbMNFqtOd2evG67HyRq4DvRCgB3a/T6ZktlZhVOHmct2y\nfLgaX9vXhA6sKeHpvOJPEgrkDnDzhWwkD3KQqT8mMZ02xwW2VGYIHE75MtEW\nARBpy975TlmqmL5VWhOVk2es0CaRlK8Rp+kJuC4MaXIByuyEruXodNcsh69E\nbky6DteiLbD1XAa+74GFV4MIWBDjfcR0CmZlfMuLDIzl/qZ3enNs0IhY8qi3\nWHEZY5/r/g5dawxgaG+A4vpa86j6R1f9zeclbQmahk+bnqOgznJPSw1oUoOJ\nQef2fkugU/2MhIomZB0fXbs2uoKqBtL9DXhASr/RrB0xML6alaNFwZdNjDFo\nrf9yO3bUafFimrg/N5wW3x9/NH9TuJVFzIji6nA2XYa+5TOgmtFuNyQnbLnw\nw0Ezkd10vGRfWqcAzt3jh6H4xcsiDcbkjJHHuCbjUaNcIpt8if04n9serxZG\ncFeX\r\n=iFcR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD+L4VDpWnx8FJBmoF/gxFCe2cP5QQqGDlH0Uu46CXhFQIgRt08hhlLiYTGuFKy/108DVBDkW60fCG7D1Ry9x9R2dM="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.4_1586846855698_0.6072118204344878"},"_hasShrinkwrap":false},"0.10.5":{"name":"@mhio/koa-api-handle","version":"0.10.5","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"ee5d7f6a3533e5bbc4b7adb41d3a0efd4e328597","_id":"@mhio/koa-api-handle@0.10.5","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-1w7gBlcfRO09YHIQ93uF7eNDpAuL/tQqQc1+64VAfKAdMKI4TbWv2UQBhZpTK1x8csY/ZWktg+ct7vcdLimnfQ==","shasum":"16dd94c6ef7aeb9bd9096f75653e08190e0a6b2e","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.5.tgz","fileCount":13,"unpackedSize":69749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelnjyCRA9TVsSAnZWagAAYPkP/RwBRg3tBWSldCLckaxN\nz3f+3221fqAvK5Hfs6N6peGvLJu44jgJnZZrLldTcQL9RERpUTuwwsEKpAHV\n9CSUnR8DFxV4rCp3lQmHZJzgiTHrgjFhUPCeVLZJpWiVrDhadZBkqdYV6vtz\nMuNZCBiKI8fU5BHMY9Y6A4vl7icmmUp/h4Q0f3edh9xF5HIh8uJW1OWqyDXC\n7laHeAxQlA4xrPZCf1AgxOsXbRzIlKKVfNpZfqFiIBNu8jQnZweH22Pw/8zf\nzZMJbNKH8OBYxyY9YhFSxf3FmaMqxrzumB48sbOFOfmPvsww9MFbbyQEc3LJ\nVaWXjLiY90zcBacgTTa6g+j17ZGPNMN+X5i1R4AsrNTpGp8YcJfOZBcy1JoU\nr91kN5K0hjU17z4nYUG+EF151pm5ZUzqLnZsA1W+78pV1KEBO6/1svRB0ICV\n8bCZKBPwOvm443OZhW+zhTGlkfNjWsxjC2Arjz2JFh0247CdgRqfMiiD4bu1\nhnCI1qIsJuxfcCkV/Mo/If91D3kkDvrgx3msdqOFsIm4ok9fOypo4oconxWl\n6hQGXEoZhWvngoeMRcWmbVRVYaepK0nmlm2AOGOxhLWJn+lNoCOBcDcNYJmN\nRJmyjrJG1JxYTPI4YVWH6/8M26iMn4gGXmz6pN4hbM4xgOO1jnPdipe6qvWz\nLafb\r\n=TSkT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDamTNMHRXDvhemcEYy/QfCV5MDT8/k8kzgNUUM+MXONwIhAJsJb25quitjPBduo4o6MyiS9AJu5DtI83ImOs+P2O84"}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.5_1586919666151_0.12749590791008925"},"_hasShrinkwrap":false},"0.10.7":{"name":"@mhio/koa-api-handle","version":"0.10.7","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","flatted":"^2.0.2","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"0678c0c955a6b51cf9a724ba6f0cb302c38bfda3","_id":"@mhio/koa-api-handle@0.10.7","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-LbhHCvAyh5fJEU/JP4Qe2qO+5nk2p6yDDa8qINa3Zowxrp7YBGtSF8UarWT6U9sXP+79kqM7WN75vCAwmaN6TQ==","shasum":"975d3c290af47d93fe5e1463ab254f4979bb3e3a","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.7.tgz","fileCount":13,"unpackedSize":70670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelnzSCRA9TVsSAnZWagAAKwoP/1HP9WyPgqZE3l0f9vtP\nORs2Zxcw/6ttp9B/m17/72TBDqB9htXsnxUh3WPgT3Na7GdCR1R7CzFO9IYN\nITH9ZxU8uM3jXhANProTihsYdo0BL+FqdZlgf/7eYbAT+BhrBMy/OVBXGd2d\npK4gnQ5vUZFTio0v6lrBDP1j7DK9cl9xg6DOzMdFojD2/J/v0mhrwhX7y7EY\nB0Iczy4e1emP8+cCCiShLls/yTkF9z0BmTu2Cj7VJB7bj/pyksm4qPL7eY3T\n8t3XnIJjsdfgG9Dkm/xCXycJP914FqlmDYFgIzfQJB/mYF/gwtjR7Qtl4amP\n37OohnKEvBXc0w2JBn62OtPUIaaGSYXHJJn6iwpj48lIejqCic0qWshaqe+E\noBekoCHZPJyMJE66whUWXsJNYwrcBEzPRva6fpKqn07VLjHjBQStl31Hz9fE\nv2WFnWwM06bceDlOZoQCKs8kySOR0tnv5pv/hMM/fSP5z1dHzU2GWnGBhSGx\n6iOseqUpzPFlBnD6fu1n3eN8zW8pz29NW9TbyKo5LxP58aEpMygI3B6Kpu9S\n9Z0wIN8MC9jzOMb8J/eTsdXlCeXEcKbbfXETwLK8cfoZpwvcNlQjxKroPpjh\nX/IvaC1WZuH3RfEOMvQhISd2FAXyIASSe3zmZRM5k7D1Y4tfLIuURqQEW1oO\n0e4c\r\n=NC7y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgFMa4ozVfKpzTdktztG28LUL3S8aXHh7k7haCgkoGAgIgXTOFq6ayVajlVWMJCThqRyErKrEseSw9TvTqy7YIhEM="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.7_1586920658148_0.20040041202353076"},"_hasShrinkwrap":false},"0.10.8":{"name":"@mhio/koa-api-handle","version":"0.10.8","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","flatted":"^2.0.2","lodash.clone":"^4.5.0","pino-std-serializers":"^2.4.2"},"gitHead":"f041126df98963f2b17f524bf23f5a2f6ca975c4","_id":"@mhio/koa-api-handle@0.10.8","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-BOx8hrRqLR/NoILRDVJAOv/M0L68KVk2PAdRcP+QwM6j5Wd//+6eSAD/5BZ0yI//zOybNEvFoTRIe1LCo0qU1Q==","shasum":"7d3aa26683c0136386bb3888e5e65c4215feb1ca","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.8.tgz","fileCount":13,"unpackedSize":71490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelpjtCRA9TVsSAnZWagAAprIQAKR2lWJLWOeXE/MbxJhH\nzwiLx8i88LcmftIfqudomzdYmGdlwo0FWNlIGtc2EY99JzhdaqQyLrdJGXhR\ngKOukpBb+ddENq54ZkAEZyrmwOOJgRL29AIDrSausHV5xjl9GCbsBP2kMliU\nCwRs3WVPkbvBfcezWkS+kJ991/yCZE0QnpLrUOyXsxw8i0BX34mRsSwyhEav\nQ5uvU4S0vnADPUjCAg+Lb70sEXOqQKy0yh9T7VkktsE+6QE3YpI+pVW9qsLk\nXRpRp3SpYCzwk2/AiwGT1FS6W+1+UXU7cxRd7wHlRLZwJQaOvFgfOPli0DxF\n2xhqW/DZJ82+jiy7pC0TREiuNismt0HyJ6Qf7idDS05RkLjp3knlhp5t5Sbe\nZk9ycQJ4EqKh4lbFfsQ6ss6jnNLOzHAOhJEwq96xwhm87dsY12XY06dsSfTl\n1jC/CtCV5wzbLojum/0RFZ52d+t1iLKlR6BMB/N7lOhkQB7767EYC2OiKfhO\nfXvlvOmFw3eh6rS5pn920L6HqtmIJN72nxq8/aA1sY4tXsSznB8fT3/N+DOG\nziXITsB4wznskPHi3NJpB704G37ECgpGM3KjHyaKYjGvrD7csDQXypM+TnH9\n1ypHHjM+9+H7AZyzYl5HGc6Tr6weUOMlryBTOeUAuV2DS6ATcVyPth+9VHIX\nEU88\r\n=bQ2z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtxqXlj6X+mskjxC6Slha5IHSSoJlE4pFa4cScM1IVnQIhALXPcgpYjJD8HeNY/E5RxduvvFKAKNxEBJfNNzJ6tSxT"}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.8_1586927852868_0.2663627488440401"},"_hasShrinkwrap":false},"0.10.9":{"name":"@mhio/koa-api-handle","version":"0.10.9","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","flatted":"^2.0.2","pino-std-serializers":"^2.4.2"},"gitHead":"28ade80f8e74db9854c8422160cbe4ba66637c6e","_id":"@mhio/koa-api-handle@0.10.9","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-TbAPNT9oGDPWOf4pffh44QyoA0tzn4Yr0+IwJtBtnVUmz39arJgWUklYnK1Zs2NGKkOPYycc+MOgqzDKD7s6pA==","shasum":"d1f76b1dbf7682aedb3a147bf33082c571c183cf","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.9.tgz","fileCount":13,"unpackedSize":73020,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemOm5CRA9TVsSAnZWagAANqIP/Rc+Xh6QiZfZH5p8g0ZD\n1wb4WFp9t1rMZEsn6k/nguiDj3XffA0P3oU+hriSqwopMDvjwM99eDkuPqfe\nv0r6I7LfyY1EYX0mqhSmKoZvfpE4hvU10FRt1fnUM5vs6meJqxgQq8RjimUo\nGDUQ5VSz/QGPw4aXZ88qcc75megTB3dy3hO2j+OkQuIegdqsbpz358HMhQYD\nXG0McrrruujYxhkrF693ElZAJfG+raCVM80/3NWoGBs4FQTIfNWQ4EjHuzZZ\nXCw6Lqb6vh5jwbucUROxOTpQtWS5Saojw4fb/EOImgI/nTeknmYFXjmJYB1z\ngotK2duaZAzl/nlAElCiuePiUe85jU97pP1MpdUJVdFXJNgCZP8xoPU4LtfY\nXB7anfaoW2vH2dqiM6b/OEyjRo2OllrDN3JbqTRwakzwpHwu0JKB1HZtrfaJ\nFWbCW8uLvysOz1leQOdl+iZHOr4/qyqZwDGpMERHbVd/AwW3fYDPauI5b+wa\nthMwHpNQUrLOid0O6jQ5ki41NhQL0AkbWex3tu9h2cfY2GKnxXrRj3oSSuvA\ngtnXz7STQorvY7kkO9JjuftFZTW9lFwFcNFzTjjGw0DA0Hq5NlDnLMJ2UU88\nngQCYBIwNwCy2phP3rkGVucAGQLs/otFNg3qPvd7cSu+do60wkJ20es4h57i\nZ8yh\r\n=4oBz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaUfcp2zEL4BYoE91Ua1pzZvxVwmDdhocLVJwErfFYrAIhANXaQeDKglNpL9+3xW+nfW7/xA+Q3rk4VQhC86v4uiMu"}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.9_1587079608866_0.17030815124596255"},"_hasShrinkwrap":false},"0.10.10":{"name":"@mhio/koa-api-handle","version":"0.10.10","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","eslint":"^6.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~5.0.3","koa":"^2.4.1","koa-router":"^7.4.0","mocha":"^6.2.2","nodemon":"~2.0.3","nyc":"~15.0.1","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","chai-subset":"^1.6.0","flatted":"^2.0.2","pino-std-serializers":"^2.4.2"},"gitHead":"61fa434aea10232a8cdae281eaf5e94c4f17f2d9","_id":"@mhio/koa-api-handle@0.10.10","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-vLWhroj7LVpK9bVAZoUb37kvapzKUkAuVgGbwHcANDCoa3x38LX6DQBNsoALYnv9EkvLw15HK2mW9rKH4Iw3nw==","shasum":"0e2f2c9e6b32e817a4248c1a28c65408b344dcbb","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.10.10.tgz","fileCount":13,"unpackedSize":72842,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeoOL+CRA9TVsSAnZWagAAh7wP+QCh2VFPgccKWgQI8Vw+\ngsul7MCLF9ikNuzTveimxbMlcT52syDOwFFB1YZpFbCgdO9LWc88vlPCOpGF\nda/chkE6jN0/gb916m8pqWZO/O56tfr4iaYicDzwNxMqM2gN2w4mH6G1HUZ/\nmlU94R2c2RH1NZLkXdgFwOeajt3ibKAnWzVJ25hjwyLkqXoELdkTdc2BZnCm\nzP0pYtczt2uRl7t7njt2mVt6psyTfIWx6yfJi+18oBVE4liRo7abUV/w29tC\nH35YdSTAHiU2srrm8e+E76iqWEGRucIXRLS7RmzvMq6eDRZRY0QQlzcGIXnq\n5VxNw6PaH9PXN2svgatLkFL9HtGDD7QM0HhIrdEHb9y15ju4ZFk5tgsx+Gfy\n2F/kmVBCg/F73eJY60YrPQDx+7ROaweos7d7W5mHHSUhcbBB3FKR5yU2Imun\nB1dMDkCOPX/F9oAZ64xfrrRuno58v08N/Je6j5itz5pacZ0jKDo8w73492Tq\nV8jiyXpxNmHO1IHWOJY24BLwG0sRmCXpQukPPFG+zWSRYSgvRNDPQK/o8RGv\nhI/uCiQPGpZq0D0Tqk/eMdFAIC0g2XVj5QjramQNbg8m+GU4xgsfeYkKVUB+\nOy81ju5/n5c3zmluUIzqoE/OwDeaHSKqN9b9zDvoBHybG8FHdqHzw+JOhyfy\nR4J8\r\n=4ONe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj2IDMC0F0HKyPJlMg0645CO724+azmvJKio+ANRs7dAIgQH1q7QhIiCebPzPfUUkf8Z3jODuU3/pJCEJfRKZigcA="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.10.10_1587602173979_0.10037187862407992"},"_hasShrinkwrap":false},"0.11.0":{"name":"@mhio/koa-api-handle","version":"0.11.0","description":"Koa API Promise Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.2.2","@babel/plugin-transform-async-to-generator":"^7.2.0","@babel/preset-env":"^7.2.3","@babel/register":"^7.0.0","babel-eslint":"^10.0.1","chai":"^4.1.2","chai-subset":"^1.6.0","eslint":"~7.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~6.0.1","koa":"^2.4.1","mocha":"~8.1.1","nodemon":"~2.0.3","nyc":"~15.1.0","source-map-support":"^0.5.2","supertest":"^4.0.2"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/exception":"~0.2.1","bluebird":"^3.5.1","flatted":"~3.0.4","pino-std-serializers":"^2.4.2"},"mocha":{"require":["@babel/register","./test/mocha-setup.js"],"ui":"bdd"},"gitHead":"d83992a01cff541d67ee11bb10aeb61755507e98","_id":"@mhio/koa-api-handle@0.11.0","_nodeVersion":"12.18.3","_npmVersion":"6.14.6","_npmUser":{"name":"mhio","email":"mhhnpm235d@deployable.co"},"dist":{"integrity":"sha512-Gzcsh+7vW5PzXB4Ycp/NS3pF1dMMKQXUvCObZJYNPK8/Uv0PDhIEwRZcQ2br5h+yfV/Eu5OrX2DnsljhZHrwmQ==","shasum":"30a22aa5e0d55ceae3b67cabd8d75639f09ea76c","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.11.0.tgz","fileCount":12,"unpackedSize":73556,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNSk0CRA9TVsSAnZWagAAKdgP/jIUcv7gptS4HTXC1Kjd\nV+XQ+1m7QXDiLK1LJ86dGeU0pIDLuT18gbPU9M/aOl/3u4ee7+pcvmLlnX/G\n3tfrOKwKhqZ8zpf9rzoI9bHg5zs1bEUXaSdV4GB1QtaKrAB2XyO5KU6n9Lg6\nzzvFj4u3IR3xAiUglmSS5vcaGqY+NlPyHhooY3e6BXwCurAtLK72W0IojaAN\niJwVsBtFW1hFPZCblEmCkb2mKYwIosOqnfOg9YYaRlKs3hG73gSgjZFXQhO+\nZqFC3bTwd/1Uc8QO3spnEF78Mcjk20s4rSeBQqmfR+1tpqu0QY8HU0DMzWFI\nqPIIE9v7bYxa0pi7pxXjuLycCC2kDvA8xEgrHuhwN941Ru3RCJxFh7De5yD5\n3cVk7y4yki4wolmN2wK/Vq874D3ulN0Oqd09BbSqjdIPBgSY2TokwGhTFwSp\nghnnGIhWismp4icrD0vt8aGcsEpz8XE9jdHadGqqGd1GUIM0AsOS86Rng0xW\nCT8ujY5p5281OmhVnFv28Y4/C/JddLbezeiFhnU01XwQ3xobix6eTDG6zs5V\n9N9z9aM9w4vjYYBHQO6kDEcwBojO4nEXM0PAMT/HKLV1laDCA2N4FwaP4X/j\n12ZCcZdS6CUCCznEcoB6un/irIMBAT1qZPo0yL8IfTUOGRwG6cXuoh91yRjo\ntA8Y\r\n=hUki\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHwDQCvQrkXi97DN9Ft8Y0rBrqFyjjDJ5SZDrSJn03LAIgKvbYLNFf3udC0Ko4lUgMt6iVKC+Ugp2zfJnMMTy5YcU="}]},"maintainers":[{"name":"mhio","email":"mhhnpm235d@deployable.co"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.11.0_1597319476186_0.8573731718267279"},"_hasShrinkwrap":false},"0.12.0-1":{"name":"@mhio/koa-api-handle","version":"0.12.0-1","description":"Koa API Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"~7.18.6","@babel/core":"~7.18.6","@babel/preset-env":"~7.18.6","@babel/register":"~7.18.6","babel-eslint":"^10.0.1","chai":"4.3.6","chai-subset":"^1.6.0","eslint":"~7.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~6.0.1","koa":"^2.4.1","mocha":"10","nodemon":"~2.0.3","nyc":"~15.1.0","source-map-support":"^0.5.21","supertest":"~6.2.4"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/koa-generic-handle":"^0.2.0","flatted":"~3.2.6","pino-std-serializers":"^5"},"mocha":{"require":["@babel/register","./test/mocha-setup.js"],"ui":"bdd"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\nHigher level use from: https://github.com/mhio/node-koa-api\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n\nhttps://github.com/mhio/node-koa-api-handle\n","readmeFilename":"README.md","gitHead":"d48184c84028462db809b500b206c85de28bc3a8","_id":"@mhio/koa-api-handle@0.12.0-1","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-MLrykyHP9krxTyiVcRCozs745jgV1POChbYDnMSVTEe/8kMB7wV9GiiOdwRuy4NsSL0SDoWKlcmux5V46lsSfA==","shasum":"20bc96d77fe5a5ddac881947a43c51feb7d8353e","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.12.0-1.tgz","fileCount":12,"unpackedSize":62361,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGqEh8Wh9jXZGJhdm0HmT+RZaOlkbU8jVTGrf97lhemzAiBPtlPKYFxfc6sHnTS6G+d2wxMo1gBQdj0u/KsOxiaulw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0osbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIzg/8DEPUNVBlfCwaUXoEn9RoXJobHyRAdrOY/1xYTkhKxFaHB0lZ\r\nVnu5m5WGRf0N3NJvTvXLcjWflJNTPIsojC04OX4XbxMBCGPoz2tjK+qcTOEo\r\nobP8gRWEh4c0I/APQXRXfR29Xo4dtQB/G6xpdGr17OsTPSBCLNmZRRojapVa\r\n5DmvDADC/quM/7bsc4+yfcZl3foOh3CEEkVgXawQINwzaeymkW8s0b4XGfSY\r\nb8eTOb/Qcq3xWDYu9KmnnTEA50KQ0IHuNXos9HXcJYXWvlsU7XdeT1Op1ZtE\r\nXKwkWpy4toTFayxofPh4KMdZsIcnn9G9INMHKCvXrCthc4UqtzxgxhSai+dM\r\nHx7LawKNarSGGvnTzjE2dCXa7DjPW5HbHSwWN/buJim7/iN0Jo541U1kvje7\r\nZjcBs01Yuwau9J1nhDr0QC71NmFUEjoUBXl82n666n+KkRmxdNGql0RAmPxJ\r\nhFnkI2Y8YhFYeSQl7iU8B+jW/LUZkxa849daLCHEo0hpcq+LDX+dKJfb94h8\r\nvZ6zv8bCyYV6hakX2IT3zFdWoME+R6ORSbLZ1U6bhm0zQ9JqDeif8rmaNM0u\r\nUJfXmqk+UIduT65sTJIGnzjvtoEJrmhXEJmhH/2bsuFO5l8lxcEGrQYW3xxr\r\nnG9fwqUwTN7LsZcG1oUChR65JzmKY+oiZ2o=\r\n=/bNy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"mhio","email":"npm@mhio.dev"},"directories":{},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.12.0-1_1657965339629_0.8603943663087061"},"_hasShrinkwrap":false},"0.12.0-2":{"name":"@mhio/koa-api-handle","version":"0.12.0-2","description":"Koa API Handler","main":"lib/index.js","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","test:watch":"nodemon -x 'mocha --bail test/unit test/int || exit 1'","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"set -uex; nyc _mocha test/unit test/int; nyc report -r html; nyc check-coverage","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:code; yarn run build:doc","build:code":"babel -d lib/ src/","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mh"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"@babel/cli":"~7.18.6","@babel/core":"~7.18.6","@babel/preset-env":"~7.18.6","@babel/register":"~7.18.6","@babel/eslint-parser":"^7.18.2","chai":"4.3.6","chai-subset":"^1.6.0","eslint":"~7.6.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~6.0.1","koa":"^2.4.1","mocha":"10","nodemon":"~2.0.3","nyc":"~15.1.0","source-map-support":"^0.5.21","supertest":"~6.2.4"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/koa-generic-handle":"^0.2.0","pino-std-serializers":"^5"},"mocha":{"require":["@babel/register","./test/mocha-setup.js"],"ui":"bdd"},"readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\nHigher level use from: https://github.com/mhio/node-koa-api\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n\n## Changes\n\nv0.12.x -- Node 16+\n\n\nhttps://github.com/mhio/node-koa-api-handle\n","readmeFilename":"README.md","gitHead":"58cbb534f0a72246f1231bc56fcb11816aa43111","_id":"@mhio/koa-api-handle@0.12.0-2","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-QR0MxIa6IhmMOqXDA+3GlZuW5acxT4V5HqzoBTx5blF1f9IOcZy3nu/lhpw2IvhjMr7n/d29biN+MP+ZOt2K7Q==","shasum":"67aa56e8facf401a7418e81105f05e90d5ca9e32","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.12.0-2.tgz","fileCount":12,"unpackedSize":62226,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBwnNW280yIueu17BC6pUuCyxrIg8wJFcVowV5Bq1XXqAiBH+9VXsqjEDbkNvhmpbn9P0WEd4edywrcm4QTEADAAjg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0o/tACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+UA/+ORGjNQee527I9DhJMb4xk/hxIRMUK8zux1wI9Men+hKKFmp9\r\nY4PPkGVACe1uxJ3aehYjI6rGjiWYLqP5evqEoVx3CpNysWyx5UGfhYMpmPVq\r\na8oXO/57+gM48XhBcWwesfZKBp0HLeSxkEwdTINRIP+T3gOC8fp3A9xuYz4V\r\nDLrcpuwV6BGhc5Mlp+rvtsh6U2xi5DdhGrig8W9XfB1Xfa4ON7YIGTQYbpcK\r\nqF4TCUYkrLoUKAIn6+LEd0Idm4LtRzgFz//6wRpwtgmTtUfn9PZPvtcCE7mb\r\nXM8p1o8AG0vvLXCHWQgMfwugU/lDwgKP8san6nJvGgvGBH1GrWaJWmkToaeU\r\nBCk780B+ToclVXnwjQnaZOBTzHpUVN8MUYCsTrGIMl9++rxTPRHgqGOd3GAs\r\nse2ZhYDReFgBc8/Uitc2snna48dPrn6eJeYzxvExLOGPQZHSptpf1oteAArh\r\nrbOMVW8NVu0yVgO7gwvOohQUMz2A/ahOp1tS3a3sW8SbdsxYG+7fP67K8eBq\r\nc+e0GCiXq1ofRM8NVCfdqLeejIXbGdJtkHFIOuleTYPPGg/uCMznXLaX2ZTT\r\nthYZNxZNeb2bfo8pLleyMWhIqzgM6CwV03tJ0Ih5MdMOhJlh37Djyar4T1/X\r\n3mtaFH1gZcli2IXK6Zzg1zdtuix+B1+zxbQ=\r\n=0Q+3\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"mhio","email":"npm@mhio.dev"},"directories":{},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.12.0-2_1657966573715_0.0885250829535622"},"_hasShrinkwrap":false},"0.12.0-3":{"name":"@mhio/koa-api-handle","version":"0.12.0-3","description":"Koa API Handler","main":"src/index.js","type":"module","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; yarn run test:built; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"c8 mocha test/unit test/int","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:doc","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mhio"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"c8":"^9.1.0","chai":"^5.0.3","chai-subset":"^1.6.0","eslint":"~8.56.0","jsdoc":"^3.5.5","jsdoc-to-markdown":"~6.0.1","koa":"~2.15.0","mocha":"^10.2.0","nodemon":"^3.0.3","supertest":"^6.3.4"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/koa-generic-handle":"~0.3.0"},"mocha":{"require":["./test/mocha-setup.js"],"ui":"bdd"},"_id":"@mhio/koa-api-handle@0.12.0-3","readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\nHigher level use from: https://github.com/mhio/node-koa-api\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n\n## Changes\n\nv0.12.x -- Node 20+, pino for logger\n\n\nhttps://github.com/mhio/node-koa-api-handle\n","readmeFilename":"README.md","gitHead":"291d34e0eec4dd5c5039e85d8844c087e20400d2","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"integrity":"sha512-ZOjefERz5BYop7OSy2iMZhynbn1v0EqzY98yhZVNCYel8c8zZHwCDrCklQwHskMFIUCvq82T/vVgRh0zObwvHw==","shasum":"cdbcad943d89ea85a6312eae44b7e08107e215a1","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.12.0-3.tgz","fileCount":13,"unpackedSize":29503,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUJYboPCQFtUfqj08yNMNjLo5bQC6VG+/mDsXYDf+0awIgRfhKpDIi1veqsqBiARP9yarmCHlJhPPHJkaOmvOxO9E="}]},"_npmUser":{"name":"mhio","email":"npm@mhio.dev"},"directories":{},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.12.0-3_1707362845824_0.2864484390005202"},"_hasShrinkwrap":false},"0.12.0-4":{"name":"@mhio/koa-api-handle","version":"0.12.0-4","description":"Koa API Handler","main":"src/index.js","type":"module","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"c8 mocha test/unit test/int","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:doc","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mhio"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"c8":"^9.1.0","chai":"^5.0.3","chai-subset":"^1.6.0","eslint":"~8.56.0","jsdoc":"4.0.2","jsdoc-to-markdown":"8.0.1","koa":"~2.15.0","mocha":"^10.2.0","nodemon":"^3.0.3","supertest":"^6.3.4"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/koa-generic-handle":"~0.3.0"},"mocha":{"require":["./test/mocha-setup.js"],"ui":"bdd"},"_id":"@mhio/koa-api-handle@0.12.0-4","readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\nHigher level use from: https://github.com/mhio/node-koa-api\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n\n## Changes\n\nv0.12.x -- Node 20+, pino for logger\n\n\nhttps://github.com/mhio/node-koa-api-handle\n","readmeFilename":"README.md","gitHead":"419f01024e93f39966afd9d204bf13b12c09b575","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"integrity":"sha512-WFDIFIhotlfy80pe10EkAbrWZpvf/utZxt/4iWbO4BuB4mbpuibbkX5WJ+oJt0wFgSsY8zJS0rTGaeq66kitsQ==","shasum":"ef90d5dfb65fa4aaaa94feb6e16e1ae03e81a2e2","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.12.0-4.tgz","fileCount":13,"unpackedSize":29480,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAeL9qvGwsX7GBT3QYtZMtejiuBFANRM2SPiumfYkuAYAiEAjbgVKsOV5zNt7wFsoHUDKBU4EnXktKrKXxkZ60cj5dA="}]},"_npmUser":{"name":"mhio","email":"npm@mhio.dev"},"directories":{},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.12.0-4_1707363219196_0.1667804697035018"},"_hasShrinkwrap":false},"0.12.0":{"name":"@mhio/koa-api-handle","version":"0.12.0","description":"Koa API Handler","main":"src/index.js","type":"module","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"c8 mocha test/unit test/int","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:doc","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mhio"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"c8":"^9.1.0","chai":"^5.0.3","chai-subset":"^1.6.0","eslint":"~8.56.0","jsdoc":"4.0.2","jsdoc-to-markdown":"8.0.1","koa":"~2.15.0","mocha":"^10.2.0","nodemon":"^3.0.3","supertest":"^6.3.4"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/koa-generic-handle":"~0.3.0"},"mocha":{"require":["./test/mocha-setup.js"],"ui":"bdd"},"_id":"@mhio/koa-api-handle@0.12.0","gitHead":"be280f8ca98f87fb7a1c7f6dba6c87219242a9f9","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"integrity":"sha512-c/3hxD+U3RuFrwpq+96yGn9/DBpKG03QkIqMlSuk7JnZWogFFQPIGXYlmh3r9mmu/oVunF+4xHCNEardXmMqtw==","shasum":"60fcb84d0cac59a59b45ec6a1779246379113896","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.12.0.tgz","fileCount":13,"unpackedSize":29478,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKqSBPCek5risCCaeReWuJC+N3kdAS3Lju5+ej5rj0AAIhAJGAMr7rYjWBeywwLTyqHhUV4sl+Ao1rVHLFfdEaHelL"}]},"_npmUser":{"name":"mhio","email":"npm@mhio.dev"},"directories":{},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.12.0_1707363231295_0.2566668957084679"},"_hasShrinkwrap":false},"0.12.1":{"name":"@mhio/koa-api-handle","version":"0.12.1","description":"Koa API Handler","main":"src/index.js","type":"module","scripts":{"test":"mocha test/unit test/int","test:unit":"mocha test/unit","test:int":"mocha test/int","test:lint":"eslint src/ test/","release:test":"set -uex; yarn test; npm version prerelease; npm publish --access public --tag testing","release:patch":"set -uex; git pull; rm -rf node_modules; yarn; yarn run test:coverage; yarn run test:lint; yarn run build; npm version patch; git push; npm publish --access public; git push --tags","test:coverage":"c8 mocha test/unit test/int","test:built":"set -uex; yarn run build; mocha test/built","watch":"nodemon -w . -i test/output -x","build":"set -uex; yarn run build:doc","build:doc":"set -uex; yarn run build:doc:html; yarn run build:doc:md","build:doc:html":"jsdoc -c .jsdoc.json -d doc/html/ src/","build:doc:md":"jsdoc2md -c ./.jsdoc.json --separators -f src/* > doc/API.md"},"keywords":["api","koa","handler","mhio"],"author":{"name":"mhio"},"license":"MIT","devDependencies":{"c8":"^9.1.0","chai":"^5.0.3","chai-subset":"^1.6.0","eslint":"~8.56.0","jsdoc":"4.0.2","jsdoc-to-markdown":"8.0.1","koa":"~2.15.0","mocha":"^10.2.0","nodemon":"^3.0.3","supertest":"^6.3.4"},"dependencies":{"@mhio/api-response":"0.3.0","@mhio/koa-generic-handle":"~0.3.0"},"mocha":{"require":["./test/mocha-setup.js"],"ui":"bdd"},"_id":"@mhio/koa-api-handle@0.12.1","gitHead":"d8f585b264c431d964c0b5c6c35a8e1cdfb7cd65","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"integrity":"sha512-4tWAV4cvcpUPdJJz0RQoQtl1Ja0IVI86HTnRMsh8D/l3ZmGLMYrTuc1bmp3SS83PERQ/MTHs6YEtyZOgYpv1OA==","shasum":"e4f97062634d8f6a790e6be7ecf0c94c6c112571","tarball":"https://registry.npmjs.org/@mhio/koa-api-handle/-/koa-api-handle-0.12.1.tgz","fileCount":13,"unpackedSize":29841,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFpy6sCaE2jnPRbLO4TvO+qFFhAbtXIDrmuN1xUqw2WiAiEAvvuaDcR9i+F+eV2A9wGbaJTQfT01J3Tvd5lwpZ6q6Ec="}]},"_npmUser":{"name":"mhio","email":"npm@mhio.dev"},"directories":{},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/koa-api-handle_0.12.1_1707444841126_0.7715965332228956"},"_hasShrinkwrap":false}},"time":{"created":"2018-03-10T00:18:13.049Z","0.2.0":"2018-03-10T00:18:13.206Z","modified":"2024-02-09T02:14:01.446Z","0.3.0":"2018-03-28T06:38:20.718Z","0.4.1":"2019-01-13T05:31:06.880Z","0.5.0-1":"2019-01-13T05:55:20.273Z","0.5.0":"2019-01-13T05:55:48.588Z","0.6.0-2":"2019-09-13T02:37:56.967Z","0.6.0":"2019-09-18T04:46:10.541Z","0.6.1":"2019-09-19T07:31:18.296Z","0.7.0":"2019-11-04T09:39:45.338Z","0.8.0":"2019-12-17T05:53:29.587Z","0.9.0-1":"2020-01-13T05:06:07.111Z","0.9.0":"2020-01-13T05:17:34.602Z","0.10.0-1":"2020-04-12T22:29:54.966Z","0.10.0-2":"2020-04-12T22:35:18.345Z","0.10.0-3":"2020-04-13T00:07:21.315Z","0.10.0":"2020-04-13T00:13:08.432Z","0.10.1":"2020-04-13T20:22:29.820Z","0.10.2":"2020-04-13T20:26:02.383Z","0.10.3":"2020-04-13T23:30:07.578Z","0.10.4":"2020-04-14T06:47:35.839Z","0.10.5":"2020-04-15T03:01:06.318Z","0.10.7":"2020-04-15T03:17:38.326Z","0.10.8":"2020-04-15T05:17:33.051Z","0.10.9":"2020-04-16T23:26:48.994Z","0.10.10":"2020-04-23T00:36:14.103Z","0.11.0":"2020-08-13T11:51:16.313Z","0.12.0-1":"2022-07-16T09:55:39.789Z","0.12.0-2":"2022-07-16T10:16:13.934Z","0.12.0-3":"2024-02-08T03:27:26.002Z","0.12.0-4":"2024-02-08T03:33:39.338Z","0.12.0":"2024-02-08T03:33:51.475Z","0.12.1":"2024-02-09T02:14:01.280Z"},"maintainers":[{"name":"mhio","email":"npm@mhio.dev"}],"description":"Koa API Handler","keywords":["api","koa","handler","mhio"],"author":{"name":"mhio"},"license":"MIT","readme":"@mhio/koa-api-handle\n--------------------\n\nA Koa API Handler to do all the request heavy lifting, so you just write logic\n\nHigher level use from: https://github.com/mhio/node-koa-api\n\n## Install\n\n```\nyarn add @mhio/koa-api-handle\nnpm install @mhio/koa-api-handle\n```\n\n## Usage\n\n[API docs](doc/API.md)\n\n```\nconst Koa = require('koa')\nconst Router = require('koa-router')\nconst {KoaApiHandle} = require('@mhio/koa-api-handle')\n\nclass MyHandler {\n  \n  static get error_message(){\n    return 'Failure'\n  }\n\n  static async ok(ctx){\n    return {\n      ok: true,\n      request_id, ctx.state.request_id,\n    }\n  }\n\n  static async other(){\n    return 'other'\n  }\n\n  static async error(){\n    throw new Error(this.error_message)\n  }\n\n}\n\nconst app = new Koa()\nconst router = new Router()\n\napp.use(KoaApiHandle.error())\napp.use(KoaApiHandle.tracking())\n\nrouter.get('/ok', KoaApiHandle.response(MyHandler, 'ok'))\nrouter.post('/other', KoaApiHandle.response(MyHandler, 'other'))\nrouter.get('/error', KoaApiHandle.response(MyHandler.error.bind(MyError)))\n\napp.use(router.routes())\n   .use(router.allowedMethods())\n\napp.use(KoaApiHandle.notFound())\n\napp.listen()\n```\n\n## Changes\n\nv0.12.x -- Node 20+, pino for logger\n\n\nhttps://github.com/mhio/node-koa-api-handle\n","readmeFilename":"README.md"}