@fishka/express 0.9.8 → 0.9.10
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 +21 -13
- package/dist/cjs/api.types.d.ts +4 -4
- package/dist/cjs/api.types.js +8 -7
- package/dist/cjs/api.types.js.map +1 -0
- package/dist/cjs/auth/auth-strategy.js +1 -0
- package/dist/cjs/auth/auth-strategy.js.map +1 -0
- package/dist/cjs/auth/auth.types.js +1 -0
- package/dist/cjs/auth/auth.types.js.map +1 -0
- package/dist/cjs/auth/auth.utils.js +1 -0
- package/dist/cjs/auth/auth.utils.js.map +1 -0
- package/dist/cjs/auth/bearer-auth-strategy.js +1 -0
- package/dist/cjs/auth/bearer-auth-strategy.js.map +1 -0
- package/dist/cjs/config.js +1 -0
- package/dist/cjs/config.js.map +1 -0
- package/dist/cjs/error-handling.js +1 -0
- package/dist/cjs/error-handling.js.map +1 -0
- package/dist/cjs/http-status-codes.js +1 -0
- package/dist/cjs/http-status-codes.js.map +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/rate-limit/in-memory-rate-limiter.js +1 -0
- package/dist/cjs/rate-limit/in-memory-rate-limiter.js.map +1 -0
- package/dist/cjs/rate-limit/rate-limit.js +1 -0
- package/dist/cjs/rate-limit/rate-limit.js.map +1 -0
- package/dist/cjs/rate-limit/rate-limit.types.js +1 -0
- package/dist/cjs/rate-limit/rate-limit.types.js.map +1 -0
- package/dist/cjs/route-table.d.ts +1 -1
- package/dist/cjs/route-table.js +1 -0
- package/dist/cjs/route-table.js.map +1 -0
- package/dist/cjs/router.d.ts +3 -3
- package/dist/cjs/router.js +3 -2
- package/dist/cjs/router.js.map +1 -0
- package/dist/cjs/thread-local/thread-local-storage-middleware.js +1 -0
- package/dist/cjs/thread-local/thread-local-storage-middleware.js.map +1 -0
- package/dist/cjs/thread-local/thread-local-storage.js +1 -0
- package/dist/cjs/thread-local/thread-local-storage.js.map +1 -0
- package/dist/cjs/utils/conversion.utils.js +1 -0
- package/dist/cjs/utils/conversion.utils.js.map +1 -0
- package/dist/cjs/utils/express.utils.js +1 -0
- package/dist/cjs/utils/express.utils.js.map +1 -0
- package/dist/esm/api.types.d.ts +4 -4
- package/dist/esm/api.types.js +9 -8
- package/dist/esm/api.types.js.map +1 -0
- package/dist/esm/auth/auth-strategy.js +1 -0
- package/dist/esm/auth/auth-strategy.js.map +1 -0
- package/dist/esm/auth/auth.types.js +1 -0
- package/dist/esm/auth/auth.types.js.map +1 -0
- package/dist/esm/auth/auth.utils.js +1 -0
- package/dist/esm/auth/auth.utils.js.map +1 -0
- package/dist/esm/auth/bearer-auth-strategy.js +1 -0
- package/dist/esm/auth/bearer-auth-strategy.js.map +1 -0
- package/dist/esm/config.js +1 -0
- package/dist/esm/config.js.map +1 -0
- package/dist/esm/error-handling.js +1 -0
- package/dist/esm/error-handling.js.map +1 -0
- package/dist/esm/http-status-codes.js +1 -0
- package/dist/esm/http-status-codes.js.map +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/rate-limit/in-memory-rate-limiter.js +1 -0
- package/dist/esm/rate-limit/in-memory-rate-limiter.js.map +1 -0
- package/dist/esm/rate-limit/rate-limit.js +1 -0
- package/dist/esm/rate-limit/rate-limit.js.map +1 -0
- package/dist/esm/rate-limit/rate-limit.types.js +1 -0
- package/dist/esm/rate-limit/rate-limit.types.js.map +1 -0
- package/dist/esm/route-table.d.ts +1 -1
- package/dist/esm/route-table.js +1 -0
- package/dist/esm/route-table.js.map +1 -0
- package/dist/esm/router.d.ts +3 -3
- package/dist/esm/router.js +5 -4
- package/dist/esm/router.js.map +1 -0
- package/dist/esm/thread-local/thread-local-storage-middleware.js +1 -0
- package/dist/esm/thread-local/thread-local-storage-middleware.js.map +1 -0
- package/dist/esm/thread-local/thread-local-storage.js +1 -0
- package/dist/esm/thread-local/thread-local-storage.js.map +1 -0
- package/dist/esm/utils/conversion.utils.js +1 -0
- package/dist/esm/utils/conversion.utils.js.map +1 -0
- package/dist/esm/utils/express.utils.js +1 -0
- package/dist/esm/utils/express.utils.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ routes.get<Array<{ id: string; name: string }>>('users', async () => [
|
|
|
33
33
|
|
|
34
34
|
// POST /users
|
|
35
35
|
routes.post<{ name: string }, { id: string }>('users', {
|
|
36
|
-
$body: { name: v => assertString(v, '
|
|
36
|
+
$body: { name: v => assertString(v, 'name required') },
|
|
37
37
|
run: async ctx => ({ id: '1' }),
|
|
38
38
|
});
|
|
39
39
|
|
|
@@ -51,14 +51,14 @@ Global validation can be enforced for specific URL parameters (e.g., `:id`, `:or
|
|
|
51
51
|
|
|
52
52
|
```typescript
|
|
53
53
|
import { registerUrlParameter } from '@fishka/express';
|
|
54
|
-
import { assertString } from '@fishka/assertions';
|
|
54
|
+
import { assertString, assertTruthy } from '@fishka/assertions';
|
|
55
55
|
|
|
56
56
|
// Register parameters with optional validation
|
|
57
57
|
registerUrlParameter('orgId', {
|
|
58
|
-
validator:
|
|
58
|
+
validator: val => {
|
|
59
59
|
assertString(val);
|
|
60
|
-
|
|
61
|
-
}
|
|
60
|
+
assertTruthy(val.startsWith('org-'), 'Invalid Organization ID');
|
|
61
|
+
},
|
|
62
62
|
});
|
|
63
63
|
|
|
64
64
|
// Now /orgs/:orgId will automatically validate that orgId starts with 'org-'
|
|
@@ -95,19 +95,27 @@ app.use(
|
|
|
95
95
|
);
|
|
96
96
|
```
|
|
97
97
|
|
|
98
|
+
## HTTP Status Code in Validation
|
|
99
|
+
|
|
100
|
+
For cases where you need specific HTTP status codes (like 401 for authentication, 404 for not found), use `assertHttp`:
|
|
101
|
+
|
|
102
|
+
```typescript
|
|
103
|
+
import { assertHttp, HTTP_UNAUTHORIZED, HTTP_NOT_FOUND } from '@fishka/express';
|
|
104
|
+
|
|
105
|
+
// In a validator or route handler
|
|
106
|
+
assertHttp(req.headers.authorization, HTTP_UNAUTHORIZED, 'Authorization required');
|
|
107
|
+
assertHttp(user, HTTP_NOT_FOUND, 'User not found');
|
|
108
|
+
assertHttp(user.isAdmin, HTTP_FORBIDDEN, 'Admin access required');
|
|
109
|
+
```
|
|
110
|
+
|
|
98
111
|
## Complete Example
|
|
99
112
|
|
|
100
113
|
Here is a full initialization including TLS context, global validation, and proper error handling.
|
|
101
114
|
|
|
102
115
|
```typescript
|
|
103
116
|
import express from 'express';
|
|
104
|
-
import {
|
|
105
|
-
|
|
106
|
-
createTlsMiddleware,
|
|
107
|
-
catchAllMiddleware,
|
|
108
|
-
registerUrlParameter
|
|
109
|
-
} from '@fishka/express';
|
|
110
|
-
import { assertString } from '@fishka/assertions';
|
|
117
|
+
import { createRouteTable, createTlsMiddleware, catchAllMiddleware, registerUrlParameter } from '@fishka/express';
|
|
118
|
+
import { assertString, assertTruthy } from '@fishka/assertions';
|
|
111
119
|
|
|
112
120
|
const app = express();
|
|
113
121
|
|
|
@@ -119,7 +127,7 @@ app.use(createTlsMiddleware());
|
|
|
119
127
|
|
|
120
128
|
// 3. Register global URL parameters
|
|
121
129
|
registerUrlParameter('id', {
|
|
122
|
-
validator:
|
|
130
|
+
validator: val => assertString(val),
|
|
123
131
|
});
|
|
124
132
|
|
|
125
133
|
// 4. Define routes
|
package/dist/cjs/api.types.d.ts
CHANGED
|
@@ -6,10 +6,10 @@ export declare class HttpError extends Error {
|
|
|
6
6
|
constructor(status: number, message: string, details?: Record<string, unknown> | undefined);
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
|
-
* Asserts that
|
|
9
|
+
* Asserts that the value is truthy, throwing an HttpError with the specified status code if false.
|
|
10
10
|
* This function is designed for HTTP-specific validation where you want to throw appropriate HTTP status codes.
|
|
11
11
|
*
|
|
12
|
-
* @param
|
|
12
|
+
* @param value - The condition to check. If falsy, an HttpError will be thrown.
|
|
13
13
|
* @param status - The HTTP status code to use in the HttpError (e.g., 400 for Bad Request, 404 for Not Found).
|
|
14
14
|
* @param message - The error message to include in the HttpError.
|
|
15
15
|
*
|
|
@@ -21,7 +21,7 @@ export declare class HttpError extends Error {
|
|
|
21
21
|
* assertHttp(typeof userId === 'string', HTTP_BAD_REQUEST, 'User ID must be a string');
|
|
22
22
|
*
|
|
23
23
|
* // Validate resource existence
|
|
24
|
-
* assertHttp(user
|
|
24
|
+
* assertHttp(user, HTTP_NOT_FOUND, 'User not found');
|
|
25
25
|
*
|
|
26
26
|
* // Validate authorization
|
|
27
27
|
* assertHttp(user.isAdmin, HTTP_FORBIDDEN, 'Admin access required');
|
|
@@ -36,7 +36,7 @@ export declare class HttpError extends Error {
|
|
|
36
36
|
* @see {@link HTTP_FORBIDDEN}
|
|
37
37
|
* @see {@link HTTP_UNAUTHORIZED}
|
|
38
38
|
*/
|
|
39
|
-
export declare function assertHttp(
|
|
39
|
+
export declare function assertHttp(value: unknown, status: number, message: string): asserts value;
|
|
40
40
|
export interface ApiResponse<ResponseEntity = unknown> {
|
|
41
41
|
/** Result of the call. A single entity for non-paginated ${by-id} requests or an array for list queries. */
|
|
42
42
|
result: ResponseEntity;
|
package/dist/cjs/api.types.js
CHANGED
|
@@ -18,10 +18,10 @@ class HttpError extends Error {
|
|
|
18
18
|
}
|
|
19
19
|
exports.HttpError = HttpError;
|
|
20
20
|
/**
|
|
21
|
-
* Asserts that
|
|
21
|
+
* Asserts that the value is truthy, throwing an HttpError with the specified status code if false.
|
|
22
22
|
* This function is designed for HTTP-specific validation where you want to throw appropriate HTTP status codes.
|
|
23
23
|
*
|
|
24
|
-
* @param
|
|
24
|
+
* @param value - The condition to check. If falsy, an HttpError will be thrown.
|
|
25
25
|
* @param status - The HTTP status code to use in the HttpError (e.g., 400 for Bad Request, 404 for Not Found).
|
|
26
26
|
* @param message - The error message to include in the HttpError.
|
|
27
27
|
*
|
|
@@ -33,7 +33,7 @@ exports.HttpError = HttpError;
|
|
|
33
33
|
* assertHttp(typeof userId === 'string', HTTP_BAD_REQUEST, 'User ID must be a string');
|
|
34
34
|
*
|
|
35
35
|
* // Validate resource existence
|
|
36
|
-
* assertHttp(user
|
|
36
|
+
* assertHttp(user, HTTP_NOT_FOUND, 'User not found');
|
|
37
37
|
*
|
|
38
38
|
* // Validate authorization
|
|
39
39
|
* assertHttp(user.isAdmin, HTTP_FORBIDDEN, 'Admin access required');
|
|
@@ -48,8 +48,8 @@ exports.HttpError = HttpError;
|
|
|
48
48
|
* @see {@link HTTP_FORBIDDEN}
|
|
49
49
|
* @see {@link HTTP_UNAUTHORIZED}
|
|
50
50
|
*/
|
|
51
|
-
function assertHttp(
|
|
52
|
-
(0, assertions_1.assertTruthy)(
|
|
51
|
+
function assertHttp(value, status, message) {
|
|
52
|
+
(0, assertions_1.assertTruthy)(value, () => new HttpError(status, message));
|
|
53
53
|
}
|
|
54
54
|
/** Converts an API response value into a standardized ApiResponse structure. */
|
|
55
55
|
function response(result) {
|
|
@@ -69,6 +69,7 @@ function registerUrlParameter(name, info) {
|
|
|
69
69
|
* @Internal
|
|
70
70
|
*/
|
|
71
71
|
function assertUrlParameter(name) {
|
|
72
|
-
(
|
|
73
|
-
assertHttp(exports.URL_PARAMETER_INFO[name]
|
|
72
|
+
assertHttp(typeof name === 'string', http_status_codes_1.HTTP_BAD_REQUEST, 'Url parameter name must be a string');
|
|
73
|
+
assertHttp(exports.URL_PARAMETER_INFO[name], http_status_codes_1.HTTP_BAD_REQUEST, `Invalid URL parameter: '${name}'. Please register it using 'registerUrlParameter('${name}', ...)'`);
|
|
74
74
|
}
|
|
75
|
+
//# sourceMappingURL=api.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.types.js","sourceRoot":"","sources":["../../src/api.types.ts"],"names":[],"mappings":";;;AAgDA,gCAEC;AA2BD,4BAEC;AAiBD,oDAEC;AAMD,gDAOC;AA/GD,mDAAkE;AAClE,2DAAuD;AAIvD,MAAa,SAAU,SAAQ,KAAK;IAClC,YACkB,MAAc,EAC9B,OAAe,EACC,OAAiC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,WAAM,GAAN,MAAM,CAAQ;QAEd,YAAO,GAAP,OAAO,CAA0B;QAGjD,qDAAqD;QACrD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;CACF;AAVD,8BAUC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,SAAgB,UAAU,CAAC,KAAc,EAAE,MAAc,EAAE,OAAe;IACxE,IAAA,yBAAY,EAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC5D,CAAC;AA0BD,gFAAgF;AAChF,SAAgB,QAAQ,CAAc,MAAS;IAC7C,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAUD;;;GAGG;AACU,QAAA,kBAAkB,GAAqC,EAAE,CAAC;AAEvE,qCAAqC;AACrC,SAAgB,oBAAoB,CAAC,IAAY,EAAE,IAAsB;IACvE,0BAAkB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,IAAa;IAC9C,UAAU,CAAC,OAAO,IAAI,KAAK,QAAQ,EAAE,oCAAgB,EAAE,qCAAqC,CAAC,CAAC;IAC9F,UAAU,CACR,0BAAkB,CAAC,IAAI,CAAC,EACxB,oCAAgB,EAChB,2BAA2B,IAAI,sDAAsD,IAAI,UAAU,CACpG,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-strategy.js","sourceRoot":"","sources":["../../../src/auth/auth-strategy.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AACzC,4DAAyD;AAIzD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,iBAAiB;IAI5B,YAA6B,QAAsE;QAAtE,aAAQ,GAAR,QAAQ,CAA8D;IAAG,CAAC;IAEvG;;;;OAIG;IACH,kBAAkB,CAAC,GAAmB;QACpC,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9D,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACtF,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAEhD,+HAA+H;YAC/H,wEAAwE;YACxE,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACxC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAA0C;QACtF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,qBAAS,CAAC,qCAAiB,EAAE,8BAA8B,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA3CD,8CA2CC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.types.js","sourceRoot":"","sources":["../../../src/auth/auth.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.utils.js","sourceRoot":"","sources":["../../../src/auth/auth.utils.ts"],"names":[],"mappings":";;AAcA,oDA4BC;AAWD,kCAMC;AAUD,wCAEC;AAvED,4CAAyC;AACzC,4DAAyD;AAIzD;;;;;;;;GAQG;AACH,SAAgB,oBAAoB,CAClC,QAAqC,EACrC,SAAyD;IAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAChC,mCAAmC;QACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAE7D,uFAAuF;QACvF,kIAAkI;QAClI,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,qBAAS,CAAC,qCAAiB,EAAE,2CAA2C,CAAC,CAAC;QACtF,CAAC;QAED,kDAAkD;QAClD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAE7D,8DAA8D;QAC9D,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QAExB,kCAAkC;QAClC,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3B,CAAC;QAED,6BAA6B;QAC7B,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,WAAW,CAAmC,OAAuB;IACnF,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,qBAAS,CAAC,qCAAiB,EAAE,yDAAyD,CAAC,CAAC;IACpG,CAAC;IACD,OAAO,IAAY,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAmC,OAAuB;IACtF,OAAO,OAAO,CAAC,QAA4B,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bearer-auth-strategy.js","sourceRoot":"","sources":["../../../src/auth/bearer-auth-strategy.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AACzC,4DAAyD;AAIzD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAa,kBAAkB;IAC7B;;OAEG;IACH,YAA6B,QAAiD;QAAjD,aAAQ,GAAR,QAAQ,CAAyC;IAAG,CAAC;IAElF;;;OAGG;IACH,kBAAkB,CAAC,GAAmB;QACpC,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAa;QACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,qBAAS,CAAC,qCAAiB,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAlCD,gDAkCC"}
|
package/dist/cjs/config.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;AAoBA,kDAEC;AAKD,kDAEC;AAMD,sDAEC;AA3BD,MAAM,aAAa,GAA2B;IAC5C,oBAAoB,EAAE,IAAI;CAC3B,CAAC;AAEF,IAAI,aAAa,GAA2B,EAAE,GAAG,aAAa,EAAE,CAAC;AAEjE;;;GAGG;AACH,SAAgB,mBAAmB,CAAC,MAAuC;IACzE,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,MAAM,EAA4B,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB;IACnC,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handling.js","sourceRoot":"","sources":["../../src/error-handling.ts"],"names":[],"mappings":";;AAoCA,4CAeC;AAMD,gDAkBC;AA3ED,mDAAyD;AAEzD,2CAAqD;AACrD,2DAAmF;AACnF,8EAA6E;AAC7E,+DAA6D;AAG7D,SAAS,gBAAgB,CAAC,KAAc;IACtC,MAAM,GAAG,GAAG,IAAA,6CAAsB,GAAE,CAAC;IACrC,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,CAAC;IACjC,IAAI,QAA0C,CAAC;IAE/C,IAAI,KAAK,YAAY,qBAAS,EAAE,CAAC;QAC/B,QAAQ,GAAG;YACT,GAAG,IAAA,oCAAiB,EAAC,SAAS,CAAC;YAC/B,KAAK,EAAE,KAAK,CAAC,OAAO;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,IAAA,gCAAmB,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpD,QAAQ,GAAG;YACT,GAAG,IAAA,oCAAiB,EAAC,SAAS,CAAC;YAC/B,KAAK,EAAE,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB;YAChF,MAAM,EAAE,8CAA0B;SACnC,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;IACjC,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,8EAA8E;AAC9E,SAAgB,gBAAgB,CAAC,EAAmB;IAClD,OAAO,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAiB,EAAE;QAC5F,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,WAAW,CAAC,MAAM,IAAI,8CAA0B,EAAE,CAAC;gBACrD,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;YACD,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,kBAAkB,CACtC,KAAc,EACd,CAAiB,EACjB,GAAoB,EACpB,IAAkB;IAElB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,EAAE,CAAC;QACP,OAAO;IACT,CAAC;IACD,8DAA8D;IAC9D,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,IAAA,gCAAmB,EAAC,KAAK,CAAC,CAAC,CAAC;IACjE,MAAM,WAAW,GACf,KAAK,YAAY,WAAW,CAAC,2BAA2B;QACtD,CAAC,CAAC,gBAAgB,CAAC,GAAG,oCAAgB,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAAC;QACpF,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC9B,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-status-codes.js","sourceRoot":"","sources":["../../src/http-status-codes.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -29,3 +29,4 @@ __exportStar(require("./router"), exports);
|
|
|
29
29
|
__exportStar(require("./thread-local/thread-local-storage"), exports);
|
|
30
30
|
__exportStar(require("./thread-local/thread-local-storage-middleware"), exports);
|
|
31
31
|
__exportStar(require("./utils/express.utils"), exports);
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,uDAAqC;AACrC,oDAAkC;AAClC,oDAAkC;AAClC,8DAA4C;AAC5C,2CAAyB;AACzB,mDAAiC;AACjC,sDAAoC;AACpC,sEAAoD;AACpD,gEAA8C;AAC9C,gDAA8B;AAC9B,2CAAyB;AACzB,sEAAoD;AACpD,iFAA+D;AAC/D,wDAAsC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-rate-limiter.js","sourceRoot":"","sources":["../../../src/rate-limit/in-memory-rate-limiter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limit.js","sourceRoot":"","sources":["../../../src/rate-limit/rate-limit.ts"],"names":[],"mappings":";;AAgBA,kDAiBC;AAMD,kCAEC;AAtCD,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B;;;;;;;;;;GAUG;AACH,SAAgB,mBAAmB,CACjC,GAAoB,EACpB,MAAuB,EACvB,WAAmB,EACnB,QAAgB;IAEhB,OAAO,CACL,GAAG;QACD,oEAAoE;SACnE,MAAM,CAAC,mBAAmB,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9C,6CAA6C;SAC5C,MAAM,CAAC,uBAAuB,EAAE,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QAC7D,iEAAiE;SAChE,MAAM,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,iBAAiB,CAAC,EAAE,CAAC;QACrF,qEAAqE;SACpE,MAAM,CAAC,oBAAoB,EAAE,GAAG,WAAW,MAAM,QAAQ,yBAAyB,CAAC,CACvF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,EAAU;IACpC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limit.types.js","sourceRoot":"","sources":["../../../src/rate-limit/rate-limit.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ExpressApplication } from './utils/express.utils';
|
|
2
1
|
import { DeleteEndpoint, GetEndpoint, PatchEndpoint, PostEndpoint, PutEndpoint, RequestContext, ResponseOrValue } from './router';
|
|
2
|
+
import { ExpressApplication } from './utils/express.utils';
|
|
3
3
|
/**
|
|
4
4
|
* Helper utility for organizing and mounting routes.
|
|
5
5
|
* Provides a fluent interface for registering multiple handlers.
|
package/dist/cjs/route-table.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-table.js","sourceRoot":"","sources":["../../src/route-table.ts"],"names":[],"mappings":";;;AA+DA,4CAEC;AAjED,qCAakB;AAGlB;;;GAGG;AACH,MAAa,UAAU;IACrB,YAA6B,GAAuB;QAAvB,QAAG,GAAH,GAAG,CAAoB;IAAG,CAAC;IAIxD,GAAG,CACD,IAAY,EACZ,aAAyG;QAEzG,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAA0B,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAe,IAAY,EAAE,QAAoC;QACnE,IAAA,kBAAS,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAe,IAAY,EAAE,QAAqC;QACrE,IAAA,mBAAU,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAe,IAAY,EAAE,QAAmC;QACjE,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAID,MAAM,CAAC,IAAY,EAAE,aAAwE;QAC3F,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,IAAA,oBAAW,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AApCD,gCAoCC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,GAAuB;IACtD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
|
package/dist/cjs/router.d.ts
CHANGED
|
@@ -55,14 +55,14 @@ export type GetListEndpoint<ResultElementType = unknown> = EndpointBase<RequestC
|
|
|
55
55
|
/** Descriptor for GET routes. */
|
|
56
56
|
export type GetEndpoint<Result = unknown> = EndpointBase<RequestContext, Result>;
|
|
57
57
|
/** Descriptor for POST routes. */
|
|
58
|
-
export interface PostEndpoint<Body = unknown, Result =
|
|
58
|
+
export interface PostEndpoint<Body = unknown, Result = void> extends EndpointBase<RequestContext<Body>, Result> {
|
|
59
59
|
/** Request body validator. */
|
|
60
60
|
$body: Body extends object ? ObjectAssertion<Body> : Assertion<Body>;
|
|
61
61
|
}
|
|
62
62
|
/** Same as POST. Used for full object updates. */
|
|
63
|
-
export type PutEndpoint<Body = unknown, Result =
|
|
63
|
+
export type PutEndpoint<Body = unknown, Result = void> = PostEndpoint<Body, Result>;
|
|
64
64
|
/** Same as PUT. While PUT is used for the whole object update, PATCH is used for a partial update. */
|
|
65
|
-
export type PatchEndpoint<Body = unknown, Result =
|
|
65
|
+
export type PatchEndpoint<Body = unknown, Result = void> = PutEndpoint<Body, Result>;
|
|
66
66
|
/** Descriptor for DELETE routes. */
|
|
67
67
|
export type DeleteEndpoint = EndpointBase<RequestContext, void>;
|
|
68
68
|
/** Union type for all route registration info objects. */
|
package/dist/cjs/router.js
CHANGED
|
@@ -38,8 +38,8 @@ exports.mount = mount;
|
|
|
38
38
|
const assertions_1 = require("@fishka/assertions");
|
|
39
39
|
const url = __importStar(require("url"));
|
|
40
40
|
const api_types_1 = require("./api.types");
|
|
41
|
-
const http_status_codes_1 = require("./http-status-codes");
|
|
42
41
|
const error_handling_1 = require("./error-handling");
|
|
42
|
+
const http_status_codes_1 = require("./http-status-codes");
|
|
43
43
|
const thread_local_storage_1 = require("./thread-local/thread-local-storage");
|
|
44
44
|
const conversion_utils_1 = require("./utils/conversion.utils");
|
|
45
45
|
// ============================================================================
|
|
@@ -228,7 +228,7 @@ function newRequestContext(requestBody, req, res) {
|
|
|
228
228
|
params: {
|
|
229
229
|
get: (key) => {
|
|
230
230
|
const value = req.params[key];
|
|
231
|
-
(0,
|
|
231
|
+
(0, api_types_1.assertHttp)(value, http_status_codes_1.HTTP_BAD_REQUEST, `Path parameter '${key}' not found`);
|
|
232
232
|
return value;
|
|
233
233
|
},
|
|
234
234
|
tryGet: (key) => req.params[key],
|
|
@@ -243,3 +243,4 @@ function newRequestContext(requestBody, req, res) {
|
|
|
243
243
|
state: new Map(),
|
|
244
244
|
};
|
|
245
245
|
}
|
|
246
|
+
//# sourceMappingURL=router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-local-storage-middleware.js","sourceRoot":"","sources":["../../../src/thread-local/thread-local-storage-middleware.ts"],"names":[],"mappings":";;AAaA,kDAiBC;AA9BD,mCAAoC;AAEpC,sCAAgD;AAEhD,iEAA+D;AAE/D;;;;;;GAMG;AACH,SAAgB,mBAAmB;IACjC,OAAO,KAAK,EAAE,GAAmB,EAAE,IAAqB,EAAE,IAAkB,EAAiB,EAAE;QAC7F,MAAM,MAAM,GAAG,IAAA,4BAAmB,GAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,MAAM,UAAU,GAAI,GAA+B,CAAC,SAAS,IAAI,QAAQ,CAAC;QAC1E,MAAM,SAAS,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAA,mBAAU,GAAE,CAAC;QAE7E,8CAA8C;QAC9C,MAAM,IAAA,4CAAqB,EACzB;YACE,SAAS;SACV,EACD,KAAK,IAAI,EAAE;YACT,IAAI,EAAE,CAAC;QACT,CAAC,CACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-local-storage.js","sourceRoot":"","sources":["../../../src/thread-local/thread-local-storage.ts"],"names":[],"mappings":";;AA2BA,wDAEC;AAUD,sDAEC;AAzCD,6CAAgD;AAchD;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,IAAI,+BAAiB,EAAmB,CAAC;AAEnE;;;;GAIG;AACH,SAAgB,sBAAsB;IACpC,OAAO,iBAAiB,CAAC,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,qBAAqB,CAAI,IAAqB,EAAE,QAA0B;IAC9F,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversion.utils.js","sourceRoot":"","sources":["../../../src/utils/conversion.utils.ts"],"names":[],"mappings":";;AAOA,0CAGC;AAQD,8CAMC;AAtBD;;;;GAIG;AACH,SAAgB,eAAe,CAAC,KAAoB;IAClD,MAAM,gBAAgB,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7F,OAAO,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC;AAC1E,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAc,wBAA4C;IACzF,IAAI,WAAW,GAAmB,wBAA0C,CAAC;IAC7E,WAAW,GAAG,WAAW,EAAE,MAAM;QAC/B,CAAC,CAAC,WAAW,CAAC,kEAAkE;QAChF,CAAC,CAAiB,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC,wDAAwD;IAClH,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"express.utils.js","sourceRoot":"","sources":["../../../src/utils/express.utils.ts"],"names":[],"mappings":""}
|
package/dist/esm/api.types.d.ts
CHANGED
|
@@ -6,10 +6,10 @@ export declare class HttpError extends Error {
|
|
|
6
6
|
constructor(status: number, message: string, details?: Record<string, unknown> | undefined);
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
|
-
* Asserts that
|
|
9
|
+
* Asserts that the value is truthy, throwing an HttpError with the specified status code if false.
|
|
10
10
|
* This function is designed for HTTP-specific validation where you want to throw appropriate HTTP status codes.
|
|
11
11
|
*
|
|
12
|
-
* @param
|
|
12
|
+
* @param value - The condition to check. If falsy, an HttpError will be thrown.
|
|
13
13
|
* @param status - The HTTP status code to use in the HttpError (e.g., 400 for Bad Request, 404 for Not Found).
|
|
14
14
|
* @param message - The error message to include in the HttpError.
|
|
15
15
|
*
|
|
@@ -21,7 +21,7 @@ export declare class HttpError extends Error {
|
|
|
21
21
|
* assertHttp(typeof userId === 'string', HTTP_BAD_REQUEST, 'User ID must be a string');
|
|
22
22
|
*
|
|
23
23
|
* // Validate resource existence
|
|
24
|
-
* assertHttp(user
|
|
24
|
+
* assertHttp(user, HTTP_NOT_FOUND, 'User not found');
|
|
25
25
|
*
|
|
26
26
|
* // Validate authorization
|
|
27
27
|
* assertHttp(user.isAdmin, HTTP_FORBIDDEN, 'Admin access required');
|
|
@@ -36,7 +36,7 @@ export declare class HttpError extends Error {
|
|
|
36
36
|
* @see {@link HTTP_FORBIDDEN}
|
|
37
37
|
* @see {@link HTTP_UNAUTHORIZED}
|
|
38
38
|
*/
|
|
39
|
-
export declare function assertHttp(
|
|
39
|
+
export declare function assertHttp(value: unknown, status: number, message: string): asserts value;
|
|
40
40
|
export interface ApiResponse<ResponseEntity = unknown> {
|
|
41
41
|
/** Result of the call. A single entity for non-paginated ${by-id} requests or an array for list queries. */
|
|
42
42
|
result: ResponseEntity;
|
package/dist/esm/api.types.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { assertTruthy } from '@fishka/assertions';
|
|
2
2
|
import { HTTP_BAD_REQUEST } from './http-status-codes';
|
|
3
3
|
export class HttpError extends Error {
|
|
4
4
|
constructor(status, message, details) {
|
|
@@ -10,10 +10,10 @@ export class HttpError extends Error {
|
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
|
-
* Asserts that
|
|
13
|
+
* Asserts that the value is truthy, throwing an HttpError with the specified status code if false.
|
|
14
14
|
* This function is designed for HTTP-specific validation where you want to throw appropriate HTTP status codes.
|
|
15
15
|
*
|
|
16
|
-
* @param
|
|
16
|
+
* @param value - The condition to check. If falsy, an HttpError will be thrown.
|
|
17
17
|
* @param status - The HTTP status code to use in the HttpError (e.g., 400 for Bad Request, 404 for Not Found).
|
|
18
18
|
* @param message - The error message to include in the HttpError.
|
|
19
19
|
*
|
|
@@ -25,7 +25,7 @@ export class HttpError extends Error {
|
|
|
25
25
|
* assertHttp(typeof userId === 'string', HTTP_BAD_REQUEST, 'User ID must be a string');
|
|
26
26
|
*
|
|
27
27
|
* // Validate resource existence
|
|
28
|
-
* assertHttp(user
|
|
28
|
+
* assertHttp(user, HTTP_NOT_FOUND, 'User not found');
|
|
29
29
|
*
|
|
30
30
|
* // Validate authorization
|
|
31
31
|
* assertHttp(user.isAdmin, HTTP_FORBIDDEN, 'Admin access required');
|
|
@@ -40,8 +40,8 @@ export class HttpError extends Error {
|
|
|
40
40
|
* @see {@link HTTP_FORBIDDEN}
|
|
41
41
|
* @see {@link HTTP_UNAUTHORIZED}
|
|
42
42
|
*/
|
|
43
|
-
export function assertHttp(
|
|
44
|
-
assertTruthy(
|
|
43
|
+
export function assertHttp(value, status, message) {
|
|
44
|
+
assertTruthy(value, () => new HttpError(status, message));
|
|
45
45
|
}
|
|
46
46
|
/** Converts an API response value into a standardized ApiResponse structure. */
|
|
47
47
|
export function response(result) {
|
|
@@ -61,6 +61,7 @@ export function registerUrlParameter(name, info) {
|
|
|
61
61
|
* @Internal
|
|
62
62
|
*/
|
|
63
63
|
export function assertUrlParameter(name) {
|
|
64
|
-
|
|
65
|
-
assertHttp(URL_PARAMETER_INFO[name]
|
|
64
|
+
assertHttp(typeof name === 'string', HTTP_BAD_REQUEST, 'Url parameter name must be a string');
|
|
65
|
+
assertHttp(URL_PARAMETER_INFO[name], HTTP_BAD_REQUEST, `Invalid URL parameter: '${name}'. Please register it using 'registerUrlParameter('${name}', ...)'`);
|
|
66
66
|
}
|
|
67
|
+
//# sourceMappingURL=api.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.types.js","sourceRoot":"","sources":["../../src/api.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClC,YACkB,MAAc,EAC9B,OAAe,EACC,OAAiC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,WAAM,GAAN,MAAM,CAAQ;QAEd,YAAO,GAAP,OAAO,CAA0B;QAGjD,qDAAqD;QACrD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc,EAAE,MAAc,EAAE,OAAe;IACxE,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC5D,CAAC;AA0BD,gFAAgF;AAChF,MAAM,UAAU,QAAQ,CAAc,MAAS;IAC7C,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAUD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAqC,EAAE,CAAC;AAEvE,qCAAqC;AACrC,MAAM,UAAU,oBAAoB,CAAC,IAAY,EAAE,IAAsB;IACvE,kBAAkB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAa;IAC9C,UAAU,CAAC,OAAO,IAAI,KAAK,QAAQ,EAAE,gBAAgB,EAAE,qCAAqC,CAAC,CAAC;IAC9F,UAAU,CACR,kBAAkB,CAAC,IAAI,CAAC,EACxB,gBAAgB,EAChB,2BAA2B,IAAI,sDAAsD,IAAI,UAAU,CACpG,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-strategy.js","sourceRoot":"","sources":["../../../src/auth/auth-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,iBAAiB;IAI5B,YAA6B,QAAsE;QAAtE,aAAQ,GAAR,QAAQ,CAA8D;IAAG,CAAC;IAEvG;;;;OAIG;IACH,kBAAkB,CAAC,GAAmB;QACpC,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9D,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACtF,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAEhD,+HAA+H;YAC/H,wEAAwE;YACxE,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACxC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAA0C;QACtF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,8BAA8B,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.types.js","sourceRoot":"","sources":["../../../src/auth/auth.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.utils.js","sourceRoot":"","sources":["../../../src/auth/auth.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAqC,EACrC,SAAyD;IAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAChC,mCAAmC;QACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAE7D,uFAAuF;QACvF,kIAAkI;QAClI,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,2CAA2C,CAAC,CAAC;QACtF,CAAC;QAED,kDAAkD;QAClD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAE7D,8DAA8D;QAC9D,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QAExB,kCAAkC;QAClC,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3B,CAAC;QAED,6BAA6B;QAC7B,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAmC,OAAuB;IACnF,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,yDAAyD,CAAC,CAAC;IACpG,CAAC;IACD,OAAO,IAAY,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAmC,OAAuB;IACtF,OAAO,OAAO,CAAC,QAA4B,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bearer-auth-strategy.js","sourceRoot":"","sources":["../../../src/auth/bearer-auth-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,kBAAkB;IAC7B;;OAEG;IACH,YAA6B,QAAiD;QAAjD,aAAQ,GAAR,QAAQ,CAAyC;IAAG,CAAC;IAElF;;;OAGG;IACH,kBAAkB,CAAC,GAAmB;QACpC,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAa;QACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
package/dist/esm/config.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAUA,MAAM,aAAa,GAA2B;IAC5C,oBAAoB,EAAE,IAAI;CAC3B,CAAC;AAEF,IAAI,aAAa,GAA2B,EAAE,GAAG,aAAa,EAAE,CAAC;AAEjE;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAuC;IACzE,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,MAAM,EAA4B,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IACnC,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handling.js","sourceRoot":"","sources":["../../src/error-handling.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-status-codes.js","sourceRoot":"","sources":["../../src/http-status-codes.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,qCAAqC,CAAC;AACpD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-rate-limiter.js","sourceRoot":"","sources":["../../../src/rate-limit/in-memory-rate-limiter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limit.js","sourceRoot":"","sources":["../../../src/rate-limit/rate-limit.ts"],"names":[],"mappings":"AAGA,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAoB,EACpB,MAAuB,EACvB,WAAmB,EACnB,QAAgB;IAEhB,OAAO,CACL,GAAG;QACD,oEAAoE;SACnE,MAAM,CAAC,mBAAmB,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9C,6CAA6C;SAC5C,MAAM,CAAC,uBAAuB,EAAE,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QAC7D,iEAAiE;SAChE,MAAM,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,iBAAiB,CAAC,EAAE,CAAC;QACrF,qEAAqE;SACpE,MAAM,CAAC,oBAAoB,EAAE,GAAG,WAAW,MAAM,QAAQ,yBAAyB,CAAC,CACvF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,EAAU;IACpC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limit.types.js","sourceRoot":"","sources":["../../../src/rate-limit/rate-limit.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ExpressApplication } from './utils/express.utils';
|
|
2
1
|
import { DeleteEndpoint, GetEndpoint, PatchEndpoint, PostEndpoint, PutEndpoint, RequestContext, ResponseOrValue } from './router';
|
|
2
|
+
import { ExpressApplication } from './utils/express.utils';
|
|
3
3
|
/**
|
|
4
4
|
* Helper utility for organizing and mounting routes.
|
|
5
5
|
* Provides a fluent interface for registering multiple handlers.
|
package/dist/esm/route-table.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-table.js","sourceRoot":"","sources":["../../src/route-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,GAMT,MAAM,UAAU,CAAC;AAGlB;;;GAGG;AACH,MAAM,OAAO,UAAU;IACrB,YAA6B,GAAuB;QAAvB,QAAG,GAAH,GAAG,CAAoB;IAAG,CAAC;IAIxD,GAAG,CACD,IAAY,EACZ,aAAyG;QAEzG,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAA0B,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAe,IAAY,EAAE,QAAoC;QACnE,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAe,IAAY,EAAE,QAAqC;QACrE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAe,IAAY,EAAE,QAAmC;QACjE,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAID,MAAM,CAAC,IAAY,EAAE,aAAwE;QAC3F,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAuB;IACtD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
|
package/dist/esm/router.d.ts
CHANGED
|
@@ -55,14 +55,14 @@ export type GetListEndpoint<ResultElementType = unknown> = EndpointBase<RequestC
|
|
|
55
55
|
/** Descriptor for GET routes. */
|
|
56
56
|
export type GetEndpoint<Result = unknown> = EndpointBase<RequestContext, Result>;
|
|
57
57
|
/** Descriptor for POST routes. */
|
|
58
|
-
export interface PostEndpoint<Body = unknown, Result =
|
|
58
|
+
export interface PostEndpoint<Body = unknown, Result = void> extends EndpointBase<RequestContext<Body>, Result> {
|
|
59
59
|
/** Request body validator. */
|
|
60
60
|
$body: Body extends object ? ObjectAssertion<Body> : Assertion<Body>;
|
|
61
61
|
}
|
|
62
62
|
/** Same as POST. Used for full object updates. */
|
|
63
|
-
export type PutEndpoint<Body = unknown, Result =
|
|
63
|
+
export type PutEndpoint<Body = unknown, Result = void> = PostEndpoint<Body, Result>;
|
|
64
64
|
/** Same as PUT. While PUT is used for the whole object update, PATCH is used for a partial update. */
|
|
65
|
-
export type PatchEndpoint<Body = unknown, Result =
|
|
65
|
+
export type PatchEndpoint<Body = unknown, Result = void> = PutEndpoint<Body, Result>;
|
|
66
66
|
/** Descriptor for DELETE routes. */
|
|
67
67
|
export type DeleteEndpoint = EndpointBase<RequestContext, void>;
|
|
68
68
|
/** Union type for all route registration info objects. */
|
package/dist/esm/router.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { callValueAssertion, getMessageFromError, validateObject, } from '@fishka/assertions';
|
|
2
2
|
import * as url from 'url';
|
|
3
|
-
import { HttpError, URL_PARAMETER_INFO
|
|
4
|
-
import { HTTP_BAD_REQUEST, HTTP_OK } from './http-status-codes';
|
|
3
|
+
import { assertHttp, HttpError, URL_PARAMETER_INFO } from './api.types';
|
|
5
4
|
import { catchRouteErrors } from './error-handling';
|
|
5
|
+
import { HTTP_BAD_REQUEST, HTTP_OK } from './http-status-codes';
|
|
6
6
|
import { getRequestLocalStorage } from './thread-local/thread-local-storage';
|
|
7
7
|
import { wrapAsApiResponse } from './utils/conversion.utils';
|
|
8
8
|
// ============================================================================
|
|
@@ -186,7 +186,7 @@ function newRequestContext(requestBody, req, res) {
|
|
|
186
186
|
params: {
|
|
187
187
|
get: (key) => {
|
|
188
188
|
const value = req.params[key];
|
|
189
|
-
|
|
189
|
+
assertHttp(value, HTTP_BAD_REQUEST, `Path parameter '${key}' not found`);
|
|
190
190
|
return value;
|
|
191
191
|
},
|
|
192
192
|
tryGet: (key) => req.params[key],
|
|
@@ -201,3 +201,4 @@ function newRequestContext(requestBody, req, res) {
|
|
|
201
201
|
state: new Map(),
|
|
202
202
|
};
|
|
203
203
|
}
|
|
204
|
+
//# sourceMappingURL=router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-local-storage-middleware.js","sourceRoot":"","sources":["../../../src/thread-local/thread-local-storage-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,KAAK,EAAE,GAAmB,EAAE,IAAqB,EAAE,IAAkB,EAAiB,EAAE;QAC7F,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,MAAM,UAAU,GAAI,GAA+B,CAAC,SAAS,IAAI,QAAQ,CAAC;QAC1E,MAAM,SAAS,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QAE7E,8CAA8C;QAC9C,MAAM,qBAAqB,CACzB;YACE,SAAS;SACV,EACD,KAAK,IAAI,EAAE;YACT,IAAI,EAAE,CAAC;QACT,CAAC,CACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-local-storage.js","sourceRoot":"","sources":["../../../src/thread-local/thread-local-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAchD;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAmB,CAAC;AAEnE;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,iBAAiB,CAAC,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAI,IAAqB,EAAE,QAA0B;IAC9F,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversion.utils.js","sourceRoot":"","sources":["../../../src/utils/conversion.utils.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,KAAoB;IAClD,MAAM,gBAAgB,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7F,OAAO,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC;AAC1E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAc,wBAA4C;IACzF,IAAI,WAAW,GAAmB,wBAA0C,CAAC;IAC7E,WAAW,GAAG,WAAW,EAAE,MAAM;QAC/B,CAAC,CAAC,WAAW,CAAC,kEAAkE;QAChF,CAAC,CAAiB,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC,wDAAwD;IAClH,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"express.utils.js","sourceRoot":"","sources":["../../../src/utils/express.utils.ts"],"names":[],"mappings":""}
|