UNPKG

@daiso-tech/core

Version:

The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.

29 lines 969 B
/** * @module RateLimiter */ export const rateLimiterLua = ` -- @template TMetrics -- @param rateLimiterStorage RateLimiterStorage<AllRateLimiterState<TMetrics>> -- @param rateLimiterStateManager RateLimiterStateManager<TMetrics> -- @param currentDate number -- @return IRateLimiterAdapter local function RateLimiter(rateLimiterStorage, rateLimiterStateManager, currentDate) return { -- @param key string -- @param limit number -- @return IRedisJsonRateLimiterState updateState = function(key, limit) return rateLimiterStorage.atomicUpdate({ key = key, update = function(state) return rateLimiterStateManager.updateState( limit, currentDate )(rateLimtierStateManager.track(currentDate)(state)) end }) end, } end `; //# sourceMappingURL=rate-limiter-lua.js.map