@backstage/backend-defaults
Version:
Backend defaults used by Backstage backend apps
24 lines (20 loc) • 804 B
JavaScript
;
var RateLimitStoreFactory = require('../../../lib/RateLimitStoreFactory.cjs.js');
var rateLimitMiddleware = require('../../../lib/rateLimitMiddleware.cjs.js');
const createRateLimitMiddleware = (options) => {
const { pluginId, config } = options;
const configKey = `backend.rateLimit.plugin.${pluginId}`;
const enabled = config.has(configKey);
if (!enabled) {
return (_req, _res, next) => {
next();
};
}
const rateLimitOptions = config.getConfig(configKey);
return rateLimitMiddleware.rateLimitMiddleware({
store: RateLimitStoreFactory.RateLimitStoreFactory.create({ config, prefix: pluginId }),
config: rateLimitOptions
});
};
exports.createRateLimitMiddleware = createRateLimitMiddleware;
//# sourceMappingURL=createRateLimitMiddleware.cjs.js.map