{"_id":"@wesleytodd/openapi","_rev":"14-c0827cdb7760882fa530116ddd4db33a","name":"@wesleytodd/openapi","dist-tags":{"latest":"1.1.0"},"versions":{"0.0.0":{"name":"@wesleytodd/openapi","version":"0.0.0","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.0","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"ba6ad3a554041d4b39ed51176120bec6c9569edf","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.0.tgz","fileCount":5,"integrity":"sha512-TCoK3wMaJMdNZMRVOiwTjCmNE6fJFntrNmm2PeYNZhQUfI5mfbxq7uteI2gQSKYYovjbH7DRpeqAadCej/T1SA==","signatures":[{"sig":"MEUCIQDt7V0OzcARtLZWliXYg68dstVl6SQ5dAnBEXgWkUbWiwIgZvhWpz1Oy6wqqdytFhgrkWaAXVheiWjzacK5jCh8Hzc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcF+mmCRA9TVsSAnZWagAAjTAP/iXJQ/S+SDGO0x4wYrRi\n0A/h6eRxLzpbek3f/QwsF0ressU3/6QH6JNUeUXAZPKiVpRfqPI3aqCANdYu\nvqSlSYTqnYA2+6Dq+d3gTfsZfUsldMp37bo9QeKilVnYA64Tp0pSijtztwYm\nNBCjecA/xU8UDeTGMxZXkUvumBt1OV8lrUdFMu9MaP7xUJ/N10jjz/YF9eNF\n2T0jT0fGMguUvlXUNWiEULlMYwVh34SmY05QbVRRXScAQqNhiCeUhIfXxfP8\nHzmtzwAsOPzIpcOb1a16oOJxO24iZqPF76G1YvBsulll69PdtFOqo5tqpA4+\n5XXrAtiOcf5G+y4cIbGDDcyIelQbpO/RVsKfYDofsOrK+XmyFwHEoHXxFnRX\nnEevVzXC8BqLLoDJL73NeJy+Sz3TtkzVcvZaU97VuDrLIiltoShWjV2cn4Jr\nzmvse9EuV1WsRPVgH3r7afZuXDyO4CBfIsC1BmssWCt4TEIriN9YPpr7HnNV\npXzvPSpDNrK8ebXgxzvRnOQ5KAIzjBfYa9bDvmLoTW9yVOCy2EYpajIk8C/P\n6wxAj8BC/KxYTB5rcD4zs8amWQ0l9DRZAQVujuKuxhWn871AP59XLiAVxaqH\nuiDPbwRRABldIwnPSbtwfdDTXsVpojVFuuuhRN4P5FSM2U1hXEhjCkIG4q+6\n/0t+\r\n=9IA4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"a9767869e7ef2bcb2d71b2305dc32886def90d57","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.1.0","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"10.3.0","dependencies":{"redoc":"^2.0.0-alpha.41","router":"^1.3.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.0_1545071013887_0.44384017751842575","host":"s3://npm-registry-packages"}},"0.0.1":{"name":"@wesleytodd/openapi","version":"0.0.1","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.1","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"cfd80a6c8487a1fe578bd1b92ff3b823f18e5f0a","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.1.tgz","fileCount":12,"integrity":"sha512-xEb/l/X05q/GE9gLbbsPEGuBncKlnOeygmxyA3KrFL6u9hdJAFos/4yv+wpiVTqmz82aukJf9Fu3R/LbJJWbng==","signatures":[{"sig":"MEQCIF2CWMrxbBP5MUCdj+lHX9TlG1HnqUn1+pxh1Q8PC3SYAiBL3BUSBW1FProc/k/EQWLevoIiGfDR2obQcr0bNjrO0w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdbAaSCRA9TVsSAnZWagAA/j0P/22j4k0fyyRHGy+UXar9\ndJ+ZAa8KnrYVFETnTrhv1wVWp3MumgOoe1RESKGZ9I2lXBXoBCn5gqzRxPCC\nyaABMo3Hm+CGaJYgd/AJUJZAVThLpZ/K8AZ1fN0LtXsvWH4GRQU9H77qDLw0\neCUuErwqliJ90TLd1fvev1AFj8gc/7v+9T0DjKP8QPsvPg4Y7CQnNOfZpUKQ\nuHsZklqsm5Vxxw1jaUfnMjfKRfDbRle+/fYSWp9isLqAXqDLFOqXyE6IqiXJ\nHgiissSdL2+u5LHBM7aso77ScaYrsSTRg9qazdwCcMdKAAzAdAzdVeSHJk+x\nfe4dXOzRP36yBz1oF3ZVXA1lsyMiIbUyFuXYttlfOf2ucHL8/FWDPqoLlc7s\nDes5gZH6EKxykV0wTiWxceST6eNNGDcdIW8zkz0P5ilucKiDLR9rOtmhlezE\nBTfWsfIaC7K5fviDLvE88pwbbdcLkFH2OqWkfgcGoc/IfhM0lniwMQqTF6J0\nHnF25ykusGkN9i7KV5z2kHkZjsYntxe+2tFBx1T03P87n43o9e0rhkRT1clG\n+tPzThDwPfiFvFK27PydxehStqSylUg30oA/QTo1C2gtGzopibI/H1H5nCVH\nN7CoqDKkgiAxXAJwRb7dc1iEF8J6ians9OMacOwuTq+sRAU+MpcMW8ISRZbV\nwMO7\r\n=VBwx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"e1fc1f90d6e052fd1862537bdad1f8fc8bc58e48","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.1_1567360657830_0.41327639475903144","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"@wesleytodd/openapi","version":"0.0.2","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.2","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"943e58a085cd7698502950e1ccf741cd6a746c9b","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.2.tgz","fileCount":12,"integrity":"sha512-rc+AVkU7+6hkMve8ibPHAXa5EHQN6k5bvQqRpXn46SXPxHx0LTRMo6AFY4z90sV7LqI1+zXAAbgwoMgqUqezZA==","signatures":[{"sig":"MEQCIBXZNPug02+aPMJvknJF+x2UurUXYEQczDJD3M7r1FbkAiA0lOvDUfW4yyz8mUfVuOdBEcgKvByvrF5PYJMTGbZerg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdbY65CRA9TVsSAnZWagAALswP/1nK43mCkM6eARxWR6Ng\nEoue35U4ifBG1iQwW1gkpHJpoRgyFQ2sjHLvRs4hgI0pjqjDVW7Q61tjRHgn\n+c9V++AiqB1wH+oz9y5HPk7ygV9ZP9B/hmMgdywvmPGow7YmS9GOAuC+EE2D\nnHM1zBUlMvzJ9nDmzXwBNNkim8aypJxqbENa2uzLoRQyuxz/T+LNNvUopn43\ng4bcg10lrcJHTgxK/SDnAHzH6+J/0zNmKkNOPS/h3iOwwJXG5nZQ40S8yf23\n8z3Hm5h2q6t6+NC8a8fCA7Mmm7KzkqSPlCvZkuN6aW/s6Au6mi10FMoPJg7B\nVcONEfEdxUudoz/vCDXDebQedzm4WBKnbhiod2dUK/WPK49GYVkAOBSDjNyx\nlX5+i2+u28WrV4l5+D2uIDi3QDeI6BmvqvwL+PGp8+XVg0ZoPQ2IH7ac3EDy\nxs+JxPrw9kDLZnSyYFb2+81i774KzwNp6A/xOW/u3FZYHNxTU76FJintIg2O\nx4ELLvhBmB8HgF0V8wZsGlKgBmYMbhH/vjfslzYDx7gpsS0qmRdR+lTFA80a\nFjI4zZ2wT6lJi3nTs99QjTPiYNPBBzA8X3Xm1o17kHunuGGAtNVu/YzRH1St\nGM1f0F4RZPDR/aSsGVnXfnuZZjXMASNH8Tq8RO2ih3RvDxcrB5nrXcJHxidH\n0fOC\r\n=GiTP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"3be0ff30979765cc15ca05d14bcb88d997d7f8b5","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.2_1567461049235_0.4489165771394532","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@wesleytodd/openapi","version":"0.0.3","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.3","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"49cd63d49d634bdd13d45c417f8b0ae788a594cb","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.3.tgz","fileCount":12,"integrity":"sha512-9A3exuOB2ioAWkEOjrJi2js67i8uFnngWOY5r5tg2M52D57GGaEsvMYkTiE51/i/dgjSBeNq0roK/fB+XzN2oQ==","signatures":[{"sig":"MEYCIQD9DQgFY48Rmzoqr48GKfEs4vz0uku5fMPRRcdi944CUAIhAJ5BsR/3127Y1hjagaMAVUpO3gZkHluEQErEHsDz08Jb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33691,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdbZWoCRA9TVsSAnZWagAAr2gP/Amy+RWcXnkvKic6lSUj\n9FO2g6Veg0zL1D+EYw+YCzRcuQ2AvzRru0y41UW8gqzlxWr5K0b3LvUDA6pH\n5eS2KGke6kxqaTdDpbj+h097jOYjv/hY34KZGX7u4V6GNAlh0uZDPuYz9USB\nX0IqAmLmE4WSUP8wTCug4KVBrL8kZx9iNJ+HHpi2M/ckbZVLgah4FBOXm+sK\nAxvz5QpebdXJt+96TTbo9NJBmzpQBfQHeI65HomK2Zd+oo8PEIIiOPGymVKd\njE3coBgS9ZpZqUSxslZuV/tnVMUkismqfKVOCAUF0SAU+37R9NKiSgLmV/dD\n18iWz0TBuQPjfy0uzpiNKsaNAwDxYIKHZ9/dpBOetvGgRiRaGXrhwHVCpxTG\nc9YPjYQ89GM4VTjOa1zMaDl/1Uce/Zhw8TF2etc9X3Y+uEDxoMm67Y60/G8l\nISXMy/l8q+RZXV8X4HhHzQMZnr1Rw+GImyi0A3fHv2SCFw2zjdz4CalALNpJ\nTXlrIWnbFrg8iZL6cGC2ZvvPwje+E6HEaTnrGzkfFk781l0fMRAxtdoBWE3X\n99kPg8PpTfPy+ooV5DnIDkoH27INuq2KkIycVGJi2oZk8IuQho++ZCDMwLVS\n2xtOcBE2lQeuw4QnyGGjcCWPHve/djt909hYIwS9hylYlYNNgds3/+JnwBjt\n41NC\r\n=v83v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"d43015c3afc71bf9c8c3c7894da1e616d3e49df5","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.3_1567462823761_0.027533129351870134","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"@wesleytodd/openapi","version":"0.0.4","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.4","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"a5ac92285bff77e392a5199a618d338d03e1652c","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.4.tgz","fileCount":12,"integrity":"sha512-BrFxHhFVKeOoKB6kOJ3MqJM0ZlDXf1kRKKM4p7Yp3chnLIAxLkvZ6YLOICd2XlPbIO2231SFmR6L5isQNpvs+g==","signatures":[{"sig":"MEQCIFXGC1dkwtlKwJHe7F32rbGVODIgHuT+yLWdLzuyhaoAAiBHTFKnxAO7Ds315Z8x2iDJHzLz0kWCKbAHjwOItpSPcQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdbaKwCRA9TVsSAnZWagAAwBUQAJhQdfYWi/osj1G1ymfT\nK7LN0jcuQUCPIQVp4MEtu3IQBfNOllhOw8Wcso4uw13Rn3a1FhNIqyIed0Ed\nfsyrLUEUFAj74v6mPdiDGRqRbZDWcz2eqVwuGoD9kSACfe4A8PCfdnix62d3\nQmC8wQcj1s3jAcW5gRgFNY3WY5vCwsYhF4YGGWI6KiuGzRV1iDq4VwsQtcO3\nKqv2Sxgekl3qwvjmSQMA6bAEzS2MOp4nFNzisE/ecPUndGmb8GahwSB7yi9Y\njsz+lXqO5OTCD4e8KsE8Cen9tdTH08cnwIC2CDm3ytIe+OJyLe7lgfL8yQX+\n9C4i4PzSU1n3V/srYy6jCGJxl1pdGVJWVMLnPxtakBsfRtnCxGuY5YvvOuQ6\nCAsQxKWREnioGbFjkvkVYfGrplHsauZsdF4NI3Xy4dFsEFjn4wI33GFx2d2y\nohrL3V7EbpqZ9hK8cuCxOApxOpyCTtVAwK4jeqmH3AqOQbzPNXVDPwX0engj\nT83tj/SUY/6jtmXzywuaZ6qwOHvvO+6370DjfKqV/QlzlmVaqk55zLiN3UJa\nxPl5sWmabad37Uhai5dT3i4aNJapBoFC7Rzz1Nh7gxWnKObJraGb+Fq/XnBf\nUwob3PWUGHy7+nrRKNInRSHAyMZdOwm0yneOuS7/NGGV3uQjcRHmI3JVEdrV\nUcCZ\r\n=3NwB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"176ad0574cf7ea18be9393732e47aa24e14b497a","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.4_1567466159850_0.011914545345890204","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"@wesleytodd/openapi","version":"0.0.5","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.5","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"a62952a659ad54d36694e7d68afbdd359b8819ea","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.5.tgz","fileCount":12,"integrity":"sha512-y1eplKn6PJtRPSEk1gyFBzzncJVs82qIA8MC2pEbZUJR/p0NJxoJ/ON2ObaCZnNeFuqpHtRvYNlFehora36pbA==","signatures":[{"sig":"MEUCIGiprU69tiCkvV9+yk60WieCAr0NLMg7up1wkmqjHCY5AiEAyfO4TSO62nQpM58oc6sNeLggZ6LjuYBcb7o0yftPWt0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdcI0GCRA9TVsSAnZWagAAzocP/jGtFSg1rPgC4f3P+2r5\nG2njAFdKvmKKPepthv2zpqKfxxPm5FCgZk3oYpzB2hXi6duvyyz5SlL1v7lX\n0OjaDWYYRqVhWCvyNvXXJfye+yiPC6uuBIx7gwQqePausaw/Ib/TpRUEGr4D\nRMR8ByS0gSTmw+xsETiCbWdcPtctnh94LbdBzrtw9x6NE8Zut3rpy18pIz6D\nKiVfr4ALuNwVitqQzvJt3PO0MqBlcxtJXG4JGjwzCbWELdA2UlApAVfG+XjP\nHi/GqmbOrSiO6UVgkNYsWCAyZy036+cSKOV9KtoBYjMOeZfPIWLh89eRAnQi\nMDSlBvMCGx+nCROZDotopZ7FOTRL0sY1C84UVI2dD7TGgkFQWyw27gLdv3s4\nHKwKhVeZN99TPDzyDk1pxuwygjPC0PGjVUzQMI4A3w96e/4OrSNf7asOTDC7\nsPPK8cUSRUwT9JZBGEv0w2Ljk2pmseRX8aCljsG6G9E46atTtrz1yXfspNA0\n7/pmPZ2Us+FaX4R4edRJZxa/0FzOzzXyaYt0CRIuXrWlP5rcGaACap8BjdKC\nxh2d+9wJVkM6nex6rDbZGpT9AUp0o10ZXDRsfDXHaibuKcmuFSlK0J9xCOU0\ns0dgYcPHYr/0lB+BXaqNIb4eUVqvO4LVCL+u9Sp9AWep5gbJvOD5p9NNlLj2\nqZ/B\r\n=pNwd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"04feb75f4a4b0dd5309c8d138ab5d20b5b5788d4","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.5_1567657221899_0.2603039293138536","host":"s3://npm-registry-packages"}},"0.0.6":{"name":"@wesleytodd/openapi","version":"0.0.6","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.6","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"188f15fbb4c2df2fa02823a2f800b13a2a408f14","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.6.tgz","fileCount":12,"integrity":"sha512-cO22AdL3SIj9JsgKDZl45+BnkwTqnYYB1m/bSL/rwgcEZuRs5c+vKB9m4d9cZVFVxC9kSYqNTGBP11KkiW1K3g==","signatures":[{"sig":"MEUCIQCw9e0PKfKpd0K5pvAQwFzulU6U1MnD95pbzD4yPXSrRAIgQDtSi4yOSzJfP95svkUNRarPh1wgnOR4sh6bP1mWLE4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddsdmCRA9TVsSAnZWagAAvEsP/3usbXEpnMFgdVeGKFif\nSGLonUsqocWSgc2incWFgn11d9UIfgi3OlOPVBsbhqeskNZOJaL2paohDVqR\nUeXG3BAZji9NRsPACUbZUI0Z7WwxoccZjtBH1JYj5aAK7SZxDk5w2ut2+Uv+\nG5zXlkQuqaMyP9zy0UsntARenUmxvhi50DJlHVaGlqWzWQ0DzEYblRuHmfgu\nsBC2iar5VZx+uubv8fAaVOqsiTA4fbbRoyFvBudOLSzKxOnY3cgWUy78aoO2\nZd6tFbfkQkKA6J0kfYsceCZY4U4fd/UZjL2PREmRkWVLkWa23SFXEhMwsRfC\nLocOvY5QjZHe71T/aswJAxuzltiqegB97sVSm697ui9LtIKKe4my6lAErk91\nxngWTxArg2rAYAe9aEyg9st44MJJQo4VjuMBf5n6pZfiAZOGhuOYTxLogUnc\nVmsvGVsI25sD3+wWPyBG12J/CkOOLF54dNQ9UjMe7pPrtHQsj/8n5davpEpf\nxwUMuYRymfYv058LpkxcaAi3BiZx9/X0/M1lKqr7CtdjY3lWprUQPZggYy7I\nRDgRpFTeXBS/6X/xWwoCtL2fScYZJvO/obvah3Bx4Spjh/n1KIGV6Ld4yIwR\n6zd7Cl0GX1m3Pf+BKnzQXhtc0vamVT+jACklPWLK0JgzCmfhYGp0nk6e1kFE\nYSP3\r\n=PMzp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"16c739db484ac89474c5e83e770a2f2af7ae344f","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0","swagger-parser":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.6_1568065381915_0.4428874397000695","host":"s3://npm-registry-packages"}},"0.0.7":{"name":"@wesleytodd/openapi","version":"0.0.7","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.7","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"02acdac447b91a59a101e912e371aa68e20d9119","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.7.tgz","fileCount":12,"integrity":"sha512-3BjnIBppDatxGQmCag8RXEHEgjgMKUfIgJlMfPUHxupUvPGGwSCpg+wmvMtPFrAfLlfUZnfuWriXhyKOTWd6XA==","signatures":[{"sig":"MEUCIQDZMmq0THMnMPI2mOyGmb/KZsi0zKO4IteQ6Oq+0N9TBAIgDbDYxVaRHT1drCksGn7w9mUWk2nzcMUabx1+J5UPTWQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddwEDCRA9TVsSAnZWagAAao8P/1C3JS7L9NieEmrjTZri\nySP5Uc6nV470Ci6J1brOlfeI+P/EBYcGk52T6RQ4Dk9Ni7kmG0njLa2mnUrK\nKQdN/juFKOWu6jMGxNo97jDQm63mMXh8y/4khx6mKfBq6FKzIDaGcqO6qQIk\nyMPyuf/nkbC3/fQq6f1A8bAAZWI5EXV25LavEmAancFT9bQLtlyZri4yYglM\nC62koWT9iOCUKlyBh89dziKVskH3ymR8wtdJDUM4aaQlJCJcbjTgsk3lEeRj\ndVgLEOsgX0OlTgUMDskRJLzMYVb6k8Dinmyo7bESnAyP4n8aHlI4JPuIvCgi\nFsjTqWZAKqMIZVuTcccbp95Px0gUYGmxSWOl9n7hCt9TmfxxdPLlCIabN3/y\n1vKYHlohNf5e/cUIWxI/HuPLjB0vdGWrhCWYtkxsDcudiGwr9o2QI18C1L+0\nXUe6kzyuHkytSIblTPlWJ70hsoKBOxwUQC0FojfIKbUMMBjHFH4qhN1Qs0FQ\nWB8InEUKFPjH65SNwAWmlqnIEbzYdzihRbvt+GjRlH4BnpZFYsRXhVctXPD/\n/aLzvrSotgQqxfTbrnHZwyMNSfAZblN25YkbCMJ8YumYn/5q7twj9p/0F+Lw\nrqKMw815DohWG67rLVDBxyV4+UHs+FaQ0pDJA7Klabmon2wgF8AfXUMB0dtL\n/xc8\r\n=Den9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"f09202448c819771670523fc5e13fbd85d46b644","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-parser":"^6.0.5","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.7_1568080130573_0.42202679096497686","host":"s3://npm-registry-packages"}},"0.0.8":{"name":"@wesleytodd/openapi","version":"0.0.8","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.0.8","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"c3e5ceaa42c156d0185ce979d39159f84ba5d83b","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.0.8.tgz","fileCount":13,"integrity":"sha512-BdccdrRiIsCpV1IFcZ8WTuNXtk6m0mNTIbpRBrZVOtXzWlXMbWzeBC1XohY1vo077jb2HFVWNXKazz4sGUDK8g==","signatures":[{"sig":"MEUCIEolBUUqx8gb4PkvKDW2EIzgotACSFa2ACT3VnogWTnEAiEAtNAlItrRWt1b9lmFCeybLEFLqIYiPeJ+/2ZYQN87s5o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgZUhCRA9TVsSAnZWagAAGXUQAKM63mcq9dQaZ8sgoHOO\nnyCatRzXj4o0s+Qwt+4dVEN+2aQg70TVvz7vE9NP+7JG1mFvSmK6ETEyuwuk\nGKT6TODowexibh+gxj3Hy2Ee/9Dsj07tDVKaBU4f6ZwmTBnlWLhCZUew5oPa\n0X7SixNpjAnwL5g4VlJKIyu6gWGwOiEA2LnPbQ7/EY1Zcc1JiOq2oNt/b4/N\nf+15a/+in3gTzE3dn8G/j7IK6hgRJMzRD/bgj9iZorvy/thpg6SF1cOM8McK\nq76ion21EUm6Ejy00/Ygfddo+y03R+idXDtdSd1tRLXhOSS+BqNuLYRF0tzK\nJtbMIWFVUaxJLTtCYex78mzeyJdmck4kfR7/Yl+tssRe65NhfxfmMIMDi71Q\n54Estoh1cR4En77nrYOoLaC+tnhA6OJnuQoVq3wiCx1KHo1RaDpgfgAmCrDX\ndejtzbvg2c5Z1FXq6hL7BceGqAExnuGMpIKtFpSR7PgwLJ0TLzQSdRpI8wss\nhZJzqycAm2pPw84Ii7vcXkof1dWuVP1YDGtn91PHsDjrjAMZgNH4737oTz7h\nC5XP30DgU1Is4uCF3CxRpK9PEqiRMAFiokb+4Ippf0//OKQF2oEBxxztSzRr\n0bRJ3rteJrrzv4OHySEIvQ5K7UL+51oq6e0TckmQ7QX9dhivh9A0DRSu2RRF\naR8H\r\n=5yml\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"8f5d4bcc803157d587ffce2562760bb833cf8f39","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.10.2","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"12.7.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-parser":"^6.0.5","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.0.8_1568773409057_0.1497674558097588","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"@wesleytodd/openapi","version":"0.1.0","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.1.0","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"f1cf6bca78795d57cccf3227774b1cd7359b0ce4","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.1.0.tgz","fileCount":13,"integrity":"sha512-Lkv561gn4bnRVn7L2ArIpdbr1QFIrE1GMnVxIKcR/MN7wBttlzQcPaqAEzavLv59eC6JkPX4vXc+TiMncH1zNA==","signatures":[{"sig":"MEUCIBa+ksundBkzv6AbFqgvh5yXQMt9C84bRWxySvzj0th0AiEA7BJO0XO3+kW5MHCDG05fh4X/VXwCfc+aORLDw/ao5Y8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+mE+CRA9TVsSAnZWagAAPCgP/08l0qK6HqdHrPKe/G4E\nix8WeMzNwBIIdEnZYasmYM5xpSgdEj5Lf9Eu8KvMBXRstQV0SOvKgzB4kfg5\ngEGtXacj2FqhmyJU3nNv2htijMkEJKQCiBhF0m7bd+SVk0/lHqlUHTI5LU91\ngj8mKNlkaX/Ps0FCmug5C7hTaaz9vD2EqmM4Jxk/6h5PydW2R1cmSWX43I8D\n7mZgQGlHnSbaBtSj3KjGO0rfg/dMR48gfXAcpBmT8sMSp7pme8iPYLnwR4XB\nqd332uPe/TnydMD8a+sLyqSlMSdCBM/20AZw/R0MM9k19f09JqLWvPaomfls\nhWHoMp7ya589QLZ6x6rNwdAJiJm+FOBDozAtitMQK8WaLQfalWraRognmfF+\nNInI5lQFgguoNcPvwBMuQln6ebMwl8AIMwz18NQM1XqpQe8A5RgYgos48GvX\nZqCyIBRKkq8Qlg+KRvpa7gnjAg/w7EpMfRm4HcQQqavpTbWZS1K6y53HQtQa\n7UgPxWXVaowoiI5Jx1pbP2yZc+xGmlIhh7W9/xe1EQ1fX4d3Px6wYbqOPcN7\n5iT1qKocoTTXCBiPLFvbjRJHUYqbNxP5esWieR3iOMDtk1SP7uAU20VvTurH\nGPKRcNI52L+5y5VYFNDsqfR+tx94ecQo5HG5mKgBNtGY8coY/mMV2RRrukZ9\nMSsA\r\n=TEUE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"e64279edeefc9467d5d3a7e623448720bf01c062","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublushOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"6.14.5","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"14.4.0","dependencies":{"ajv":"^6.10.2","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^1.7.3","serve-static":"^1.13.2","path-to-regexp":"^2.4.0","swagger-parser":"^6.0.5","swagger-ui-dist":"^3.20.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^5.2.0","express":"^4.16.4","standard":"^12.0.1","supertest":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.1.0_1593467197874_0.7602754509010774","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"@wesleytodd/openapi","version":"0.2.0","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.2.0","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"899f0f9e22c4535fb55c2c8686777f6a6006c51c","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.2.0.tgz","fileCount":14,"integrity":"sha512-VECZ/OHmrtpufeBfGt1E7T0qjv3+i3RKjrh16YlGWq1/skUyoMdBbwNbOM80Z84ctP5JVjhHoEC/sbi4n1/z8Q==","signatures":[{"sig":"MEUCIQD6VN0bOMc58uovqb6mQgpth2o3CfEwjoMslEQ/Jl8UTQIgMKGv2tvPWcbOjcvWiiJVoROEY6Iz+Cx+qfn4hnzJ8SI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46432},"main":"index.js","gitHead":"078c6462da19167e8e1c531a8722e626d4f87e21","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublishOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"9.8.1","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"18.17.1","dependencies":{"ajv":"^8.12.0","yaml":"^2.3.1","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","http-errors":"^2.0.0","serve-static":"^1.13.2","path-to-regexp":"^6.2.1","swagger-parser":"^10.0.3","swagger-ui-dist":"^5.4.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^10.2.0","express":"^4.18.2","standard":"^17.1.0","supertest":"^6.3.3"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.2.0_1692982773233_0.5546350554681279","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"@wesleytodd/openapi","version":"0.3.0","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@0.3.0","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"0ec81e7e255cd8aed4b089f376e3222a928dd78e","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-0.3.0.tgz","fileCount":14,"integrity":"sha512-7vjiRFY4yW5aYTZzH4EINYpoClBZTahXWGbpaIl6SsL2XcikuvkgoHCA3t/Hu+3QibBT49W3BPXW3Bl8tr7Ddg==","signatures":[{"sig":"MEQCIGYlN8YR1R7vmk7nQYj1hXqSnoUl2WOAPsD8XS7EVY3NAiAgTEo6J1gpnz4vZLqF5JZ5QuZMAs1VJVWK22nkXXnwmA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52677},"main":"index.js","gitHead":"c0ff4ef74f0c7bfc9c7c888b908da3075e2eedfc","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublishOnly":"npm t"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"9.8.1","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"18.17.1","dependencies":{"ajv":"^8.12.0","yaml":"^2.3.1","redoc":"^2.0.0-alpha.41","router":"^1.3.3","merge-deep":"^3.0.2","ajv-formats":"^2.1.1","http-errors":"^2.0.0","serve-static":"^1.13.2","path-to-regexp":"^6.2.1","swagger-parser":"^10.0.3","swagger-ui-dist":"^5.4.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^10.2.0","express":"^4.18.2","standard":"^17.1.0","supertest":"^6.3.3"},"_npmOperationalInternal":{"tmp":"tmp/openapi_0.3.0_1698764972558_0.5675393057031184","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@wesleytodd/openapi","version":"1.0.0","keywords":["express","openapi","swagger","documentation"],"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","_id":"@wesleytodd/openapi@1.0.0","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"homepage":"https://github.com/wesleytodd/express-openapi#readme","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"dist":{"shasum":"c446c9e4905d50fe12f14cd0323e04edf38b5d62","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-1.0.0.tgz","fileCount":16,"integrity":"sha512-kniJgewzDlKk3aNo4tF/oezuzD5vRvJaEh17Qi8YTmAsOFCCFSqMsYCm141sZQLzt2V3tDmnpo6dXvDrp9WSJg==","signatures":[{"sig":"MEUCIQCLCrUasXYq0I7CVDTkUtkfjCU+xM9ncQD8DQPH91ZvhQIgbB76yFM+SogM3nZOfW1sgny+igIZFrTY2El8HR79z1Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54738},"main":"index.js","gitHead":"a55f50f71fed8f9f60e68a9c2c870a1e504043f0","scripts":{"test":"standard && mocha","postpublish":"git push origin && git push origin --tags","prepublishOnly":"EXPRESS_MAJOR=4 mocha && EXPRESS_MAJOR=5 mocha"},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"repository":{"url":"git+https://github.com/wesleytodd/express-openapi.git","type":"git"},"_npmVersion":"10.2.5","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","directories":{},"_nodeVersion":"20.10.0","dependencies":{"ajv":"^8.12.0","yaml":"^2.4.0","router":"^1.3.8","merge-deep":"^3.0.3","ajv-formats":"^2.1.1","http-errors":"^2.0.0","serve-static":"^1.15.0","path-to-regexp":"^6.2.1","swagger-parser":"^10.0.3","swagger-ui-dist":"^5.11.8"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^10.3.0","express":"^4.18.2","express4":"github:expressjs/express#4.18.3-staging","express5":"npm:express@^5.0.0-beta.1","standard":"^17.1.0","supertest":"^6.3.4"},"_npmOperationalInternal":{"tmp":"tmp/openapi_1.0.0_1709133582175_0.2564866668976933","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@wesleytodd/openapi","version":"1.1.0","description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"keywords":["express","openapi","swagger","documentation"],"license":"ISC","main":"index.js","repository":{"type":"git","url":"git+https://github.com/wesleytodd/express-openapi.git"},"scripts":{"test":"standard && mocha","prepublishOnly":"EXPRESS_MAJOR=4 mocha && EXPRESS_MAJOR=5 mocha","postpublish":"git push origin && git push origin --tags"},"devDependencies":{"express":"^4.18.2","express4":"github:expressjs/express#4.19.2","express5":"npm:express@^5.0.0-beta.3","mocha":"^10.3.0","standard":"^17.1.0","supertest":"^6.3.4"},"dependencies":{"ajv":"^8.12.0","ajv-formats":"^2.1.1","ajv-keywords":"^5.1.0","http-errors":"^2.0.0","merge-deep":"^3.0.3","path-to-regexp":"^6.2.1","router":"^1.3.8","serve-static":"^1.15.0","swagger-parser":"^10.0.3","swagger-ui-dist":"^5.11.8","yaml":"^2.4.0"},"_id":"@wesleytodd/openapi@1.1.0","gitHead":"e3b4d2f3c9f827c5027faf1cd4fd23d8810878da","bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"homepage":"https://github.com/wesleytodd/express-openapi#readme","_nodeVersion":"22.2.0","_npmVersion":"10.7.0","dist":{"integrity":"sha512-lklG2WR31FLIBz77SlBkWLe2FP1e2eGHoRnWYeOonDk7rdX5QWgXIiOl07ryTV0jD4OkIgyJUgss9YiGyvzG8g==","shasum":"5c5c60f4f86654e5809dc7db89929a989ea34551","tarball":"https://registry.npmjs.org/@wesleytodd/openapi/-/openapi-1.1.0.tgz","fileCount":16,"unpackedSize":58367,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3Sn6HpojbaSbst0J1NV+hBO4GcMbPk2xq8KTB0Gc58AIhALfalDRZK7za2szE/FJERk96Mej6exHZUGMv4aX7tXbN"}]},"_npmUser":{"name":"wesleytodd","email":"wes@wesleytodd.com"},"directories":{},"maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/openapi_1.1.0_1721082629662_0.2972460682796725"},"_hasShrinkwrap":false}},"time":{"created":"2018-12-17T18:23:33.703Z","modified":"2024-07-15T22:30:30.064Z","0.0.0":"2018-12-17T18:23:33.998Z","0.0.1":"2019-09-01T17:57:38.035Z","0.0.2":"2019-09-02T21:50:49.366Z","0.0.3":"2019-09-02T22:20:23.918Z","0.0.4":"2019-09-02T23:15:59.991Z","0.0.5":"2019-09-05T04:20:22.056Z","0.0.6":"2019-09-09T21:43:02.062Z","0.0.7":"2019-09-10T01:48:50.784Z","0.0.8":"2019-09-18T02:23:29.266Z","0.1.0":"2020-06-29T21:46:37.976Z","0.2.0":"2023-08-25T16:59:33.484Z","0.3.0":"2023-10-31T15:09:32.793Z","1.0.0":"2024-02-28T15:19:42.392Z","1.1.0":"2024-07-15T22:30:29.899Z"},"bugs":{"url":"https://github.com/wesleytodd/express-openapi/issues"},"author":{"name":"Wes Todd","email":"wes@wesleytodd.com"},"license":"ISC","homepage":"https://github.com/wesleytodd/express-openapi#readme","keywords":["express","openapi","swagger","documentation"],"repository":{"type":"git","url":"git+https://github.com/wesleytodd/express-openapi.git"},"description":"Middleware for generating OpenAPI/Swagger documentation for your Express app","maintainers":[{"name":"wesleytodd","email":"wes@wesleytodd.com"}],"readme":"# Express OpenAPI\n\n[![NPM Version](https://badgen.net/npm/v/@wesleytodd/openapi)](https://npmjs.org/package/@wesleytodd/openapi)\n[![NPM Downloads](https://badgen.net/npm/dm/@wesleytodd/openapi)](https://npmjs.org/package/@wesleytodd/openapi)\n[![js-standard-style](https://badgen.net/badge/style/standard/green)](https://github.com/standard/standard)\n\nA middleware for generating and validating OpenAPI documentation from an Express app.\n\nThis middleware will look at the routes defined in your app and fill in as much as it can about them\ninto an OpenAPI document.  Optionally you can also flesh out request and response schemas, parameters, and\nother parts of your api spec with path specific middleware.  The final document will be exposed as json\nserved by the main middleware (along with component specific documents).\n\n## Philosophy\n\nIt is common in the OpenAPI community to talk about generating code from documentation. There is value\nin this approach, as often it is easier for devs to let someone else make the implementation decisions\nfor them.  For me, I feel the opposite.  I am an engineer whose job it is to make good decisions about\nwriting quality code. I want control of my application, and I want to write code. With this module I can\nboth write great code, as well as have great documentation!\n\n\n## Installation\n\n```\n$ npm install --save @wesleytodd/openapi\n```\n\n## Usage\n\n```javascript\nconst openapi = require('@wesleytodd/openapi')\nconst app = require('express')()\n\nconst oapi = openapi({\n  openapi: '3.0.0',\n  info: {\n    title: 'Express Application',\n    description: 'Generated docs from an Express api',\n    version: '1.0.0',\n  }\n})\n\n// This will serve the generated json document(s)\n// (as well as the swagger-ui if configured)\napp.use(oapi)\n\n// To add path specific schema you can use the .path middleware\napp.get('/', oapi.path({\n  responses: {\n    200: {\n      description: 'Successful response',\n      content: {\n        'application/json': {\n          schema: {\n            type: 'object',\n            properties: {\n              hello: { type: 'string' }\n            }\n          }\n        }\n      }\n    }\n  }\n}), (req, res) => {\n  res.json({\n    hello: 'world'\n  })\n})\n\napp.listen(8080)\n```\n\nIn the above example you can see the output of the OpenAPI spec by requesting `/openapi.json`.\n\n```shell\n$ curl -s http://localhost:8080/openapi.json | jq .\n{\n  \"openapi\": \"3.0.0\",\n  \"info\": {\n    \"title\": \"Express Application\",\n    \"version\": \"1.0.0\",\n    \"description\": \"Generated docs from an Express api\"\n  },\n  \"paths\": {\n    \"/\": {\n      \"get\": {\n        \"responses\": {\n          \"200\": {\n            \"description\": \"Successful response\",\n            \"content\": {\n              \"application/json\": {\n                \"schema\": {\n                  \"type\": \"object\",\n                  \"properties\": {\n                    \"hello\": {\n                      \"type\": \"string\"\n                    }\n                  }\n                }\n              }\n            }\n          }\n        }\n      }\n    }\n  }\n}\n```\n\n## Api Docs\n\n### `openapi([route [, document[, options]]])`\n\nCreates an instance of the documentation middleware.  The function that is returned\nis a middleware function decorated with helper methods for setting up the api documentation.\n\nOptions:\n\n- `route <string>`: A route for which the documentation will be served at\n- `document <object>`: Base document on top of which the paths will be added\n- `options <object>`: Options object\n  - `options.coerce`: Enable data type [`coercion`](https://www.npmjs.com/package/ajv#coercing-data-types)\n  - `options.htmlui`: Turn on serving `swagger-ui` html ui\n  - `options.basePath`: When set, will strip the value of `basePath` from the start of every path.\n\n##### Coerce\n\nBy default `coerceTypes` is set to `true` for AJV, but a copy of the `req` data\nis passed to prevent modifying the `req` in an unexpected way.  This is because\nthe `coerceTypes` option in (AJV modifies the input)[https://github.com/epoberezkin/ajv/issues/549].\nIf this is the behavior you want, you can pass `true` for this and a copy will not be made.\nThis will result in params in the path or query with type `number` will be converted\nto numbers [based on the rules from AJV](https://github.com/epoberezkin/ajv/blob/master/COERCION.md).\n\n### `OpenApiMiddleware.path([definition])`\n\nRegisters a path with the OpenAPI document.  The path `definition` is an\n[`OperationObject`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#operationObject)\nwith all of the information about the requests and responses on that route. It returns\na middleware function which can be used in an express app.\n\n**Example:**\n\n```javascript\napp.get('/:foo', oapi.path({\n  description: 'Get a foo',\n  responses: {\n    200: {\n      content: {\n        'application/json': {\n          schema: {\n            type: 'object',\n            properties: {\n              foo: { type: 'string' }\n            }\n          }\n        }\n      }\n    }\n  }\n}), (req, res) => {\n  res.json({\n    foo: req.params.foo\n  })\n})\n```\n\n### `OpenApiMiddleware.validPath([definition [, pathOpts]])`\n\nRegisters a path with the OpenAPI document, also ensures incoming requests are valid against the schema.  The path\n`definition` is an [`OperationObject`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#operationObject)\nwith all of the information about the requests and responses on that route. It returns a middleware function which\ncan be used in an express app and will call `next(err) if the incoming request is invalid.\n\nThe error is created with (`http-errors`)[https://www.npmjs.com/package/http-errors], and then is augmented with\ninformation about the schema and validation errors.  Validation uses (`avj`)[https://www.npmjs.com/package/ajv],\nand `err.validationErrors` is the format exposed by that package. Pass { keywords: [] } as pathOpts to support custom validation based on [ajv-keywords](https://www.npmjs.com/package/ajv-keywords).\n\n**Example:**\n\n```javascript\napp.get('/:foo', oapi.validPath({\n  description: 'Get a foo',\n  responses: {\n    200: {\n      content: {\n        'application/json': {\n          schema: {\n            type: 'object',\n            properties: {\n              foo: { type: 'string' }\n            }\n          }\n        }\n      }\n    },\n    400: {\n      content: {\n        'application/json': {\n          schema: {\n            type: 'object',\n            properties: {\n              error: { type: 'string' }\n            }\n          }\n        }\n      }\n    }\n  }\n}), (err, req, res, next) => {\n  res.status(err.status).json({\n    error: err.message,\n    validation: err.validationErrors,\n    schema: err.validationSchema\n  })\n})\n\napp.get('/zoom', oapi.validPath({\n  ...\n  requestBody: {\n    required: true,\n    content: {\n      'application/json': {\n        schema: {\n          type: 'object',\n          properties: {\n            name: { type: 'string', not: { regexp: '/^[A-Z]/' } }\n          }\n        }\n      }\n    }\n  },\n  ...\n}, { keywords: ['regexp'] }), (err, req, res, next) => {\n  res.status(err.status).json({\n    error: err.message,\n    validation: err.validationErrors,\n    schema: err.validationSchema\n  })\n})\n```\n\n### `OpenApiMiddleware.component(type[, name[, definition]])`\n\nDefines a new [`Component`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#components-object)\non the document.\n\n**Example:**\n\n```javascript\noapi.component('examples', 'FooExample', {\n  summary: 'An example of foo',\n  value: 'bar'\n})\n```\n\nIf neither `definition` nor `name` are passed, the function will return the full `components` json.\n\n**Example:**\n\n```javascript\noapi.component('examples', FooExample)\n// { '$ref': '#/components/examples/FooExample' }\n```\n\nIf `name` is defined but `definition` is not, it will return a\n[`Reference Object`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#referenceObject)\npointing to the component by that name.\n\n**Example:**\n\n```javascript\noapi.component('examples')\n// { summary: 'An example of foo', value: 'bar' }\n```\n\n#### `OpenApiMiddleware.schema(name[, definition])`\n#### `OpenApiMiddleware.response(name[, definition])`\n#### `OpenApiMiddleware.parameters(name[, definition])`\n#### `OpenApiMiddleware.examples(name[, definition])`\n#### `OpenApiMiddleware.requestBodies(name[, definition])`\n#### `OpenApiMiddleware.headers(name[, definition])`\n#### `OpenApiMiddleware.securitySchemes(name[, definition])`\n#### `OpenApiMiddleware.links(name[, definition])`\n#### `OpenApiMiddleware.callbacks(name[, definition])`\n\nThere are special component middleware for all of the types of component defined in the\n[OpenAPI spec](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#fixed-fields-6).\nEach of which is just the `component` method with a bound type, and behave with the same variadic behavior.\n\n### `OpenApiMiddleware.swaggerui()`\n\nServe an interactive UI for exploring the OpenAPI document.\n\n[SwaggerUI](https://www.npmjs.com/package/swagger-ui) is one of the most popular tools for viewing OpenAPI documents and are bundled with the middleware.\nThe UI is not turned on by default but can be with the option mentioned above or by using one\nof these middleware. Both interactive UIs also accept an optional object as a function argument which accepts configuration parameters for Swagger and Redoc. The full list of Swagger and Redoc configuration options can be found here: https://swagger.io/docs/open-source-tools/swagger-ui/usage/configuration/ and here: https://redocly.com/docs/redoc/config/ respectively.\n\n**Example:**\n\n```javascript\napp.use('/swaggerui', oapi.swaggerui())\n```\n","readmeFilename":"README.md"}