├── .eslintrc.json ├── .github ├── dependabot.yml └── workflows │ └── run-tests.yml ├── .gitignore ├── .travis.yml ├── CHANGELOG.md ├── LICENSE ├── README.md ├── lib ├── event-emitter.js ├── index.js ├── rate-limit.js └── rate-limiter.js ├── media └── hapi-rate-limitor.png ├── package.json ├── test ├── plugin-allows-custom-ip-detection.js ├── plugin-allows-ip-whitelists.js ├── plugin-allows-route-specific-limits.js ├── plugin-allows-to-skip-rate-limiting.js ├── plugin-allows-user-specific-limits.js ├── plugin-can-be-disabled.js ├── plugin-close-redis-connection.js ├── plugin-connects-to-redis.js ├── plugin-fires-rate-limited-event.js ├── plugin-renders-view.js ├── plugin-resets-rate-limit-after-timeout.js ├── plugin-sends-error-response-with-rate-limit-HTTP-repsonse-headers.js ├── plugin-sends-success-response-rate-limit-HTTP-repsonse-headers.js ├── plugin-uses-custom-extension-point.js ├── plugin-works-with-defaults.js ├── plugin-works-with-other-plugins.js └── views │ └── rate-limit-exceeded.html └── typings └── index.d.ts /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/run-tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/.github/workflows/run-tests.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/.travis.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/README.md -------------------------------------------------------------------------------- /lib/event-emitter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/lib/event-emitter.js -------------------------------------------------------------------------------- /lib/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/lib/index.js -------------------------------------------------------------------------------- /lib/rate-limit.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/lib/rate-limit.js -------------------------------------------------------------------------------- /lib/rate-limiter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/lib/rate-limiter.js -------------------------------------------------------------------------------- /media/hapi-rate-limitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/media/hapi-rate-limitor.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/package.json -------------------------------------------------------------------------------- /test/plugin-allows-custom-ip-detection.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-allows-custom-ip-detection.js -------------------------------------------------------------------------------- /test/plugin-allows-ip-whitelists.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-allows-ip-whitelists.js -------------------------------------------------------------------------------- /test/plugin-allows-route-specific-limits.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-allows-route-specific-limits.js -------------------------------------------------------------------------------- /test/plugin-allows-to-skip-rate-limiting.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-allows-to-skip-rate-limiting.js -------------------------------------------------------------------------------- /test/plugin-allows-user-specific-limits.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-allows-user-specific-limits.js -------------------------------------------------------------------------------- /test/plugin-can-be-disabled.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-can-be-disabled.js -------------------------------------------------------------------------------- /test/plugin-close-redis-connection.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-close-redis-connection.js -------------------------------------------------------------------------------- /test/plugin-connects-to-redis.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-connects-to-redis.js -------------------------------------------------------------------------------- /test/plugin-fires-rate-limited-event.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-fires-rate-limited-event.js -------------------------------------------------------------------------------- /test/plugin-renders-view.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-renders-view.js -------------------------------------------------------------------------------- /test/plugin-resets-rate-limit-after-timeout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-resets-rate-limit-after-timeout.js -------------------------------------------------------------------------------- /test/plugin-sends-error-response-with-rate-limit-HTTP-repsonse-headers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-sends-error-response-with-rate-limit-HTTP-repsonse-headers.js -------------------------------------------------------------------------------- /test/plugin-sends-success-response-rate-limit-HTTP-repsonse-headers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-sends-success-response-rate-limit-HTTP-repsonse-headers.js -------------------------------------------------------------------------------- /test/plugin-uses-custom-extension-point.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-uses-custom-extension-point.js -------------------------------------------------------------------------------- /test/plugin-works-with-defaults.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-works-with-defaults.js -------------------------------------------------------------------------------- /test/plugin-works-with-other-plugins.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/plugin-works-with-other-plugins.js -------------------------------------------------------------------------------- /test/views/rate-limit-exceeded.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/test/views/rate-limit-exceeded.html -------------------------------------------------------------------------------- /typings/index.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/futurestudio/hapi-rate-limitor/HEAD/typings/index.d.ts --------------------------------------------------------------------------------