@zeitar/throttle 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -0
- package/dist/CompoundLimiter.d.ts +0 -1
- package/dist/CompoundLimiter.js +0 -1
- package/dist/CompoundRateLimiterFactory.d.ts +0 -1
- package/dist/CompoundRateLimiterFactory.js +0 -1
- package/dist/LimiterInterface.d.ts +0 -1
- package/dist/LimiterInterface.js +0 -1
- package/dist/LimiterStateInterface.d.ts +0 -1
- package/dist/LimiterStateInterface.js +0 -1
- package/dist/RateLimit.d.ts +0 -1
- package/dist/RateLimit.js +0 -1
- package/dist/RateLimiterFactory.d.ts +0 -1
- package/dist/RateLimiterFactory.js +0 -1
- package/dist/RateLimiterFactoryInterface.d.ts +0 -1
- package/dist/RateLimiterFactoryInterface.js +0 -1
- package/dist/Reservation.d.ts +0 -1
- package/dist/Reservation.js +0 -1
- package/dist/errors/InvalidIntervalError.d.ts +0 -1
- package/dist/errors/InvalidIntervalError.js +0 -1
- package/dist/errors/MaxWaitDurationExceededError.d.ts +0 -1
- package/dist/errors/MaxWaitDurationExceededError.js +0 -1
- package/dist/errors/RateLimitExceededError.d.ts +0 -1
- package/dist/errors/RateLimitExceededError.js +0 -1
- package/dist/errors/ReserveNotSupportedError.d.ts +0 -1
- package/dist/errors/ReserveNotSupportedError.js +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/policy/FixedWindowLimiter.d.ts +0 -1
- package/dist/policy/FixedWindowLimiter.js +0 -1
- package/dist/policy/NoLimiter.d.ts +0 -1
- package/dist/policy/NoLimiter.js +0 -1
- package/dist/policy/Rate.d.ts +0 -1
- package/dist/policy/Rate.js +0 -1
- package/dist/policy/SlidingWindow.d.ts +0 -1
- package/dist/policy/SlidingWindow.js +0 -1
- package/dist/policy/SlidingWindowLimiter.d.ts +0 -1
- package/dist/policy/SlidingWindowLimiter.js +0 -1
- package/dist/policy/TokenBucket.d.ts +0 -1
- package/dist/policy/TokenBucket.js +0 -1
- package/dist/policy/TokenBucketLimiter.d.ts +0 -1
- package/dist/policy/TokenBucketLimiter.js +0 -1
- package/dist/policy/Window.d.ts +0 -1
- package/dist/policy/Window.js +0 -1
- package/dist/storage/InMemoryStorage.d.ts +0 -1
- package/dist/storage/InMemoryStorage.js +0 -1
- package/dist/storage/LockInterface.d.ts +0 -1
- package/dist/storage/LockInterface.js +0 -1
- package/dist/storage/StorageInterface.d.ts +0 -1
- package/dist/storage/StorageInterface.js +0 -1
- package/dist/util/TimeUtil.d.ts +0 -1
- package/dist/util/TimeUtil.js +0 -1
- package/package.json +1 -2
- package/dist/CompoundLimiter.d.ts.map +0 -1
- package/dist/CompoundLimiter.js.map +0 -1
- package/dist/CompoundRateLimiterFactory.d.ts.map +0 -1
- package/dist/CompoundRateLimiterFactory.js.map +0 -1
- package/dist/LimiterInterface.d.ts.map +0 -1
- package/dist/LimiterInterface.js.map +0 -1
- package/dist/LimiterStateInterface.d.ts.map +0 -1
- package/dist/LimiterStateInterface.js.map +0 -1
- package/dist/RateLimit.d.ts.map +0 -1
- package/dist/RateLimit.js.map +0 -1
- package/dist/RateLimiterFactory.d.ts.map +0 -1
- package/dist/RateLimiterFactory.js.map +0 -1
- package/dist/RateLimiterFactoryInterface.d.ts.map +0 -1
- package/dist/RateLimiterFactoryInterface.js.map +0 -1
- package/dist/Reservation.d.ts.map +0 -1
- package/dist/Reservation.js.map +0 -1
- package/dist/__tests__/CompoundLimiter.test.d.ts +0 -2
- package/dist/__tests__/CompoundLimiter.test.d.ts.map +0 -1
- package/dist/__tests__/CompoundLimiter.test.js +0 -231
- package/dist/__tests__/CompoundLimiter.test.js.map +0 -1
- package/dist/__tests__/CompoundRateLimiterFactory.test.d.ts +0 -2
- package/dist/__tests__/CompoundRateLimiterFactory.test.d.ts.map +0 -1
- package/dist/__tests__/CompoundRateLimiterFactory.test.js +0 -213
- package/dist/__tests__/CompoundRateLimiterFactory.test.js.map +0 -1
- package/dist/__tests__/RateLimit.test.d.ts +0 -2
- package/dist/__tests__/RateLimit.test.d.ts.map +0 -1
- package/dist/__tests__/RateLimit.test.js +0 -108
- package/dist/__tests__/RateLimit.test.js.map +0 -1
- package/dist/__tests__/RateLimiterFactory.test.d.ts +0 -2
- package/dist/__tests__/RateLimiterFactory.test.d.ts.map +0 -1
- package/dist/__tests__/RateLimiterFactory.test.js +0 -323
- package/dist/__tests__/RateLimiterFactory.test.js.map +0 -1
- package/dist/__tests__/Reservation.test.d.ts +0 -2
- package/dist/__tests__/Reservation.test.d.ts.map +0 -1
- package/dist/__tests__/Reservation.test.js +0 -110
- package/dist/__tests__/Reservation.test.js.map +0 -1
- package/dist/errors/InvalidIntervalError.d.ts.map +0 -1
- package/dist/errors/InvalidIntervalError.js.map +0 -1
- package/dist/errors/MaxWaitDurationExceededError.d.ts.map +0 -1
- package/dist/errors/MaxWaitDurationExceededError.js.map +0 -1
- package/dist/errors/RateLimitExceededError.d.ts.map +0 -1
- package/dist/errors/RateLimitExceededError.js.map +0 -1
- package/dist/errors/ReserveNotSupportedError.d.ts.map +0 -1
- package/dist/errors/ReserveNotSupportedError.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/policy/FixedWindowLimiter.d.ts.map +0 -1
- package/dist/policy/FixedWindowLimiter.js.map +0 -1
- package/dist/policy/NoLimiter.d.ts.map +0 -1
- package/dist/policy/NoLimiter.js.map +0 -1
- package/dist/policy/Rate.d.ts.map +0 -1
- package/dist/policy/Rate.js.map +0 -1
- package/dist/policy/SlidingWindow.d.ts.map +0 -1
- package/dist/policy/SlidingWindow.js.map +0 -1
- package/dist/policy/SlidingWindowLimiter.d.ts.map +0 -1
- package/dist/policy/SlidingWindowLimiter.js.map +0 -1
- package/dist/policy/TokenBucket.d.ts.map +0 -1
- package/dist/policy/TokenBucket.js.map +0 -1
- package/dist/policy/TokenBucketLimiter.d.ts.map +0 -1
- package/dist/policy/TokenBucketLimiter.js.map +0 -1
- package/dist/policy/Window.d.ts.map +0 -1
- package/dist/policy/Window.js.map +0 -1
- package/dist/policy/__tests__/FixedWindowLimiter.test.d.ts +0 -2
- package/dist/policy/__tests__/FixedWindowLimiter.test.d.ts.map +0 -1
- package/dist/policy/__tests__/FixedWindowLimiter.test.js +0 -180
- package/dist/policy/__tests__/FixedWindowLimiter.test.js.map +0 -1
- package/dist/policy/__tests__/NoLimiter.test.d.ts +0 -2
- package/dist/policy/__tests__/NoLimiter.test.d.ts.map +0 -1
- package/dist/policy/__tests__/NoLimiter.test.js +0 -40
- package/dist/policy/__tests__/NoLimiter.test.js.map +0 -1
- package/dist/policy/__tests__/Rate.test.d.ts +0 -2
- package/dist/policy/__tests__/Rate.test.d.ts.map +0 -1
- package/dist/policy/__tests__/Rate.test.js +0 -162
- package/dist/policy/__tests__/Rate.test.js.map +0 -1
- package/dist/policy/__tests__/SlidingWindow.test.d.ts +0 -2
- package/dist/policy/__tests__/SlidingWindow.test.d.ts.map +0 -1
- package/dist/policy/__tests__/SlidingWindow.test.js +0 -257
- package/dist/policy/__tests__/SlidingWindow.test.js.map +0 -1
- package/dist/policy/__tests__/SlidingWindowLimiter.test.d.ts +0 -2
- package/dist/policy/__tests__/SlidingWindowLimiter.test.d.ts.map +0 -1
- package/dist/policy/__tests__/SlidingWindowLimiter.test.js +0 -201
- package/dist/policy/__tests__/SlidingWindowLimiter.test.js.map +0 -1
- package/dist/policy/__tests__/TokenBucket.test.d.ts +0 -2
- package/dist/policy/__tests__/TokenBucket.test.d.ts.map +0 -1
- package/dist/policy/__tests__/TokenBucket.test.js +0 -171
- package/dist/policy/__tests__/TokenBucket.test.js.map +0 -1
- package/dist/policy/__tests__/TokenBucketLimiter.test.d.ts +0 -2
- package/dist/policy/__tests__/TokenBucketLimiter.test.d.ts.map +0 -1
- package/dist/policy/__tests__/TokenBucketLimiter.test.js +0 -175
- package/dist/policy/__tests__/TokenBucketLimiter.test.js.map +0 -1
- package/dist/policy/__tests__/Window.test.d.ts +0 -2
- package/dist/policy/__tests__/Window.test.d.ts.map +0 -1
- package/dist/policy/__tests__/Window.test.js +0 -193
- package/dist/policy/__tests__/Window.test.js.map +0 -1
- package/dist/storage/InMemoryStorage.d.ts.map +0 -1
- package/dist/storage/InMemoryStorage.js.map +0 -1
- package/dist/storage/LockInterface.d.ts.map +0 -1
- package/dist/storage/LockInterface.js.map +0 -1
- package/dist/storage/StorageInterface.d.ts.map +0 -1
- package/dist/storage/StorageInterface.js.map +0 -1
- package/dist/storage/__tests__/InMemoryStorage.test.d.ts +0 -2
- package/dist/storage/__tests__/InMemoryStorage.test.d.ts.map +0 -1
- package/dist/storage/__tests__/InMemoryStorage.test.js +0 -154
- package/dist/storage/__tests__/InMemoryStorage.test.js.map +0 -1
- package/dist/util/TimeUtil.d.ts.map +0 -1
- package/dist/util/TimeUtil.js.map +0 -1
- package/dist/util/__tests__/TimeUtil.test.d.ts +0 -2
- package/dist/util/__tests__/TimeUtil.test.d.ts.map +0 -1
- package/dist/util/__tests__/TimeUtil.test.js +0 -132
- package/dist/util/__tests__/TimeUtil.test.js.map +0 -1
package/README.md
CHANGED
|
@@ -24,6 +24,22 @@ A production-ready TypeScript rate limiting library with support for multiple al
|
|
|
24
24
|
npm install @zeitar/throttle
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
+
## Important: What This Library Does (and Doesn't Do)
|
|
28
|
+
|
|
29
|
+
**This library provides application-level rate limiting** - it's designed to manage legitimate traffic, enforce user quotas, and prevent abuse from authenticated users.
|
|
30
|
+
|
|
31
|
+
**This library is NOT designed to protect against DDoS attacks.** By the time a request reaches your Node.js application, you've already consumed server resources. For DDoS protection and traffic floods, use network-level solutions:
|
|
32
|
+
|
|
33
|
+
- **Edge protection**: Cloudflare, AWS Shield, Fastly
|
|
34
|
+
- **Reverse proxy**: NGINX rate limiting, Caddy rate limit module, Apache mod_ratelimit
|
|
35
|
+
- **Load balancer**: Most cloud load balancers have built-in rate limiting
|
|
36
|
+
|
|
37
|
+
**The right approach is layered security:**
|
|
38
|
+
1. Network/proxy level blocks massive attacks and traffic floods
|
|
39
|
+
2. This library handles per-user quotas, business logic, and authenticated rate limiting
|
|
40
|
+
|
|
41
|
+
See **[Rate Limiting vs DoS Protection](./docs/rate-limiting-vs-dos-protection.md)** for a detailed explanation and architecture guidance.
|
|
42
|
+
|
|
27
43
|
## Quick Start
|
|
28
44
|
|
|
29
45
|
```typescript
|
|
@@ -94,6 +110,7 @@ app.use(async (req: Request, res: Response, next: NextFunction) => {
|
|
|
94
110
|
|
|
95
111
|
### Getting Started
|
|
96
112
|
- **[Getting Started Guide](./docs/getting-started.md)** - Installation, basic usage, and testing
|
|
113
|
+
- **[Rate Limiting vs DoS Protection](./docs/rate-limiting-vs-dos-protection.md)** - Understanding layered security (READ THIS FIRST)
|
|
97
114
|
- **[Choosing an Algorithm](./docs/algorithms.md)** - Algorithm comparison and selection guide
|
|
98
115
|
- **[Framework Integration](./docs/framework-integration.md)** - Express, Fastify, NestJS, Koa, Hono examples
|
|
99
116
|
|
package/dist/CompoundLimiter.js
CHANGED
package/dist/LimiterInterface.js
CHANGED
package/dist/RateLimit.d.ts
CHANGED
package/dist/RateLimit.js
CHANGED
package/dist/Reservation.d.ts
CHANGED
package/dist/Reservation.js
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -32,4 +32,3 @@ export { MaxWaitDurationExceededError } from './errors/MaxWaitDurationExceededEr
|
|
|
32
32
|
export { RateLimitExceededError } from './errors/RateLimitExceededError';
|
|
33
33
|
export { ReserveNotSupportedError } from './errors/ReserveNotSupportedError';
|
|
34
34
|
export { TimeUtil } from './util/TimeUtil';
|
|
35
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -55,4 +55,3 @@ Object.defineProperty(exports, "ReserveNotSupportedError", { enumerable: true, g
|
|
|
55
55
|
// Utilities
|
|
56
56
|
var TimeUtil_1 = require("./util/TimeUtil");
|
|
57
57
|
Object.defineProperty(exports, "TimeUtil", { enumerable: true, get: function () { return TimeUtil_1.TimeUtil; } });
|
|
58
|
-
//# sourceMappingURL=index.js.map
|
package/dist/policy/NoLimiter.js
CHANGED
package/dist/policy/Rate.d.ts
CHANGED
package/dist/policy/Rate.js
CHANGED
package/dist/policy/Window.d.ts
CHANGED
package/dist/policy/Window.js
CHANGED
package/dist/util/TimeUtil.d.ts
CHANGED
package/dist/util/TimeUtil.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zeitar/throttle",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "Production-ready rate limiting for Node.js - Token Bucket, Fixed Window, and Sliding Window algorithms with TypeScript support",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"rate-limiter",
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
"sliding-window",
|
|
11
11
|
"fixed-window",
|
|
12
12
|
"api-rate-limit",
|
|
13
|
-
"symfony",
|
|
14
13
|
"typescript",
|
|
15
14
|
"async"
|
|
16
15
|
],
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompoundLimiter.d.ts","sourceRoot":"","sources":["../src/CompoundLimiter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;;;;;;;GAQG;AACH,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,QAAQ,EAAE,gBAAgB,EAAE;IAOxC;;;;OAIG;IACG,OAAO,CAAC,OAAO,GAAE,MAAU,EAAE,QAAQ,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAMxF;;;;OAIG;IACG,OAAO,CAAC,MAAM,GAAE,MAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IA4BrD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompoundLimiter.js","sourceRoot":"","sources":["../src/CompoundLimiter.ts"],"names":[],"mappings":";;;AAGA,gFAA6E;AAE7E;;;;;;;;GAQG;AACH,MAAa,eAAe;IAG1B,YAAY,QAA4B;QACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,UAAkB,CAAC,EAAE,WAA0B,IAAI;QAC/D,MAAM,IAAI,mDAAwB,CAChC,+EAA+E,CAChF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,SAAiB,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CACtD,CAAC;QAEF,mCAAmC;QACnC,IAAI,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAEjC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,8DAA8D;YAC9D,wDAAwD;YACxD,gDAAgD;YAChD,IACE,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;gBACtD,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE;oBACnB,CAAC,eAAe,CAAC,UAAU,EAAE;oBAC7B,MAAM,CAAC,aAAa,EAAE,GAAG,eAAe,CAAC,aAAa,EAAE,CAAC;gBAC3D,CAAC,MAAM,CAAC,UAAU,EAAE;oBAClB,eAAe,CAAC,UAAU,EAAE;oBAC5B,MAAM,CAAC,kBAAkB,EAAE,GAAG,eAAe,CAAC,kBAAkB,EAAE,CAAC,EACrE,CAAC;gBACD,eAAe,GAAG,MAAM,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnE,CAAC;CACF;AA5DD,0CA4DC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompoundRateLimiterFactory.d.ts","sourceRoot":"","sources":["../src/CompoundRateLimiterFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D;;;;;GAKG;AACH,qBAAa,0BAA2B,YAAW,2BAA2B;IAC5E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgC;gBAE9C,SAAS,EAAE,2BAA2B,EAAE;IAOpD;;;;OAIG;IACH,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB;CAI9C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompoundRateLimiterFactory.js","sourceRoot":"","sources":["../src/CompoundRateLimiterFactory.ts"],"names":[],"mappings":";;;AAEA,uDAAoD;AAEpD;;;;;GAKG;AACH,MAAa,0BAA0B;IAGrC,YAAY,SAAwC;QAClD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,GAAmB;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,iCAAe,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;CACF;AAnBD,gEAmBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LimiterInterface.d.ts","sourceRoot":"","sources":["../src/LimiterInterface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEvE;;;;;OAKG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAE5C;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LimiterInterface.js","sourceRoot":"","sources":["../src/LimiterInterface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LimiterStateInterface.d.ts","sourceRoot":"","sources":["../src/LimiterStateInterface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,KAAK,IAAI,MAAM,CAAC;IAEhB;;OAEG;IACH,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAAC;CACpC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LimiterStateInterface.js","sourceRoot":"","sources":["../src/LimiterStateInterface.ts"],"names":[],"mappings":""}
|
package/dist/RateLimit.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimit.d.ts","sourceRoot":"","sources":["../src/RateLimit.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAO;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAG7B,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,IAAI,EAChB,QAAQ,EAAE,OAAO,EACjB,KAAK,EAAE,MAAM;IAQf;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;OAIG;IACH,cAAc,IAAI,IAAI;IAOtB;;OAEG;IACH,aAAa,IAAI,IAAI;IAIrB;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;;OAKG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ5B"}
|
package/dist/RateLimit.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimit.js","sourceRoot":"","sources":["../src/RateLimit.ts"],"names":[],"mappings":";;;AAAA,4EAAyE;AAEzE;;;;;GAKG;AACH,MAAa,SAAS;IAMpB,YACE,eAAuB,EACvB,UAAgB,EAChB,QAAiB,EACjB,KAAa;QAEb,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,+CAAsB,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC;QAE/C,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;CACF;AAxED,8BAwEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimiterFactory.d.ts","sourceRoot":"","sources":["../src/RateLimiterFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAS7D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,iBAAiB,GACjB,iBAAiB,GACjB,mBAAmB,GACnB,aAAa,CAAC;AAElB;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,YAAW,2BAA2B;IACpE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAgB;gBAGpC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,gBAAgB,EACzB,IAAI,CAAC,EAAE,aAAa;IAOtB;;;;OAIG;IACH,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB;IAuB7C;;OAEG;IACH,OAAO,CAAC,cAAc;IA2CtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAUhC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;OAEG;IACH,OAAO,CAAC,0BAA0B;CAoBnC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimiterFactory.js","sourceRoot":"","sources":["../src/RateLimiterFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimiterFactoryInterface.d.ts","sourceRoot":"","sources":["../src/RateLimiterFactoryInterface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB,CAAC;CAC/C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimiterFactoryInterface.js","sourceRoot":"","sources":["../src/RateLimiterFactoryInterface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Reservation.d.ts","sourceRoot":"","sources":["../src/Reservation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;GAKG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;gBAE1B,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;IAKnD;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,YAAY,IAAI,SAAS;IAIzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAM5B"}
|
package/dist/Reservation.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Reservation.js","sourceRoot":"","sources":["../src/Reservation.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,MAAa,WAAW;IAItB,YAAY,SAAiB,EAAE,SAAoB;QACjD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;CACF;AAvCD,kCAuCC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompoundLimiter.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/CompoundLimiter.test.ts"],"names":[],"mappings":""}
|