{"_id":"@brainhubeu/hadron-express","_rev":"29-2dd685a2c0cc646c0069f59dc40e0aec","name":"@brainhubeu/hadron-express","dist-tags":{"latest":"2.0.0"},"versions":{"0.0.2":{"name":"@brainhubeu/hadron-express","version":"0.0.2","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@0.0.2","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"95f75fcfcdee176dac5738375ecabd657f2b2f11","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-0.0.2.tgz","fileCount":31,"integrity":"sha512-ZBoSqjAgOxVSBlN6nYYvVWQysEXjor8FZiWQp778AsWVXRzb/nW5x/z30Z7HXGsEvmOXWmribLjoLrx+op863Q==","signatures":[{"sig":"MEUCIQDz7CjHzQr3Zb3wPkvwptV0R/FX3iUPa1i396sgInR/1gIgDfhIEW6kb4g3NZGZSuJBHd89kDgsjLNd554nmZqclXY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":31898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8Cl3CRA9TVsSAnZWagAAvBQP/jfG8rU6pCqdl6N1U9gQ\nhhFrSweN1ne9ldMDd+W9eQOv/XEoJenvsOtWuCdfDcGn5oV0tDkDgFErc1eX\nMJEdStLWjOUv5BHZoMmVTB75EXOzxux3PHZOhlC00lDtthQRE5+d0c9QZifz\ndhKCGj6dVuG/Nf17hN1J9Yx/wrTrES9i8r349XLJefeSdZqtaFj2oJKylqWm\nC4MAg4VCxXXd8pVONCwqcowd4HCdDJo55qBL6J1VgpqfLOhGvPXA3wqa7gYO\nmKPmUhzUqu7YWDXOgj1LW3G+jGJe0IT//oSpf67eA5fdjOQ5VGF0bocWa3I8\n+SPffS5wWLimT01uzkT57EeHJMXz8g+c18cBvl9lcdNWByxvgelkbhWJiit2\nRBGnf7KspZ+YGvI2hX8LQu+fluylRyKBjjqxjjPHLOdn72mEZEQqi/xb76ee\n8RfW/h2x/LMIAwMqw+0jHcOPyxepeG2o23BVirky2h16B5azoAGoQRPhmRTe\n9MfNRe+yLYDYSULdxx/JCiD9K9Jo800jrWH7FXZ5wrBUXPtOvK0IosiVFeg5\nZhAmr4Zg5qxYjGwDevuvJDZmMvSRPzEb+VtlaATKZWgX2q/PGXbLaU1uBepJ\nU9awq7AILdPEah9SngZ01Cw9dMmWKY2OehAMmVXWgr7cwZGp4+N1xwaKz/Bl\ni/me\r\n=dA2v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","files":["dist","LICENSE"],"scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","@brainhubeu/hadron-core":"^0.0.2","@brainhubeu/hadron-events":"^0.0.2","@brainhubeu/hadron-error-handler":"^0.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","http-status":"1.0.1","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_0.0.2_1525688694943_0.993129563187233","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@brainhubeu/hadron-express","version":"1.0.0","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@1.0.0","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"e4515a66fcb2a27d5f0a0ca194b96c21a9cbbf8e","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-1.0.0.tgz","fileCount":31,"integrity":"sha512-9PIOPeKJONOst1jxUi/wl6ht52xqm3bVBybkTRHjodOFuEhSt2tcR+GrkQwHGbqBIVBcx3c9FEJxydpg+dqE8g==","signatures":[{"sig":"MEQCIA0H2WCw/FZBESZ+URjDeGSYA9L53aa+0eXFr4WFcoCCAiApaFSKLKSVW0T6uom1u3r+IBcBcsAZN+36PIFPOoa9Ow==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFXWLCRA9TVsSAnZWagAA0GUQAJ+4VqILumWYtIZoUa39\nW7TtfsrGLzx6hQ1Mc9y9u3/bkl913Id/QWpq1plFMyh7San57py4Greul6vg\nGvxCJZQJnIO5gwAV6QNjMvaFocK1fqj1DUzDfVTdIGcfx1NgdpDWH17v3F6V\nhSK88ypR1m5gIEytrKXLjL8x1dREQULsTGJpfKjw9IKG8kM//i3s2rI6LFVC\nf66hfUk6H1/S+IqJPToeM1bgQkgaWvOHsjCj+vlE8x0taBxZmhMWOdd3xqHR\nwgR9KpDlo71DmpAWS7tubyyPzpR4qgCQmJRxrPgZ3f1drDpfnyXaVJm65VEd\n0xZOTm3DWqLfoEZ+LRscp+nAN6d00E7VBEw8epGqxZt/ol0TNh9vm35oiAHl\noc4Y6vVILiWWbTulHnNBrezel5RifJtOOy6/hlOpC3L3tK69HQ8dsy5x6w3h\n8TftwVJCIlwgYNgtd134HP6GOX8qKUJPQ86L1Y+G3KnCO+d+/MBbC49Ey3Gs\na32WRv2mX65HIBpsjDmBF3I7xlHvEzrhTl66vmR7as2rJFERA9QMoJeaHsw2\n5Wi9NzVDvGTRU01qxE3vEeA/sV94txhR6dRdS/HVwqRR3BF+GGdw5+U5F0G/\nHOJ7XnuJUFDhEScxK0+x6YsP2m8T2WrRHdnE2nro249AAisaxI7j89nZX9Cp\nhVxG\r\n=r3Qx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","files":["dist","LICENSE"],"scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","http-status":"1.1.0","@brainhubeu/hadron-core":"^1.0.0","@brainhubeu/hadron-utils":"^1.0.0","@brainhubeu/hadron-events":"^1.0.0","@brainhubeu/hadron-error-handler":"^1.0.0","@brainhubeu/hadron-json-provider":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_1.0.0_1528133001873_0.668323110402822","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@brainhubeu/hadron-express","version":"1.0.1","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@1.0.1","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"7012f63acaf99d7824c45c616f99da11f81a86dd","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-1.0.1.tgz","fileCount":31,"integrity":"sha512-cYdkPM70gVW5+noZKjsJ9wtRzjf+3mTSckNsCNRzlL9vW+Dcvm80qwH1irwkvtC/H9iZoWY+w5xi9oAe8/bOQQ==","signatures":[{"sig":"MEQCIDeC2BpCeUBb6VE6R98zY89rFxYEHJij6xvDQwp5Av3eAiBegqslOJuY0UE9PkQuFYohC0337LMAg4/pUW+4VouE2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40920,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbHpi0CRA9TVsSAnZWagAAprEP/3lzu6j6X6YtIT3UWBS5\nWd9rxb+JrB6LIV6gfR9rhztoKY69m98wo98gtb3D57GSCn+bL5bjAxOZ7SpK\ngrk7rxo1+MCjfpBED0D0ZB96LQFZvjU3y+zOU5ByQ+qSXjc2CHru2GW2JWaQ\nmY22DIv0So/KpcA5oPfVlInIkGPASY5rq0Vuqa86piR4z8+Yup+zagbhvlbj\nzdwj90VrnA8frfx55WeWWz9TzuWOe0nYJpo2KCnLytUwMRKrmCat4cPDRmeX\nEYl6mxVtKvwZucPox9fVbhSSQtj0xvssOKrW1AeBJ4Wy8zqw/PzTMdzd1X1n\n55WEU6Uk3C2h13x6sLz9URGBJ2oNbC0SUYV21P0d2TowxyYQj4OpytTkkHZR\n0gjhKviSc7qXqY19piqyB3AMqlHvqPMZlndHPU2SKxovN6J+6RwqKpZTUkOh\nhpaNGMvpTkkyIWoxwVXF3SVjO1Eig2kN0jTkzsINAfErgoMQmMP0V5RQyfvI\nHfTjGsLv1pfTRiTJQ5a2c5t91hJsLPRLUvGK3hkiuFxVvl/+S3yYDEbvMArn\nWrnZY46jlBlet6IpWAtZLaAUzrb+jVO9MzWfOX26cYeVZMzMlKpvhUnygdWy\n4B1XrCntNUjmE+Wthc1RsdqxYGuwYeR1qUCN5bsa2lIDJN1zKkXr5FZe/xAJ\nB3Vt\r\n=iI4L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","files":["dist","LICENSE"],"scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","http-status":"1.1.0","@brainhubeu/hadron-core":"^1.0.0","@brainhubeu/hadron-utils":"^1.0.0","@brainhubeu/hadron-events":"^1.0.1","@brainhubeu/hadron-error-handler":"^1.0.0","@brainhubeu/hadron-json-provider":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_1.0.1_1528731827339_0.3881160236735346","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@brainhubeu/hadron-express","version":"1.0.2","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@1.0.2","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"5eab871e4569587fc47436b77879335a15581c9b","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-1.0.2.tgz","fileCount":31,"integrity":"sha512-yePDEjVJPms4jbARY7Xe9TJB8aQrDYfYR2lqj/CHoZwzh2kiyV0+0g+OQFP8VrVBuBnc3Q0WJkuxdFA3qPoBqA==","signatures":[{"sig":"MEQCIBjSTU/J9TQkFviS0ZylxplOx1nwoVQzC+z3QOAn3SKfAiBTveTkWhcnNVBe++7yPUGhFgUIqhPLolcdL7TzqcT+5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40888,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbLKHeCRA9TVsSAnZWagAA6l8QAIcYZUpMxNHLHUT7Sw7v\n/T5jQNHYG26h44o6tZ+Yeb6upzngSwj8HtrKxHdmigdVgVDqL7wylyteDjDM\nzGodLfiJqw140+2mMyMwuRXx23nULyjkKUQRpNeu4hko9r5RzEPi3BvCLf2Q\nlr4xx3HqwM13bbB8j+B1l70q3QAgvYnPZlttL8u9nTc1rbvmzi1Yxt9PU2LP\n/kVCnNJvo5PeyXR5RaMHPWje6zQs8ALBvCRY4PZvITwOQKDk4A9Cp1zJvtxO\nQIjNvx1TqZKVZQGg858p9b6Rp/+nxxpdWIvahp802IuW0hFergM/bJpQxZNF\nN95SzAOq5gRIIQLw0pTrTo2WXpUsXnyuNzRb3D9tCRdNxqRoXoZ8yv6H5XIR\n3xCkY3/xPWS0HnpahS1RSo4N7g8ZWkT089oHZX/SCEPJM+7foA8Ulbf/4nxy\nBMWcXusP5DA1befXqwkYu/ZYN4GEO05iKOuBWZzS/KtwxZHWdzcCR9S2DIfV\nqBmM4V5Yc2bCjOKAqLi/1nQ3j0MrYy6wGsbeNURCSDUmethcVb4/xHphalgm\nJeelQwd7uBzJYSQhoGgHy8q/4U2nuelEq/zNnczoVO+lR3YRJcCGk5JFC0P3\nv/h0bck1j82vnOcJ5Fi5OZ1HZfin7b+NMUx+NHKhw4mEQmw+veCYXfDDa/Vt\npdqd\r\n=wsq1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","files":["dist","LICENSE"],"scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","http-status":"1.1.0","@brainhubeu/hadron-core":"^1.0.0","@brainhubeu/hadron-utils":"^1.0.0","@brainhubeu/hadron-events":"^1.0.1","@brainhubeu/hadron-error-handler":"^1.0.0","@brainhubeu/hadron-json-provider":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_1.0.2_1529651678547_0.5659131905828609","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@brainhubeu/hadron-express","version":"1.0.3","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@1.0.3","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"szulcd2","email":"szulcd2@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"2afbd749583a12042aa713f5b9f68f0bfbdb9eac","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-1.0.3.tgz","fileCount":31,"integrity":"sha512-USrS4ezuQUkIQsppZMbNN4RxoG4uXgp6jYATPqt87WU4MJJGPbxTQ9A7OGnrfpYeSWiQq46JoJDSAepp2BSDmw==","signatures":[{"sig":"MEQCIFMPni2mVGBIyGh2am+gNwWGCImn+xyJFcWltTlezcZ3AiAppixMu7Xvw9Kk54LHB5+vxuDbLeEkCtqrZzU9eFAFqQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbR3fPCRA9TVsSAnZWagAAcREQAJdhpaQnkfOmoY9UL0fn\ngF967MhLrcIzaPZhZL28R0N9wIOHy3W7L+J5ycjLGa5NqvI+ictKwrCw8Qjl\naqcsNbgPzd6H+T/btyfv+WxbleY4qbHmItsoFgFqIkoyrwN0WwCRU2M2y43f\nGtcCoPegH14yUYaAbL/mAmZ2Y/sfI/4TxEf6fEq2veWtAQnebkVxC8Lage7U\nXOyGNbWjlNMcYh1KA1nbDwr8hft6qE1i0EQl96onDJ++73zTBxb8ZxotQXeT\n/L6J3R+BP7rv7/BvR+EA3p60mrOLBSzO4rZ+KIp9N+XeUXjzHI0vrO53o7SE\ngY6pSE/d23OWvSt4/sppps0qXROmRyuuyJ1JhGf6M+JZNLPGDd9O3AFwY7qa\nvlsoVDHTReM59s02bD2mjcmVuTsaSCtHaaYcTzmNPufe3qwJIlZIJnCxGOzH\nqsJ4ww6IV7ThY7p8gq+CGgE2p5XKicliFcPzlS8Lb87mkhyDG2fzKwrJcf0Q\n9SRds9NFlKOLieYqeqhnI0J6kophrjUX6VpfnGKaylPDCYNSl+PuaYM4rEQL\nMaWAX/a3h/FTv9x3BZp3GB6rCkpvlgXxkeAK6GEMyTwx4pk+bpqAkM1TGUv2\n+PD6I9nfUPhR0IyU7MFkwVDkBOyojWQofbUQvaXiqcBA2ai/UJh0Zvv/T3Wd\nFpIP\r\n=IcNA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","files":["dist","LICENSE"],"scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","http-status":"1.1.0","@brainhubeu/hadron-core":"^1.0.0","@brainhubeu/hadron-utils":"^1.0.0","@brainhubeu/hadron-events":"^1.0.1","@brainhubeu/hadron-error-handler":"^1.0.0","@brainhubeu/hadron-json-provider":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_1.0.3_1531410383379_0.6060694671560227","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"@brainhubeu/hadron-express","version":"1.0.4","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@1.0.4","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"brainhubeu-ci","email":"dev@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"kkoscielniak","email":"krystiankoscielniak@gmail.com"},{"name":"piotr-s-brainhub","email":"piotr.sroczkowski@brainhub.pl"},{"name":"szulcd2","email":"szulcd2@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"fd7a150d284a37e1dda51803f23b0372d1956595","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-1.0.4.tgz","fileCount":31,"integrity":"sha512-GuoP5x/l49kR73hLZbjGpyclCggq/d0lnOtQZkAW5wNd3fgR3ttsg5GmFD6y9NnwF0Y/DXqEhc2oyK6EQ1hM9A==","signatures":[{"sig":"MEUCIBvcjATU+tGSubb5Inokwn7aJ9PIslc6oCILePJAS6eQAiEAkvzk5EmrhgMkGtuWZUumPc897f1qrbcO4gz7zSOMBOM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrOnvCRA9TVsSAnZWagAAvFAP/2QP/TboUiX/sUMPhKiH\nFTcUint9l+f9Vi19odALqtIFoib7MAWfYqyt7/mdrrEVWSLrS4cEvjWj2jKx\nzDRzSM6zTsHopEvdY1Oi+P5EIYz2x7UYFMzQ1POQ1dsczec16gOnZUc6/Raw\nb5ZmYWU7gWrXLOXzIkh5PQvAKwL4d1uPDxnuoFmWjsdsOXT2CJM+K7DlwIo3\nAuQJ8mniM7BEZv8jZUXF4/sBDOREU018O+TITIZDcNYzdEJIYNW6NhGjwfWk\nSoi/xT/ewGSXbRIyNL3iO8R8f6EdfFFd0i5QNHW0cxirRMc/0zFs40GjciPx\nmEmW1YSzY4pww/a55vHby4aGNR/Zy2QTm+WBzzq1RNbjik48+KKp62DP74IL\nkD8JPfsoQXUg5mtQAgxWCBffz+ftPT7fa/KCZyVevqBz7snoU585UBex8pgx\nHTuGHxh0+Fy3udbDJySb9X4cSGjlK4BsSDhnJyqjpxS9IgDnvMim2gkqZGNq\n62TWzhUbAhejk3Q35kuM+bmYqrsTHXR1rglxtXFjE0Asseg96cEtjmYN4V4F\nq75uD0jr2KRLPjfWt/GFUKz3X1SqcCzxxLY8DEEDalYvfuUrcBuFcK5OczzM\nY6RWUAPUneDSkVXaG8xYt6jgj+7ZDlTtFg6rOVH2XIJD3T3g/uCTO16X6cxi\n06H1\r\n=DsNd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","http-status":"1.1.0","@brainhubeu/hadron-core":"^1.0.0","@brainhubeu/hadron-utils":"^1.0.0","@brainhubeu/hadron-events":"^1.0.1","@brainhubeu/hadron-error-handler":"^1.0.0","@brainhubeu/hadron-json-provider":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_1.0.4_1538058735386_0.6455788347841334","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@brainhubeu/hadron-express","version":"2.0.0","keywords":["hadron","hadron-express"],"author":{"name":"Brainhub"},"license":"MIT","_id":"@brainhubeu/hadron-express@2.0.0","maintainers":[{"name":"brainhub-adam","email":"adam@brainhub.pl"},{"name":"brainhubeu-ci","email":"dev@brainhub.pl"},{"name":"caderek","email":"maciej.caderek@gmail.com"},{"name":"drymek","email":"marcin@dryka.pl"},{"name":"dyoda","email":"lukasz.pluszczewski@gmail.com"},{"name":"kkoscielniak","email":"krystiankoscielniak@gmail.com"},{"name":"piotr-s-brainhub","email":"piotr.sroczkowski@brainhub.pl"},{"name":"szulcd2","email":"szulcd2@gmail.com"},{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"}],"dist":{"shasum":"3fcd2ddce72e9f221fb19a821386e4f23e162a05","tarball":"https://registry.npmjs.org/@brainhubeu/hadron-express/-/hadron-express-2.0.0.tgz","fileCount":33,"integrity":"sha512-nndRx+Xpl7pMBG1BDtmPl6pPfKZMzweyzHwZPWY6HEE7xbKS4CKENNkcjkS9oJOqFvQwBmCJwQfphO0vQxYXKA==","signatures":[{"sig":"MEQCIFGDuSGPzpzX2+ryYXIZ6/9EYT/y/nxC3RBOAtwQlDwuAiBig8vV7VqQwwTUqNZOD/RxCKlGV03YGr3COhQMm1IdOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53619,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcVI3ZCRA9TVsSAnZWagAAu/UP/RU9/9CsXmUJbVbT54s2\n0WeJciy+9A6a1cmX1g6ejo0VRCU4iKRcjq5K/BITFPaTmuhc5WTOIwGSJ9/0\nGgmNILJannp6sQcX1672rKuFvhI9wA6RsiRhaEuhxh26IH/5jZYrgm06IjRN\nX+7lDWbwHMOeF2t70Wm1mtt13+uj/z6/zfoM+YbBA3WkHe4FnGEdLS00/XCz\n21gYDAK21YWIK2WHYPXqCBQuy+7cKgKSsMPHabar69SN92qcq3f0Fh5d+7tz\nhB+x0DiYvZPvhyg+JvEe7CC8Wjv+YpBWgaDT1rRZMygI9lG0iUe8yBusV5bf\nwo/0H1tGwJEDzUeoKQ6nzRPEbpYa1aSy2PVMutciY005zhF7vgAkypQZ3QaH\nXd11kfJmtIDVidIwUJO8pDG53B6z5g6MGrOZCakbTrmJ4nHS96CAP2OjrF1M\n+G703JNbtV8LIg+s2kylrT/0UudRHqo/Rycj7AOIARprRC8DMFLlAitSeLkF\nk0cOi8THeQi+gm1ooMqly4BHZqRwq2I+/E+GKdgB/wpvuM428OabkraeStd7\nPZbNtpXTt0PwstOcSWgOxOe40vqfW/WythVdh6SkZtgBbgSo3qdQqyqRl09w\nJIaKoyzsgzfZCu83i5xz2WrgSdTzm7BT+1KhWIgWz9TosgjYI9and9+wEr6T\n5FNE\r\n=xluV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","prepare":"tsc"},"_npmUser":{"name":"szymon.morawski","email":"szymon.morawski@brainhub.pl"},"_npmVersion":"5.5.1","description":"Hadron module implementing express elements","directories":{"test":"tests"},"_nodeVersion":"8.6.0","dependencies":{"express":"4.16.2","http-status":"1.1.0","@brainhubeu/hadron-core":"^1.0.0","@brainhubeu/hadron-utils":"^1.0.0","@brainhubeu/hadron-events":"^1.0.1","@brainhubeu/hadron-error-handler":"^1.0.0","@brainhubeu/hadron-json-provider":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ramda":"0.25.0","multer":"1.3.0","supertest":"3.0.0","@types/ramda":"0.25.23","@types/multer":"1.3.6","@types/express":"4.11.1","@types/supertest":"2.0.4","@types/http-status":"0.2.30"},"_npmOperationalInternal":{"tmp":"tmp/hadron-express_2.0.0_1549045209119_0.8310065633402732","host":"s3://npm-registry-packages"}}},"time":{"created":"2018-05-07T10:24:54.892Z","modified":"2024-10-25T13:04:50.594Z","0.0.2":"2018-05-07T10:24:55.018Z","1.0.0":"2018-06-04T17:23:21.949Z","1.0.1":"2018-06-11T15:43:47.394Z","1.0.2":"2018-06-22T07:14:38.666Z","1.0.3":"2018-07-12T15:46:23.469Z","1.0.4":"2018-09-27T14:32:15.486Z","2.0.0":"2019-02-01T18:20:09.248Z"},"author":{"name":"Brainhub"},"license":"MIT","keywords":["hadron","hadron-express"],"description":"Hadron module implementing express elements","maintainers":[{"email":"angjeziorska@gmail.com","name":"angjez"},{"email":"mateusz.jarzebowski.bownik@gmail.com","name":"matt-jb"},{"email":"filip.kublin@brainhub.pl","name":"fkublin"},{"email":"cypherq@gmail.com","name":"benedyktdryl"},{"email":"dariusz.luber@gmail.com","name":"dluber"},{"email":"devops@brainhub.pl","name":"brainhubeu-devops"},{"email":"anna.lach@brainhub.pl","name":"annalach"},{"email":"szymon.morawski@brainhub.pl","name":"szymon.morawski"},{"email":"lukasz.pluszczewski@gmail.com","name":"dyoda"},{"email":"dev@brainhub.pl","name":"brainhubeu-ci"},{"email":"robert_hebel@icloud.com","name":"roberthebel"}],"readme":"## Installation\n\nINFO: Currently routing with hadron works only with the Express framework.\n\n```bash\nnpm install @brainhubeu/hadron-express --save\n```\n\n[More info about installation](/core/#installation)\n\n## Express integration\n\nWe need to include `hadron-express` package while initializing hadron.\n\n```javascript\nconst express = require('express');\nconst bodyParser = require('body-parser');\n\nconst port = process.env.PORT || 8080;\nconst expressApp = express();\n\nexpressApp.use(bodyParser.json());\n\nhadron(expressApp, [require('../hadron-express')], config).then((container) => {\n  expressApp.listen(port);\n});\n```\n\n## Basic routing setup\n\nTo set up routes with Hadron, we are able to include them as objects in config object under key `routes`.\n\n```javascript\nconst config = {\n  routes: {\n    helloWorldRoute: {\n      callback: () ='Hello world !',\n      methods: ['GET'],\n      path: '/',\n    },\n  },\n};\n```\n\nBasic, required structure of route config object includes:\n\n* `callback` - function called when request is made, returned value will be send as a response (except if you call `res` methods directly)\n* `methods` - array of [HTTP methods](https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods)\n* `path` - route path\n\n## Callback\n\nThe callback function can take route parameters as an arguments. Hadron also allows us to grab a container value easily.\n\n```javascript\nrouteWithParam: {\n  callback: (firstParam) => `firstParam value: ${firstParam}`,\n  methods: ['GET'],\n  path: '/:firstParam',\n}\n```\n\nUsing this simple example, if we send a request, for example `http://localhost/foobar` will provide a response as below:\n\n```json\n\"firstParam value: foobar\"\n```\n\n---\n\nWhen you would like to implement multiple route parameters, their order as arguments in callback does not matter, argument name needs only to match parameter name.\n\n```javascript\nmultipleParams: {\n  callback: (secondParam, firstParam) =`${firstParam} ${secondParam}`,\n  methods: ['GET'],\n  path: '/:firstParam/:secondParam',\n}\n```\n\nGET request with path: `http://localhost/Hello/World` will result with following response:\n\n```json\n\"Hello World\"\n```\n\n### Locals (available from 2.0.0)\n\nAs a third parameter, hadron delivers `locals` from your response. You can inject its content in middlewares, e.g.\n\n```javascript\nconst route = {\n  callback: (req, container, locals) => locals.testValue,\n  middlewares: [\n    (req, res, next) => {\n      res.locals.testValue = 'I am test!';\n      next();\n    },\n  ],\n};\n```\n\n## Retrieving items from container in callback\n\nCallback function provides a simple way to retrieve items from container with ease. Simply set item's key as callback function's argument. Let's see an example below:\n\n```javascript\nhadron(expressApp, [require('../hadron-express')], {\n  routes: {\n    routeWithContainerValue: {\n      // sayHello argument will refer to container value\n      callback: (sayHello = `hadron says: ${sayHello}`),\n      methods: ['GET'],\n      path: '/',\n    },\n  },\n}).then((container) => {\n  // Register value under key sayHello\n  container.register('sayHello', 'Hello World');\n});\n```\n\nAfter sending a request to the `/` path, the response will look like that:\n\n```json\n\"hadron says: Hello World\"\n```\n\n---\n\nHadron will first look for request parameters and next if not found any, it will look for value in the container. So if you register a key `foo` in a container and set the route param under the same name, it will inject param's value into callback's argument foo.\n\n```javascript\ncontainer.register('foo', 'container');\n```\n\n```javascript\nexampleRoute: {\n  callback: (foo) =`foo value: ${foo}`,\n  methods: ['GET'],\n  path: '/:foo',\n},\n```\n\nResponse for `GET` request _/param_ will look like this:\n\n```json\n\"foo value: param\"\n```\n\n## Middlewares\n\n_Note: Currently middlewares only refer to express._\n\nRouting with Hadron provides a middleware support. You need to pass array with middleware functions to a `middleware` key in route config.\nFor example:\n\n```javascript\nmiddlewareExample: {\n  callback: () => {\n    console.log('Callback function');\n  },\n  methods: ['GET'],\n  middleware: [\n    (req, res, next) => {\n      console.log(`First middleware`);\n      next();\n    },\n    (req, res, next) => {\n      console.log(`Second middleware`);\n      next();\n    },\n  ],\n  path: '/',\n},\n```\n\n`GET` request to `/` will log to the console following:\n\n```sh\nFirst middleware\nSecond middleware\nCallback function\n```\n\nMiddlewares take three arguments: `request`, `response` and `next`. First two are objects and third one - function which executed continues request flow.\n\nYou can read more about middlewares in [express guide](https://expressjs.com/en/guide/using-middleware.html)\n\n## Routes nesting (available from 2.0.0)\n\nIn case of more complicated routing, hadron-express offers possibility to nest routes. That way, You can specify bunch of route properties, that all child routes will inherit.\n\nRoute properties that can be inherited:\n\n* path (will add parent's path beforehand new path),\n* middlewares\n* methods,\n\n```javascript\nconst nestedRoute = {\n  middleware: [myTestMiddleware],\n  method: ['GET'],\n  path: '/test',\n  routes: {\n    route1: {\n      // path here is going to be /test/test1/, it's going to have 'GET' method on default and middleware myTestMiddleware will be called before\n      path: '/test1',\n      callback: () => 'It works! Trust me...',\n    },\n    route1: {\n      // path here is going to be /test/test2/, it's going to have 'GET' and 'POST' methods on default and middlewares myCustomMiddleware and myTestMiddleware will be called before\n      path: '/test2',\n      method: ['POST'],\n      middleware: [myCustomMiddleware],\n      callback: () => 'It works! Trust me...',\n    },\n  },\n};\n```\n\nIf You would like to override parent property, just define new one with `$` sign before, e.g. `$middlewares`, `$path`, `$method`.\n\n```javascript\nconst nestedRoute = {\n  middleware: [myTestMiddleware],\n  method: ['GET'],\n  path: '/test',\n  routes: {\n    route1: {\n      // path here is going to be /test1/, it's going to have 'GET' method on default and middleware myTestMiddleware will be called before\n      $path: '/test1',\n      callback: () => 'It works! Trust me...',\n    },\n    route1: {\n      // path here is going to be /test/test2/, it's going to have 'GET' and 'POST' methods on default and no middlewares\n      path: '/test2',\n      method: ['POST'],\n      $middleware: [],\n      callback: () => 'It works! Trust me...',\n    },\n  },\n};\n```\n\nYou can define nested route endlessly, all of them will inherit properties of it's parent and other ancestors (of course if they were not overwritten with `$` sign).\n\n```javascript\nconst nestedRoute = {\n  middleware: [myTestMiddleware],\n  method: ['GET'],\n  path: '/test',\n  routes: {\n    route1: {\n      // path here is going to be /test/test2/, it's going to have 'GET' and 'POST' methods on default and no middlewares\n      path: '/test2',\n      method: ['POST'],\n      $middleware: [],\n      callback: () => 'It works! Trust me...',\n      routes: {\n        // path here is going to be /test/test2/deep/, it's going to have 'GET' and 'POST' methods on default and no middlewares\n        deepRoute1: {\n          path: 'deep',\n          callback: () => 'The Dwarves delved too greedily and too deep',\n        },\n      },\n    },\n  },\n};\n```\n","readmeFilename":"README.md"}