{"_id":"keep-or-skip","_rev":"9-6df106c530cb00a0f4531b747e3f716b","name":"keep-or-skip","dist-tags":{"latest":"1.0.7"},"versions":{"1.0.0":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.0","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.16.3","jasmine":"^3.1.0","supertest":"^3.0.0"},"files":["LICENSE","README.md","index.js","lib/"],"gitHead":"0694388967d513f0b535cdf3d140e90f11425324","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.0","_npmVersion":"5.6.0","_nodeVersion":"9.9.0","_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"dist":{"integrity":"sha512-vXi4eATvARLcUNuiNfXyBQJaIAJZ+y0vFzES9gTBQRDaiMscDmtrqJg4/Dmuyj5bOvUlz8dHMGVqtWLvGgI37A==","shasum":"ac94c33b83bad7ead058572b7c58835dacfd7b36","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.0.tgz","fileCount":6,"unpackedSize":24288,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1LpD6Or7lQ3o9puo0+YhLh5AZqUUy2y31NcaESRJ09wIgfLZ7Z2jYIdx8mG5qQY2UKTPOcT6NutHWKUo9oOe87P4="}]},"maintainers":[{"name":"mauro-d","email":"mauro.doganieri@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.0_1522508495279_0.03670177911568606"},"_hasShrinkwrap":false},"1.0.1":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.1","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-travis":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-appveyor":"node ./node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.16.3","jasmine":"^3.1.0","supertest":"^3.0.0"},"files":["LICENSE","README.md","CHANGELOG.md","index.js","lib/"],"gitHead":"73ed62d4435cf55fd4d3be5ef39ec10864608d4b","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"dist":{"integrity":"sha512-EWZGK0HdfHROkbksNu/iT9DAJErSsg5MuDS4JT0Q8U1FKAVMtAUU24R6TAH+uKm4o2ipzbT7wbgPM+ObsYJ9Rw==","shasum":"9a8c8d1d570b73d91e4994b2e3724fdd84004fd6","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.1.tgz","fileCount":7,"unpackedSize":25239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9xYWCRA9TVsSAnZWagAAxrgP/i4Ag0dzx9TtIyEeCSTN\nrP3CMwUT/dHRjKudd86LYetvrqaHXgehOZI/OiXEMzwhwsrM1eAh0UEdwwHf\naQKyWHS3vZVXdQWYL3Rwz8du34czp/7mBslWMLhamD5/OdwEEMLnRsSi6yic\nkre5/Et0P5I4xKVaJ5KBHRtDLyNr9HnPfYlepy84w4iAcR2J80fQ4H8bpm/X\nz8Vmfnxlk2dcEpE0UPar+YlxCuwKwEyBsXCjIeYhe89IeNTNo3vx8rSk41iE\nsuTSw4GBgDjUVD4smZbW2IOfu/JJhg9CguesSJq5MWq6fFuWcqLGfnXo0BR8\nOXtU3wFWbixxbSIjb6tqcxzx7U0tlcnoPhjXb380TZHhdBOZfFeroWmVRXTB\nJlGo8VegwoGWmAN0qRqUnAjxRuOSg0bAbbp9pIjEOUk8YOK4DPGi0L6kZ90Q\nt7AZifd6TSrrpaQG4QJPbu3i0AkhQUqky+KbTmPSW7mzQ+B5ZnlTx8sDNyLL\nZQj+8ZOSgxL9ZOqNy5xLKaooUAdv+iEgBmPO6Aq8Dt+QVtGXeg0cc6QybOq6\njaaAJpXyp1/b/fGkkzKZrSOsLnaImaBrJ7kdRAdnUPuMMrJv/xu2y8BLZht6\nVQofGO4RXE1k21OCKZSa+YM196mPzVeYLOfZrw1N9egUAN2GUk93JLIj7kZx\nP8sR\r\n=6Kpt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHusR3CWV5dMucGpmfEYCOe0ClpFVNcTV0lRw+CytfhRAiEA89rS64Wae3nr1vG8/bRSrKGIOmRY+hsByKevfIyeDvg="}]},"maintainers":[{"email":"mauro.doganieri@gmail.com","name":"mauro-d"},{"email":"nicoladelgobbo@gmail.com","name":"nicknaso"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.1_1526142485387_0.7977856312568996"},"_hasShrinkwrap":false},"1.0.2":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.2","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-travis":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-appveyor":"node ./node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.16.3","jasmine":"^3.1.0","supertest":"^3.0.0"},"files":["LICENSE","README.md","CHANGELOG.md","index.js","lib/"],"gitHead":"9a6f3a14b68927dcfbc30c253290074abc7d1d2a","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"dist":{"integrity":"sha512-4w6fi+gA/0S3JdKeBVHYUUUwIAsXz9pSp21WddqRGVQVvzl7gZ97L+ER1lrb1I3nXaVLpLlJo3kdJ8THjR3c7A==","shasum":"32ef763e1432258679108af0f81c6b505991754d","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.2.tgz","fileCount":7,"unpackedSize":24748,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUdYwCRA9TVsSAnZWagAASQ0QAI8+v/13c1VRroJltNJC\nEeF9ryTFDpn62C0od0ekOMticfFDwHt7VYNPkBlDG/B4J7ZIXti+g+tqlxPy\nviSRojv7PW2YaS/Wzi/+otatCgM7KiQ6gIeS+mTV5KqMPO/auHfwciPc30Og\nuj2IAHlb9+gWuVFYYav6GSBN+JMQ2P8IroC+hIvDe25l6ah0VViT6cLbsYpZ\n4DSQhN6N0AgIEh71BBZlVz95bgsb0YYqBh8GspBQJh27pj8aoU2QcS2tEoyh\njcSd9+4FfV/pV8SCvmR6UiFQyvNst2K5NHWdLR5GqLid3KJ5wy7gMwinqrAt\nNIqBWh+rtp0G5PBtH2LBvzlsVKIqKGEGVCriJZqhLtFobGgULCYeVvBhtfFB\nRJvDyVN45nbtLHp5MjaHeojCKJfb60Eyia2jwTGODEeuhXNyAkGcqu+cVMpW\nC8vL5TG6mLkwHL1DkmN7905HgI2F7URy68IMlaECvWZJKymIC0csiD9DaEUx\nsLmZ43jO786nrGwfqEQPfTGI6Yr46z5xi9G89UpT9dKRkh9EZIniACdXux02\nKmsd67UESNU3kVedOoG9j351drqm+SSJAgOzUfgJPLR4GqsASZDTBvVmld9s\nq/ZS+UPrkCB+XuSYq6QFKcML0CzZc4TEN62Ew32oKsG+cSNq3S7gFAEARaMJ\nP0Pv\r\n=JVqq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/iFf8WMOLfba3rHTCSfu5s7ajCfIDZRd7HRTmw5bI+AIhALP93vqFt/278HLYH9iQOfh3Qn+ey8/afqmyZ6QkYvdo"}]},"maintainers":[{"email":"mauro.doganieri@gmail.com","name":"mauro-d"},{"email":"nicoladelgobbo@gmail.com","name":"nicknaso"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.2_1532089903961_0.4064546461060943"},"_hasShrinkwrap":false},"1.0.3":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.3","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-travis":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-appveyor":"node ./node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.16.3","jasmine":"^3.1.0","supertest":"^3.0.0"},"files":["LICENSE","README.md","CHANGELOG.md","index.js","lib/"],"gitHead":"617e3ed0fd51e69a4cb86671eee129149656880b","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.3","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"dist":{"integrity":"sha512-GEKCzX8Wx12WFDZwk0i7buTnCTUUh8qCTNMdRZZ0dk1pVi/S5YlC7+68MOmZC64Ngm8AguVr5K7jHenLg5UKsQ==","shasum":"bb4c7c4f1888fdee08651015c5b95b8fb3cb7519","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.3.tgz","fileCount":8,"unpackedSize":26779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaL3pCRA9TVsSAnZWagAAWZQP/AoTKZ+t1xGkF6fj4DTx\nMtEtK9QceaajaEKphStt5fzwcTUZvguGhGxlQrfCQBhmIZ/1NgsXLnaxcE17\ncSphgtLtv9EEuBb3XXeZzvCMFXupyS7+IUSO1K3b3pbyNhxXeRNCHmJ+t9y0\nn57L7Adsp1KSvIXkuSd8XziYRAQFmmi8aomCLZLBiyewFFlG8U16gXz2SIuZ\nXHJmG+a1qeLqzXwLWKd9pxzsUgY2IfTl6yLl0wdHB42O9hu5t9uM3e/aHXCC\nNMRUs0XEAyxKksqU2jt2jLY0GXy6LPRah8qQIB8Zj1m1Hb3hB9oN/Ag5hg9j\nPIZgWXL5a3sc3i35j/pnFmf0apbXGWHo+gw7oQKPsculctjQ5tFTB3qex9g3\nRJpzxycUci2bIZZSFF9Gjyk1bsOOC2quE5E4H5xKLAdcJSOaUFFheg0nt1+s\nF5ghUhzIKJ6LZ7DB4RT8YgOgPFuyohI03qFax2R5s4KZ/UtA1AWvxGJ0hEoY\nW5E8ERXpajA4t9DbdZloGH5o2tNA+Fcxz8MCW6GK2EQNVbJhItMudV1oIie8\nd+36xyaRQuABHLQyOmIQqx1gNYG0NzhhE86C0XWIbN7Jf2uvUMbRQsApXEyr\nfW53kt5DWuLfKFMH/OUpMnpq+JI0NzFS79W6ngzWKnYr7gDkWhBwWB0SvUzu\nlGU1\r\n=ePAq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEibQuGJXuN6s0XKrkPCFxJmOPhGHK/88fUdlAyH/+BIAiEAyQ1G5mMkUbXiXVNSDdW3jbS76cbsNwKJ7PyLbdmloXc="}]},"maintainers":[{"email":"mauro.doganieri@gmail.com","name":"mauro-d"},{"email":"nicoladelgobbo@gmail.com","name":"nicknaso"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.3_1533591016568_0.3212080816178715"},"_hasShrinkwrap":false},"1.0.4":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.4","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-travis":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-appveyor":"node ./node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.16.3","jasmine":"^3.1.0","supertest":"^3.0.0"},"gitHead":"f4cf52bf994ee6a16f469b98b960bd9ecccf77ec","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.4","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"dist":{"integrity":"sha512-wCpuuHifbvyRyJgiBJVUDQR28xvy/5k1JuteRAgWyH29m5oFWsfZYiBz2x1Vjgi/5ZL9dfdwgPUsFRf79Srztg==","shasum":"3c07350e81e1096d1dbedbe0aa50fc3ef243cf0f","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.4.tgz","fileCount":8,"unpackedSize":26215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7tvVCRA9TVsSAnZWagAAfZ8P+QHm1BBvVyKaWiDBqWex\n7G1y53UCCoIC8+FSz4WSv5s5k09z8fqrMGLujaOBmZJBMLFYG0KH5G+663Xg\nskHf1Q8f6/5DsRI5Yx2SIpZQLo1RfAzOgaPYOYmbKHyCaCTX0y0HYnaOIYpa\nP6WoOTxtLztou27bFCiBvJr0dQnZ29Yor6oDPpuMQ3E4d0cauZYJD+ffNcO6\nA3hkdQ4fqOapU4I+mL8aZh06ZwYhueub3O7cHSrBNEvtsXbaLGyiJ30kK5bR\n9w0HqDnhZshQn6rvUinp8/nr/yDF7TP1LHiFk/7V7Ip83tfporjJsgTozY1E\nb0jXbux/QuGq6cmJ5W1C1978kS96bl/kRqfPmAXX9/oufFfrhrHJEfR557dM\nGnnixuBXYVIlZSe4M+Laou+kai5UAsapXuOrSft6lHFuThidVrVhxgSycNuv\nHa9Iaa1yL2wB4I5GNZBVHqFBcW8B8B6vdD8bi65PZAVVbgFJe/SnsJOW74sL\nRSsaFnxBe7JzfdNaSZrnRG8yBH4s93EKv8zdCaHOegSAXR5BAm9agF+oLMgq\nDTqzW7PZfyGOCZpIFHMG0ox4bPxjTg/5W50rXAP2acyjeIXePa/IO7isuscJ\nYt7TmRtGc7fXUeiH3JyieFnyDBqDw8rQaYo2zvaJdF+sJojnPpZ2/dUPrE6G\n/32V\r\n=KqX0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIErXnaBhf0b69FZXxpn6csEjpfCv5z80rXNWh/CxkUZYAiEAjEDwow1QWtmbWAhGc2r8J5MBrjlcRWm+uF2rayvoinM="}]},"maintainers":[{"email":"mauro.doganieri@gmail.com","name":"mauro-d"},{"email":"nicoladelgobbo@gmail.com","name":"nicknaso"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.4_1542380500713_0.0671287871703139"},"_hasShrinkwrap":false},"1.0.5":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.5","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-travis":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-appveyor":"node ./node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.17.1","jasmine":"^3.4.0","supertest":"^4.0.2"},"gitHead":"2a0b282954227cc0f3886c2152efced26d218b3b","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.5","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"dist":{"integrity":"sha512-mbk/a1FqZfSRYpx0YGAr29BZdQTwYk1CrlHFKmjLyLyWrn3Ajx7F1oHjHYQQS2w8mc8YSpcfI7fnVm5a8IaqFA==","shasum":"741dbc085d57ac04d7dfc092370a07b8105013d4","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.5.tgz","fileCount":13,"unpackedSize":32059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVN3/CRA9TVsSAnZWagAA9pMP/35r31MUryIRH230P2br\n20Z5BgbEwgbImASpKylAeMaEAPqovcHiqO2b8lmLTZLvL8JwmhOoC2xAe53m\n6EZZ22wtTZzqV6OKb0/Uy5s5OA8IysJGYUPHsnaYS9YdDZiN2OwtZuXe9tz7\nH31LYfegGQP85yGN1BJIx9pLY4B+DDJK/ps2qk0wt5M4JkRNMrl+m4XG95tj\nARYNIrd918NPUGwZjp3qcAXJ2Tihx5PONF6x5G/fBRJZDbdC+bQ83FByYgnd\n2F13ILgcuRuH786ELsmhRWA2hMzlkqLcryA3ZmWsrcfGLr3DTlsVZGZM3v8v\nYvVISIFiePE85d56XD4qNZ1lhix2iIJuiLD9sSxQvqQla4mU4QgfWoWVjdcP\nfPKc14+peRZL0QjlSehno1JlxRZFkdXHmm4T67B8cJFn2qzz/9vvkWxLVyaE\nWgQhEg0wijKDT9HoD0DYqpkf2zEsFw7T+UNZvPyK+jcvwdZf69lcgbEoWTo6\ntiJPpXeuEZKyRUQGgUw0i6Cd0oZGPQEz/xsDZW+oYYaOUn5xP5rGH5jqNV8I\nXbP4U7Ar5PzO7H0qSzFoYZEhteY9VlclaeY7+9qKIyEkw8OP0llB2cpT7Iwi\nCi2CPlF99Cz1/yrFncBmhrt/jiwcFbCWBGlCBX4XpucB07h0mqFAks1Emtuc\nVTpb\r\n=3ISp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID0nTpIgfm7MPm1490L6CymSoyRzRjvbzDTwSZg7s+RWAiBISJH+f9/1kdZHhkbKLo33+Mes9Pfvfot7fptqf4hLtg=="}]},"maintainers":[{"email":"mauro.doganieri@gmail.com","name":"mauro-d"},{"email":"nicoladelgobbo@gmail.com","name":"nicknaso"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.5_1582620158736_0.9459999702911452"},"_hasShrinkwrap":false},"1.0.7":{"name":"keep-or-skip","description":"Dynamically execute or skip express middlewares","version":"1.0.7","contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"keywords":["dynamic","middleware","express","runtime","conditional","skip"],"license":"Apache-2.0","scripts":{"test":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-travis":"node node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json","test-appveyor":"node ./node_modules/jasmine/bin/jasmine.js JASMINE_CONFIG_PATH=__test__/jasmine.json"},"engines":{"node":">= 0.10.0"},"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"devDependencies":{"express":"^4.18.2","jasmine":"^3.4.0","supertest":"^4.0.2"},"gitHead":"2aa719e55e7202b6d79464f55a89817399535954","homepage":"https://github.com/mauro-d/keep-or-skip#readme","_id":"keep-or-skip@1.0.7","_nodeVersion":"18.16.1","_npmVersion":"9.5.1","dist":{"integrity":"sha512-EaqRFPcFEfzFlTP6p8L9gjuPP+M0CtoFRlqgzXbf6HcX8HvCTqcRh1fX++0FM/xwrSYTd1H12WjGBBVCDkEZMQ==","shasum":"3908c5693d684dd2dfea95a5e09f1915a930ff2a","tarball":"https://registry.npmjs.org/keep-or-skip/-/keep-or-skip-1.0.7.tgz","fileCount":13,"unpackedSize":32088,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIv8k2r9gSU4olaPuHX+EnbyzI6nkOWxN7XQOqw0XikAIhAMyjXywZKb08dHtV8LLRnBt837iRYNbrBNfIxyZIfGZU"}]},"_npmUser":{"name":"mauro-d","email":"mauro.doganieri@gmail.com"},"directories":{},"maintainers":[{"name":"nicknaso","email":"nicoladelgobbo@gmail.com"},{"name":"mauro-d","email":"mauro.doganieri@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keep-or-skip_1.0.7_1698335643360_0.03215612268799095"},"_hasShrinkwrap":false}},"time":{"created":"2018-03-31T15:01:35.278Z","1.0.0":"2018-03-31T15:01:35.437Z","modified":"2023-10-26T15:54:03.759Z","1.0.1":"2018-05-12T16:28:05.495Z","1.0.2":"2018-07-20T12:31:44.017Z","1.0.3":"2018-08-06T21:30:16.655Z","1.0.4":"2018-11-16T15:01:41.150Z","1.0.5":"2020-02-25T08:42:38.928Z","1.0.7":"2023-10-26T15:54:03.598Z"},"maintainers":[{"name":"nicknaso","email":"nicoladelgobbo@gmail.com"},{"name":"mauro-d","email":"mauro.doganieri@gmail.com"}],"description":"Dynamically execute or skip express middlewares","homepage":"https://github.com/mauro-d/keep-or-skip#readme","keywords":["dynamic","middleware","express","runtime","conditional","skip"],"repository":{"type":"git","url":"git+https://github.com/mauro-d/keep-or-skip.git"},"contributors":[{"name":"Mauro Doganieri","email":"mauro.doganieri@gmail.com"},{"name":"Nicola Del Gobbo","email":"nicoladelgobbo@gmail.com"}],"bugs":{"url":"https://github.com/mauro-d/keep-or-skip/issues"},"license":"Apache-2.0","readme":"# keep-or-skip\n\n## Dynamically execute or skip express middlewares\n\nThis wrapper allows you to choose one or more middlewares whose execution is based on a\ncertain condition. The aforementioned condition could be, for instance, a\nspecific *request* value.\n\n<br/>\n\n<div align=\"center\">\n\n[![CI](https://github.com/mauro-d/keep-or-skip/workflows/ci/badge.svg)](https://github.com/mauro-d/keep-or-skip/actions/workflows/ci.yml)\n[![NPM version](https://img.shields.io/npm/v/keep-or-skip.svg?style=flat)](https://www.npmjs.com/package/keep-or-skip)\n[![NPM downloads](https://img.shields.io/npm/dm/keep-or-skip.svg?style=flat)](https://www.npmjs.com/package/keep-or-skip)\n\n</div>\n\n## Installation\n\n```console\nnpm i keep-or-skip --save\n```\n\n## API\n\n```javascript\nkeepOrSkip(middlewares, predicate[, debug])\n```\n\n- `middlewares` &lt;Function&gt; | &lt;Function[]&gt; A middleware or an array of middlewares to be handled dynamically.\n- `predicate` &lt;Function&gt; A function returning a *boolean* value affecting the execution of the speciefied `middlewares`. This function takes as input two *optional* parameters, the `request` and the `response` objects. If the predicate does not return a boolean value, `middlewares` will be skipped.\n- `debug` &lt;Boolean&gt; An *optional* boolean parameter enabling a warning log which notifies whether `predicate` returned a boolean value. **Default**: *false*.\n- **returns** An array of middlewares.\n\nIf the parameters' type does not match with those required, an error will be\nthrown. In pariticular, the error will be an instance of **KeepOrSkipError**.\n\n## Example\n\nConsider the following example:\n\n```javascript\nconst express = require('express')\nconst keepOrSkip = require('keep-or-skip')\n\nconst app = express()\n\nfunction setValue(req, res, next) {\n    req.value = 1\n    next()\n}\n\nfunction middlewareOne(req, res, next) {\n    req.message = 'Hi from middlewareOne'\n    next()\n}\n\nfunction middlewareTwo(req, res, next) {\n    req.message = 'Hi from middlewareTwo'\n    next()\n}\n\nfunction respond(req, res, next) {\n    res.status(200).json({\n        message: req.message\n    })\n}\n\nconst maybeMiddlewareOne = keepOrSkip(middlewareOne, req => req.value < 0)\nconst maybeMiddlewareTwo = keepOrSkip(middlewareTwo, req => req.value >= 0)\n\napp.get('/',\n    setValue,\n    maybeMiddlewareOne,\n    maybeMiddlewareTwo,\n    respond\n)\n\napp.listen(3000)\n```\n\n`http://localhost:3000` will produce the following result, `middlewareOne` is\nskipped and `middlewareTwo` is executed:\n\n```json\n{\n    \"message\": \"Hi from middlewareTwo\"\n}\n```\n\n## Debug\n\nIn case `predicate` does not return a boolean value, `middlewares` will be skipped.\nIn this situation it's possible to log a warning by using the debug mode.\n\nIt's possible to activate the debug globally, directly on the imported module:\n\n```javascript\nconst keepOrSkip = require('keep-or-skip')\nkeepOrSkip.debug(true)\n```\n\nthe above code sets the debug mode to *true* every time `keepOrSkip` is\nused unless otherwise specified in the single calls as shown in the following\nexample:\n\n```javascript\nconst keepOrSkip = require('keep-or-skip')\n\n// Set debug mode globally.\nkeepOrSkip.debug(true)\n\n// Specifying the debug parameter at the time of use will overwrite the global debug variable.\nkeepOrSkip(myMiddlewares, myPredicate, false) // Debug OFF.\n\nkeepOrSkip(myMiddlewares, myPredicate) // Debug ON because of the global debug variable.\n```\n","readmeFilename":"README.md"}