@6thbridge/utils 1.10.2 → 1.10.4

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.
@@ -73,12 +73,14 @@ class ContextEntity {
73
73
  context.permissions = ((_d = req.headers.permissions) === null || _d === void 0 ? void 0 : _d.split(',')) || [];
74
74
  context.logger = new logger_1.Logger({
75
75
  requestId: context.requestId,
76
+ authenticationType: context.authenticationType,
76
77
  requestClientId: context.requestClientId,
77
78
  contextClientId: context.contextClientId,
78
79
  userId: context.userId,
79
80
  ip: context.ip,
80
81
  url: context.request.originalUrl,
81
82
  requestSource: context.requestSource,
83
+ requestHost: req.host,
82
84
  });
83
85
  return context;
84
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.entity.js","sourceRoot":"","sources":["../../src/types/context.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.entity.js","sourceRoot":"","sources":["../../src/types/context.entity.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@6thbridge/utils",
3
- "version": "1.10.2",
3
+ "version": "1.10.4",
4
4
  "description": "simple interface for the our commonly used functions",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -22,23 +22,25 @@
22
22
  },
23
23
  "license": "ISC",
24
24
  "dependencies": {
25
- "@opentelemetry/api": "^1.9.1",
26
- "@opentelemetry/auto-instrumentations-node": "^0.80.0",
27
- "amqp-connection-manager": "^5.0.0",
25
+ "@opentelemetry/api": "^1.10.0",
26
+ "@opentelemetry/auto-instrumentations-node": "^0.82.0",
27
+ "amqp-connection-manager": "^5.0.1",
28
28
  "amqplib": "^2.0.1",
29
- "axios": "^1.20.0",
29
+ "axios": "^1.21.0",
30
30
  "axios-better-stacktrace": "^2.1.7",
31
31
  "bignumber.js": "^11.1.5",
32
32
  "csv-parse": "^7.0.2",
33
33
  "dayjs": "^1.11.23",
34
+ "express-rate-limit": "8.7.1",
34
35
  "ioredis": "^6.0.0",
35
- "joi": "^18.2.9",
36
+ "joi": "^18.3.1",
36
37
  "libphonenumber-js": "^1.13.13",
37
38
  "lodash": "^4.18.1",
38
39
  "mongoose": "^9.10.2",
39
40
  "mongoose-paginate-v2": "^1.9.5",
40
41
  "path-to-regexp": "^8.4.2",
41
42
  "randomstring": "^1.3.1",
43
+ "rate-limit-redis": "6.0.1",
42
44
  "redlock": "^5.0.0-beta.2",
43
45
  "rollbar": "^3.1.0",
44
46
  "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
package/readme.md CHANGED
@@ -90,6 +90,40 @@ Express.js middlewares for common functionality.
90
90
  - **Authentication**: JWT and API key validation
91
91
  - **Validation**: Request/response validation
92
92
  - **Error Handling**: Centralized error processing
93
+ - **Rate Limiting**: Redis-backed request limits with a service-owned ioredis connection
94
+
95
+ #### Shared rate limiter
96
+
97
+ ```typescript
98
+ import Redis from 'ioredis';
99
+ import { Ratelimiter } from '@6thbridge/utils';
100
+
101
+ const redisClient = new Redis(process.env.REDIS_URL);
102
+ const loginLimiter = Ratelimiter.limit({
103
+ redisClient,
104
+ keyPrefix: 'my-service:login',
105
+ numberOfTries: 5,
106
+ skipSuccessfulRequests: true,
107
+ });
108
+
109
+ // Use loginLimiter as Express middleware on your login route.
110
+ ```
111
+
112
+ The default limit is five attempts per IP in a 30-minute window. Exceeding it
113
+ returns HTTP 429 with `errorCode: 'RateLimitExceeded'`. Set `skipSuccessfulRequests`
114
+ to exclude successful responses from the count; it defaults to `false`.
115
+
116
+ Reuse an existing standard ioredis `Redis` connection across limiters. The calling
117
+ service owns connection setup and shutdown; the limiter does not create or close
118
+ connections. Choose a service/route-specific `keyPrefix` to isolate counters when
119
+ sharing Redis. The default prefix is `rate-limit-key`.
120
+
121
+ An optional synchronous `keyGenerator(req, res)` replaces the entire default key,
122
+ including `keyPrefix`. Without it, the limiter uses `res.locals.ip`, then
123
+ `cf-connecting-ip`, `x-forwarded-for`, the `ip` header, or `req.ip`, in that order,
124
+ and normalizes IPv6 addresses. Configure trusted proxies to supply these values.
125
+
126
+ The class is also available as `middlewares.Ratelimiter` from the package root.
93
127
 
94
128
  ### 📊 [Monitoring](./src/monitoring/README.md)
95
129
  Application monitoring and observability tools.