quantum-flow 1.19.0 → 1.20.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 CHANGED
@@ -49,6 +49,7 @@ import {
49
49
  import {IsString} from 'class-validator'
50
50
  import { Catch, Cors, Sanitize, Use, SANITIZER } from 'quantum-flow/middlewares';
51
51
  import { InjectWS } from 'quantum-flow/ws';
52
+ import { HttpRequest } from 'quantum-flow/http';
52
53
  // SANITIZER - prefilled Joi shema for common data
53
54
  class UserDto {
54
55
  constructor() {}
@@ -77,14 +78,13 @@ export class User {
77
78
  @Cors({ origin: '*' })
78
79
  async createUser(
79
80
  @Body(UserDto) body: UserDto,
80
- @Query() query: any,
81
- @Headers() headers: any,
82
- @Params(ParamDTO, 'param') params: any,
83
- @Request() req: any,
84
- @Response() resp: any,
81
+ @Query() query: Record<string, string | string[]>,
82
+ @Headers() headers: Record<string, string | string[]>,
83
+ @Params(ParamDTO, 'param') params: string,
84
+ @Request() req: HttpRequest,
85
+ @Response() resp: ServerResponse,
85
86
  @InjectWS() ws: IWebSocketService,
86
- ) {
87
- }
87
+ ) {}
88
88
 
89
89
  @ANY([...middlewares])
90
90
  async any(@Response() resp: any) {...}
@@ -94,7 +94,7 @@ export class User {
94
94
  @Controller({
95
95
  prefix: 'api',
96
96
  controllers: [UserController, SocketController],
97
- middelwares: [...middlewares],
97
+ middlewares: [...middlewares],
98
98
  interceptor: (data, req, res) => data,
99
99
  })
100
100
  @Catch((error) => ({ status: 400, error }))
@@ -146,18 +146,20 @@ Use `LambdaAdapter` to convert API Gateway events to requests and responses. Cre
146
146
 
147
147
  ```typescript
148
148
  Example Lambda handler creation
149
- import { LambdaAdapter } from 'quantum-flow/aws';
150
-
151
- let dbConnection = null;
152
-
153
- @Controller({
154
- prefix: 'api',
155
- controllers: [UserController, SocketController],
156
- })
157
- class RootController {}
158
- const lambdaAdapter = new LambdaAdapter(Root);
159
- lambdaAdapter.usePlugin(metricsPlugin);
149
+ import { LambdaAdapter, LambdaRequest, Request } from 'quantum-flow/aws';
160
150
 
151
+ @Controller({ prefix: 'user' })
152
+ class UserController {
153
+ @Body(UserDto) body: UserDto,
154
+ @Query() query: Record<string, string | string[]>,
155
+ @Headers() headers: Record<string, string | string[]>,
156
+ @Params(ParamDTO, 'param') params: string,
157
+ @Request() req: LambdaRequest,
158
+ @Response() resp: ServerResponse,
159
+ @InjectWS() ws: IWebSocketService,
160
+ ) {}
161
+ }
162
+ const lambdaAdapter = new LambdaAdapter(UserController);
161
163
  export const handler = lambdaAdapter.handler;
162
164
  ```
163
165
 
@@ -411,7 +413,7 @@ export class MetricsController {...}
411
413
  class App {}
412
414
 
413
415
  const server = new HttpServer(App);
414
- server.usePlugun(metricsPlugin)
416
+ server.usePligun(metricsPlugin)
415
417
  server.listen().catch(console.error);
416
418
 
417
419
  // Lambda setup
@@ -1,2 +1,3 @@
1
+ export { LambdaEvent, LambdaRequest } from '../../types/index.js';
2
+ export { Request } from '../../core';
1
3
  export * from './lambda';
2
- export * from './decorators';
@@ -14,6 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Request = void 0;
18
+ var core_1 = require("../../core");
19
+ Object.defineProperty(exports, "Request", { enumerable: true, get: function () { return core_1.Request; } });
17
20
  __exportStar(require("./lambda"), exports);
18
- __exportStar(require("./decorators"), exports);
19
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/app/aws/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/app/aws/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,mCAAqC;AAA5B,+FAAA,OAAO,OAAA;AAChB,2CAAyB"}
@@ -66,14 +66,14 @@ class LambdaAdapter extends plugin_1.Plugin {
66
66
  if ((0, _utils_1.getErrorType)(processed?.data).isError) {
67
67
  return this.handleError(processed?.data, event, context);
68
68
  }
69
+ console.log(processed);
69
70
  return this.toLambdaResponse(processed?.data, request, response, eventType);
70
71
  }
71
72
  toLambdaResponse(data, request, response, eventType) {
72
- const statusCode = data.status ?? response.statusCode ?? 200;
73
+ const statusCode = data?.status ?? response?.statusCode ?? 200;
73
74
  const headers = {
74
75
  'Content-Type': 'application/json',
75
76
  'X-Request-Id': request.requestId,
76
- ...(data.headers || {}),
77
77
  ...response.headers,
78
78
  };
79
79
  const originHeader = request.headers['origin'] || request.headers['Origin'];
@@ -95,13 +95,13 @@ class LambdaAdapter extends plugin_1.Plugin {
95
95
  }
96
96
  const body = JSON.stringify({
97
97
  success: statusCode < 400,
98
- data: data.data ?? data.error,
98
+ data: data?.data ?? data?.error ?? data,
99
99
  timestamp: new Date().toISOString(),
100
100
  });
101
101
  const commonResponse = {
102
102
  statusCode,
103
103
  headers,
104
- body: data.data ?? data.error,
104
+ body: data?.data ?? data?.error ?? data,
105
105
  timestamp: new Date().toISOString(),
106
106
  };
107
107
  this.callPluginHook('afterResponse', request, response);
@@ -123,11 +123,7 @@ class LambdaAdapter extends plugin_1.Plugin {
123
123
  : undefined,
124
124
  };
125
125
  default:
126
- return {
127
- statusCode,
128
- headers,
129
- body,
130
- };
126
+ return { statusCode, headers, body };
131
127
  }
132
128
  }
133
129
  handleError(error, event, context) {
@@ -1 +1 @@
1
- {"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../src/app/aws/lambda.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../src/app/aws/lambda.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { HTTP_METHODS, ILRequest, LambdaEvent, MultipartFile } from '../../../types/index.js';
1
+ import { HTTP_METHODS, LambdaEvent, LambdaRequest, MultipartFile } from '../../../types/index.js';
2
2
  import { Context } from 'aws-lambda';
3
- export declare class LRequest implements ILRequest {
3
+ export declare class LRequest implements LambdaRequest {
4
4
  requestUrl: URL;
5
5
  method: HTTP_METHODS;
6
6
  path?: string;
@@ -18,6 +18,8 @@ export declare class LRequest implements ILRequest {
18
18
  stage?: string;
19
19
  userAgent: string;
20
20
  sourceIp: string;
21
+ event: LambdaEvent;
22
+ context: Context;
21
23
  constructor(lambdaEvent: LambdaEvent, context: Context);
22
24
  end(): void;
23
25
  }
@@ -20,9 +20,13 @@ class LRequest {
20
20
  stage;
21
21
  userAgent;
22
22
  sourceIp;
23
+ event;
24
+ context;
23
25
  constructor(lambdaEvent, context) {
24
26
  const event = (0, helpers_1.normalizeEvent)(lambdaEvent, (0, helpers_1.getEventType)(lambdaEvent));
25
27
  const query = {};
28
+ this.event = lambdaEvent;
29
+ this.context = context;
26
30
  if (event.multiValueQueryStringParameters) {
27
31
  Object.entries(event.multiValueQueryStringParameters).forEach(([key, value]) => {
28
32
  query[key] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../../src/app/aws/utils/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../../src/app/aws/utils/request.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,43 @@
1
1
  import { ServerConfig } from '../../types/index.js';
2
+ /**
3
+ * Class decorator to configure the server with the given options.
4
+ *
5
+ * @param {ServerConfig} config - Configuration options for the server.
6
+ *
7
+ * Usage:
8
+ * ```ts
9
+ * @Server({ port: 3000, controllers: [...], middlewares: [...] })
10
+ * class MyServer {}
11
+ * ```
12
+ *
13
+ * This decorator merges the provided configuration with any existing metadata on the target class.
14
+ */
2
15
  export declare function Server(config?: ServerConfig): (target: any) => any;
16
+ /**
17
+ * Class decorator to set the port number for the server.
18
+ *
19
+ * @param {number} port - The port number to listen on.
20
+ *
21
+ * Usage:
22
+ * ```ts
23
+ * @Port(8080)
24
+ * class MyServer {}
25
+ * ```
26
+ *
27
+ * This decorator updates the server metadata with the specified port.
28
+ */
3
29
  export declare function Port(port: number): (target: any) => any;
30
+ /**
31
+ * Class decorator to set the host for the server.
32
+ *
33
+ * @param {string} host - The hostname or IP address to bind the server.
34
+ *
35
+ * Usage:
36
+ * ```ts
37
+ * @Host('localhost')
38
+ * class MyServer {}
39
+ * ```
40
+ *
41
+ * This decorator updates the server metadata with the specified host.
42
+ */
4
43
  export declare function Host(host: string): (target: any) => any;
@@ -4,6 +4,19 @@ exports.Server = Server;
4
4
  exports.Port = Port;
5
5
  exports.Host = Host;
6
6
  const _constants_1 = require("../../constants.js");
7
+ /**
8
+ * Class decorator to configure the server with the given options.
9
+ *
10
+ * @param {ServerConfig} config - Configuration options for the server.
11
+ *
12
+ * Usage:
13
+ * ```ts
14
+ * @Server({ port: 3000, controllers: [...], middlewares: [...] })
15
+ * class MyServer {}
16
+ * ```
17
+ *
18
+ * This decorator merges the provided configuration with any existing metadata on the target class.
19
+ */
7
20
  function Server(config = {}) {
8
21
  return function (target) {
9
22
  const existingConfig = Reflect.getMetadata(_constants_1.SERVER_CONFIG_KEY, target) || {};
@@ -19,6 +32,19 @@ function Server(config = {}) {
19
32
  return target;
20
33
  };
21
34
  }
35
+ /**
36
+ * Class decorator to set the port number for the server.
37
+ *
38
+ * @param {number} port - The port number to listen on.
39
+ *
40
+ * Usage:
41
+ * ```ts
42
+ * @Port(8080)
43
+ * class MyServer {}
44
+ * ```
45
+ *
46
+ * This decorator updates the server metadata with the specified port.
47
+ */
22
48
  function Port(port) {
23
49
  return function (target) {
24
50
  const existingConfig = Reflect.getMetadata(_constants_1.SERVER_CONFIG_KEY, target) || {};
@@ -29,6 +55,19 @@ function Port(port) {
29
55
  return target;
30
56
  };
31
57
  }
58
+ /**
59
+ * Class decorator to set the host for the server.
60
+ *
61
+ * @param {string} host - The hostname or IP address to bind the server.
62
+ *
63
+ * Usage:
64
+ * ```ts
65
+ * @Host('localhost')
66
+ * class MyServer {}
67
+ * ```
68
+ *
69
+ * This decorator updates the server metadata with the specified host.
70
+ */
32
71
  function Host(host) {
33
72
  return function (target) {
34
73
  const existingConfig = Reflect.getMetadata(_constants_1.SERVER_CONFIG_KEY, target) || {};
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/app/http/decorators.ts"],"names":[],"mappings":";;AAGA,wBAiBC;AAED,oBAeC;AACD,oBAeC;AArDD,2CAA+C;AAG/C,SAAgB,MAAM,CAAC,SAAuB,EAAE;IAC9C,OAAO,UAAU,MAAW;QAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5E,MAAM,YAAY,GAAG;YACnB,GAAG,cAAc;YACjB,GAAG,MAAM;YACT,WAAW,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACnF,WAAW,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACnF,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,YAAY,EAAE,cAAc,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW;SAC/D,CAAC;QAEF,OAAO,CAAC,cAAc,CAAC,8BAAiB,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QAEhE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,IAAI,CAAC,IAAY;IAC/B,OAAO,UAAU,MAAW;QAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5E,OAAO,CAAC,cAAc,CACpB,8BAAiB,EACjB;YACE,GAAG,cAAc;YACjB,IAAI;SACL,EACD,MAAM,CACP,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AACD,SAAgB,IAAI,CAAC,IAAY;IAC/B,OAAO,UAAU,MAAW;QAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5E,OAAO,CAAC,cAAc,CACpB,8BAAiB,EACjB;YACE,GAAG,cAAc;YACjB,IAAI;SACL,EACD,MAAM,CACP,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/app/http/decorators.ts"],"names":[],"mappings":";;AAgBA,wBAiBC;AAeD,oBAeC;AAeD,oBAeC;AA7FD,2CAA+C;AAG/C;;;;;;;;;;;;GAYG;AACH,SAAgB,MAAM,CAAC,SAAuB,EAAE;IAC9C,OAAO,UAAU,MAAW;QAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5E,MAAM,YAAY,GAAG;YACnB,GAAG,cAAc;YACjB,GAAG,MAAM;YACT,WAAW,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACnF,WAAW,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACnF,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,YAAY,EAAE,cAAc,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW;SAC/D,CAAC;QAEF,OAAO,CAAC,cAAc,CAAC,8BAAiB,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QAEhE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,IAAI,CAAC,IAAY;IAC/B,OAAO,UAAU,MAAW;QAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5E,OAAO,CAAC,cAAc,CACpB,8BAAiB,EACjB;YACE,GAAG,cAAc;YACjB,IAAI;SACL,EACD,MAAM,CACP,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,IAAI,CAAC,IAAY;IAC/B,OAAO,UAAU,MAAW;QAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5E,OAAO,CAAC,cAAc,CACpB,8BAAiB,EACjB;YACE,GAAG,cAAc;YACjB,IAAI;SACL,EACD,MAAM,CACP,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC"}
@@ -1,2 +1,3 @@
1
+ export { HttpRequest } from '../../types/index.js';
1
2
  export * from './Application';
2
3
  export * from './decorators';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/app/http/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/app/http/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,gDAA8B;AAC9B,+CAA6B"}
@@ -1,38 +1,94 @@
1
1
  /**
2
2
  * Parameter decorator to extract and validate the request body.
3
- * @param dto Optional DTO class for validation and transformation.
3
+ *
4
+ * @param {any} [dto] - Optional DTO class for validation and transformation.
5
+ *
6
+ * Usage:
7
+ * ```ts
8
+ * @Body() body: any
9
+ * @Body(UserDto) user: UserDto
10
+ * ```
4
11
  */
5
12
  export declare const Body: (dto?: any) => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
6
13
  /**
7
14
  * Parameter decorator to extract route parameters.
8
- * @param name Optional name of the parameter to extract.
15
+ *
16
+ * @param {any} [dto] - Optional DTO class for validation and transformation.
17
+ * @param {string} [name] - Optional name of the parameter to extract.
18
+ *
19
+ * Usage:
20
+ * ```ts
21
+ * @Params() params: any
22
+ * @Params('id') id: string
23
+ * @Params(UserParamsDto) params: UserParamsDto
24
+ * ```
9
25
  */
10
26
  export declare const Params: (dto?: any, name?: string) => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
11
27
  /**
12
28
  * Parameter decorator to extract query parameters.
13
- * @param name Optional name of the query parameter to extract.
29
+ *
30
+ * @param {any} [dto] - Optional DTO class for validation and transformation.
31
+ * @param {string} [name] - Optional name of the query parameter to extract.
32
+ *
33
+ * Usage:
34
+ * ```ts
35
+ * @Query() query: any
36
+ * @Query('search') search: string
37
+ * @Query(SearchDto) query: SearchDto
38
+ * ```
14
39
  */
15
40
  export declare const Query: (dto?: any, name?: string) => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
16
41
  /**
17
42
  * Parameter decorator to inject the entire request object.
43
+ *
44
+ * Usage:
45
+ * ```ts
46
+ * @Request() req: Request
47
+ * ```
18
48
  */
19
49
  export declare const Request: () => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
20
50
  /**
21
51
  * Parameter decorator to extract headers from the request.
22
- * @param name Optional name of the header to extract.
52
+ *
53
+ * @param {string} [name] - Optional name of the header to extract.
54
+ *
55
+ * Usage:
56
+ * ```ts
57
+ * @Headers() headers: Headers
58
+ * @Headers('authorization') authHeader: string
59
+ * ```
23
60
  */
24
61
  export declare const Headers: (name?: string) => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
25
62
  /**
26
63
  * Parameter decorator to extract cookies from the request.
27
- * @param name Optional name of the cookie to extract.
64
+ *
65
+ * @param {string} [name] - Optional name of the cookie to extract.
66
+ *
67
+ * Usage:
68
+ * ```ts
69
+ * @Cookies() cookies: any
70
+ * @Cookies('sessionId') sessionId: string
71
+ * ```
28
72
  */
29
73
  export declare const Cookies: (name?: string) => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
30
74
  /**
31
75
  * Parameter decorator to extract multipart form data.
32
- * @param name Optional name of the multipart field to extract.
76
+ *
77
+ * @param {string} [name] - Optional name of the multipart field to extract.
78
+ *
79
+ * Usage:
80
+ * ```ts
81
+ * @Multipart() multipartData: any
82
+ * @Multipart('file') file: File
83
+ * ```
33
84
  */
34
85
  export declare const Multipart: (name?: string) => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
35
86
  /**
36
87
  * Parameter decorator to inject the response object.
88
+ *
89
+ * Usage:
90
+ * ```ts
91
+ * @Response() res: Response
92
+ * ```
37
93
  */
38
94
  export declare const Response: () => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
@@ -4,47 +4,103 @@ exports.Response = exports.Multipart = exports.Cookies = exports.Headers = expor
4
4
  const _utils_1 = require("../utils/index.js");
5
5
  /**
6
6
  * Parameter decorator to extract and validate the request body.
7
- * @param dto Optional DTO class for validation and transformation.
7
+ *
8
+ * @param {any} [dto] - Optional DTO class for validation and transformation.
9
+ *
10
+ * Usage:
11
+ * ```ts
12
+ * @Body() body: any
13
+ * @Body(UserDto) user: UserDto
14
+ * ```
8
15
  */
9
16
  const Body = (dto) => (0, _utils_1.createParamDecorator)('body', dto);
10
17
  exports.Body = Body;
11
18
  /**
12
19
  * Parameter decorator to extract route parameters.
13
- * @param name Optional name of the parameter to extract.
20
+ *
21
+ * @param {any} [dto] - Optional DTO class for validation and transformation.
22
+ * @param {string} [name] - Optional name of the parameter to extract.
23
+ *
24
+ * Usage:
25
+ * ```ts
26
+ * @Params() params: any
27
+ * @Params('id') id: string
28
+ * @Params(UserParamsDto) params: UserParamsDto
29
+ * ```
14
30
  */
15
31
  const Params = (dto, name) => (0, _utils_1.createParamDecorator)('params', typeof dto == 'string' ? undefined : dto, typeof dto == 'string' ? dto : name);
16
32
  exports.Params = Params;
17
33
  /**
18
34
  * Parameter decorator to extract query parameters.
19
- * @param name Optional name of the query parameter to extract.
35
+ *
36
+ * @param {any} [dto] - Optional DTO class for validation and transformation.
37
+ * @param {string} [name] - Optional name of the query parameter to extract.
38
+ *
39
+ * Usage:
40
+ * ```ts
41
+ * @Query() query: any
42
+ * @Query('search') search: string
43
+ * @Query(SearchDto) query: SearchDto
44
+ * ```
20
45
  */
21
46
  const Query = (dto, name) => (0, _utils_1.createParamDecorator)('query', typeof dto == 'string' ? undefined : dto, typeof dto == 'string' ? dto : name);
22
47
  exports.Query = Query;
23
48
  /**
24
49
  * Parameter decorator to inject the entire request object.
50
+ *
51
+ * Usage:
52
+ * ```ts
53
+ * @Request() req: Request
54
+ * ```
25
55
  */
26
56
  const Request = () => (0, _utils_1.createParamDecorator)('request');
27
57
  exports.Request = Request;
28
58
  /**
29
59
  * Parameter decorator to extract headers from the request.
30
- * @param name Optional name of the header to extract.
60
+ *
61
+ * @param {string} [name] - Optional name of the header to extract.
62
+ *
63
+ * Usage:
64
+ * ```ts
65
+ * @Headers() headers: Headers
66
+ * @Headers('authorization') authHeader: string
67
+ * ```
31
68
  */
32
69
  const Headers = (name) => (0, _utils_1.createParamDecorator)('headers', undefined, name);
33
70
  exports.Headers = Headers;
34
71
  /**
35
72
  * Parameter decorator to extract cookies from the request.
36
- * @param name Optional name of the cookie to extract.
73
+ *
74
+ * @param {string} [name] - Optional name of the cookie to extract.
75
+ *
76
+ * Usage:
77
+ * ```ts
78
+ * @Cookies() cookies: any
79
+ * @Cookies('sessionId') sessionId: string
80
+ * ```
37
81
  */
38
82
  const Cookies = (name) => (0, _utils_1.createParamDecorator)('cookies', undefined, name);
39
83
  exports.Cookies = Cookies;
40
84
  /**
41
85
  * Parameter decorator to extract multipart form data.
42
- * @param name Optional name of the multipart field to extract.
86
+ *
87
+ * @param {string} [name] - Optional name of the multipart field to extract.
88
+ *
89
+ * Usage:
90
+ * ```ts
91
+ * @Multipart() multipartData: any
92
+ * @Multipart('file') file: File
93
+ * ```
43
94
  */
44
95
  const Multipart = (name) => (0, _utils_1.createParamDecorator)('multipart', undefined, name);
45
96
  exports.Multipart = Multipart;
46
97
  /**
47
98
  * Parameter decorator to inject the response object.
99
+ *
100
+ * Usage:
101
+ * ```ts
102
+ * @Response() res: Response
103
+ * ```
48
104
  */
49
105
  const Response = () => (0, _utils_1.createParamDecorator)('response');
50
106
  exports.Response = Response;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/core/decorators.ts"],"names":[],"mappings":";;;AAAA,mCAA8C;AAE9C;;;GAGG;AACI,MAAM,IAAI,GAAG,CAAC,GAAS,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAAxD,QAAA,IAAI,QAAoD;AAErE;;;GAGG;AACI,MAAM,MAAM,GAAG,CAAC,GAAS,EAAE,IAAa,EAAE,EAAE,CACjD,IAAA,6BAAoB,EAClB,QAAQ,EACR,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EACxC,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CACpC,CAAC;AALS,QAAA,MAAM,UAKf;AAEJ;;;GAGG;AACI,MAAM,KAAK,GAAG,CAAC,GAAS,EAAE,IAAa,EAAE,EAAE,CAChD,IAAA,6BAAoB,EAClB,OAAO,EACP,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EACxC,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CACpC,CAAC;AALS,QAAA,KAAK,SAKd;AAEJ;;GAEG;AACI,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,CAAC,CAAC;AAAhD,QAAA,OAAO,WAAyC;AAE7D;;;GAGG;AACI,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAA9E,QAAA,OAAO,WAAuE;AAE3F;;;GAGG;AACI,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAA9E,QAAA,OAAO,WAAuE;AAE3F;;;GAGG;AACI,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAAlF,QAAA,SAAS,aAAyE;AAE/F;;GAEG;AACI,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAoB,EAAC,UAAU,CAAC,CAAC;AAAlD,QAAA,QAAQ,YAA0C"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/core/decorators.ts"],"names":[],"mappings":";;;AAAA,mCAA8C;AAE9C;;;;;;;;;;GAUG;AACI,MAAM,IAAI,GAAG,CAAC,GAAS,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAAxD,QAAA,IAAI,QAAoD;AAErE;;;;;;;;;;;;GAYG;AACI,MAAM,MAAM,GAAG,CAAC,GAAS,EAAE,IAAa,EAAE,EAAE,CACjD,IAAA,6BAAoB,EAClB,QAAQ,EACR,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EACxC,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CACpC,CAAC;AALS,QAAA,MAAM,UAKf;AAEJ;;;;;;;;;;;;GAYG;AACI,MAAM,KAAK,GAAG,CAAC,GAAS,EAAE,IAAa,EAAE,EAAE,CAChD,IAAA,6BAAoB,EAClB,OAAO,EACP,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EACxC,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CACpC,CAAC;AALS,QAAA,KAAK,SAKd;AAEJ;;;;;;;GAOG;AACI,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,CAAC,CAAC;AAAhD,QAAA,OAAO,WAAyC;AAE7D;;;;;;;;;;GAUG;AACI,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAA9E,QAAA,OAAO,WAAuE;AAE3F;;;;;;;;;;GAUG;AACI,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAA9E,QAAA,OAAO,WAAuE;AAE3F;;;;;;;;;;GAUG;AACI,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAAlF,QAAA,SAAS,aAAyE;AAE/F;;;;;;;GAOG;AACI,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAoB,EAAC,UAAU,CAAC,CAAC;AAAlD,QAAA,QAAQ,YAA0C"}
@@ -1,6 +1,52 @@
1
1
  export type SSEHandlerType = 'connection' | 'close' | 'error';
2
+ /**
3
+ * Method decorator to handle specific SSE events.
4
+ *
5
+ * @param {SSEHandlerType} type - The type of SSE event to handle ('connection', 'close', 'error').
6
+ *
7
+ * Usage:
8
+ * ```ts
9
+ * @OnSSE('connection')
10
+ * onConnect() {}
11
+ * ```
12
+ */
2
13
  export declare function OnSSE(type: SSEHandlerType): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
14
+ /**
15
+ * Method decorator to handle SSE connection events.
16
+ *
17
+ * Usage:
18
+ * ```ts
19
+ * @OnSSEConnection()
20
+ * onConnect() {}
21
+ * ```
22
+ */
3
23
  export declare function OnSSEConnection(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
24
+ /**
25
+ * Method decorator to handle SSE close events.
26
+ *
27
+ * Usage:
28
+ * ```ts
29
+ * @OnSSEClose()
30
+ * onClose() {}
31
+ * ```
32
+ */
4
33
  export declare function OnSSEClose(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
34
+ /**
35
+ * Method decorator to handle SSE error events.
36
+ *
37
+ * Usage:
38
+ * ```ts
39
+ * @OnSSEError()
40
+ * onError() {}
41
+ * ```
42
+ */
5
43
  export declare function OnSSEError(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
44
+ /**
45
+ * Parameter decorator to inject the SSE instance.
46
+ *
47
+ * Usage:
48
+ * ```ts
49
+ * someMethod(@InjectSSE() sse) {}
50
+ * ```
51
+ */
6
52
  export declare function InjectSSE(): (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
@@ -7,6 +7,17 @@ exports.OnSSEError = OnSSEError;
7
7
  exports.InjectSSE = InjectSSE;
8
8
  const _constants_1 = require("../constants.js");
9
9
  const _utils_1 = require("../utils/index.js");
10
+ /**
11
+ * Method decorator to handle specific SSE events.
12
+ *
13
+ * @param {SSEHandlerType} type - The type of SSE event to handle ('connection', 'close', 'error').
14
+ *
15
+ * Usage:
16
+ * ```ts
17
+ * @OnSSE('connection')
18
+ * onConnect() {}
19
+ * ```
20
+ */
10
21
  function OnSSE(type) {
11
22
  return function (target, propertyKey, descriptor) {
12
23
  const handlers = Reflect.getMetadata(_constants_1.SSE_METADATA_KEY, target.constructor) || [];
@@ -15,15 +26,50 @@ function OnSSE(type) {
15
26
  return descriptor;
16
27
  };
17
28
  }
29
+ /**
30
+ * Method decorator to handle SSE connection events.
31
+ *
32
+ * Usage:
33
+ * ```ts
34
+ * @OnSSEConnection()
35
+ * onConnect() {}
36
+ * ```
37
+ */
18
38
  function OnSSEConnection() {
19
39
  return OnSSE('connection');
20
40
  }
41
+ /**
42
+ * Method decorator to handle SSE close events.
43
+ *
44
+ * Usage:
45
+ * ```ts
46
+ * @OnSSEClose()
47
+ * onClose() {}
48
+ * ```
49
+ */
21
50
  function OnSSEClose() {
22
51
  return OnSSE('close');
23
52
  }
53
+ /**
54
+ * Method decorator to handle SSE error events.
55
+ *
56
+ * Usage:
57
+ * ```ts
58
+ * @OnSSEError()
59
+ * onError() {}
60
+ * ```
61
+ */
24
62
  function OnSSEError() {
25
63
  return OnSSE('error');
26
64
  }
65
+ /**
66
+ * Parameter decorator to inject the SSE instance.
67
+ *
68
+ * Usage:
69
+ * ```ts
70
+ * someMethod(@InjectSSE() sse) {}
71
+ * ```
72
+ */
27
73
  function InjectSSE() {
28
74
  return (0, _utils_1.createParamDecorator)('sse');
29
75
  }
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/sse/decorators.ts"],"names":[],"mappings":";;AAKA,sBAOC;AAED,0CAEC;AAED,gCAEC;AAED,gCAEC;AAED,8BAEC;AA5BD,2CAA8C;AAC9C,mCAA8C;AAI9C,SAAgB,KAAK,CAAC,IAAoB;IACxC,OAAO,UAAU,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAC/E,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,6BAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACjF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,cAAc,CAAC,6BAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,eAAe;IAC7B,OAAO,KAAK,CAAC,YAAY,CAAC,CAAC;AAC7B,CAAC;AAED,SAAgB,UAAU;IACxB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;AAED,SAAgB,UAAU;IACxB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;AAED,SAAgB,SAAS;IACvB,OAAO,IAAA,6BAAoB,EAAC,KAAK,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/sse/decorators.ts"],"names":[],"mappings":";;AAgBA,sBAOC;AAWD,0CAEC;AAWD,gCAEC;AAWD,gCAEC;AAUD,8BAEC;AA1ED,2CAA8C;AAC9C,mCAA8C;AAI9C;;;;;;;;;;GAUG;AACH,SAAgB,KAAK,CAAC,IAAoB;IACxC,OAAO,UAAU,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAC/E,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,6BAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACjF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,cAAc,CAAC,6BAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,eAAe;IAC7B,OAAO,KAAK,CAAC,YAAY,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,UAAU;IACxB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,UAAU;IACxB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS;IACvB,OAAO,IAAA,6BAAoB,EAAC,KAAK,CAAC,CAAC;AACrC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { IncomingMessage, ServerResponse } from 'http';
2
- import { LambdaRequest } from './lambda';
2
+ import { LambdaRequestMeta } from './lambda';
3
3
  import { MultipartFile } from './multipart';
4
4
  export interface HttpError extends Error {
5
5
  statusCode?: number;
@@ -10,7 +10,7 @@ export interface HttpError extends Error {
10
10
  message: string;
11
11
  }>;
12
12
  }
13
- export type AppRequest = {
13
+ type Request = {
14
14
  requestUrl: URL;
15
15
  method: HTTP_METHODS;
16
16
  path?: string;
@@ -24,7 +24,9 @@ export type AppRequest = {
24
24
  multipart?: Record<string, MultipartFile | MultipartFile[]>;
25
25
  _startTime: number;
26
26
  end: () => any;
27
- } & (IncomingMessage | LambdaRequest);
27
+ };
28
+ export type AppRequest = Request & (IncomingMessage | LambdaRequestMeta);
29
+ export type HttpRequest = Request & IncomingMessage;
28
30
  export type Router = (req: AppRequest, res?: ServerResponse) => Promise<{
29
31
  status: number;
30
32
  data: any;
@@ -62,3 +64,4 @@ export declare enum HTTP_METHODS {
62
64
  OPTIONS = "OPTIONS",
63
65
  HEAD = "HEAD"
64
66
  }
67
+ export {};
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":";;;AAoFA,IAAY,YASX;AATD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,2BAAW,CAAA;IACX,6BAAa,CAAA;IACb,+BAAe,CAAA;IACf,iCAAiB,CAAA;IACjB,2BAAW,CAAA;IACX,mCAAmB,CAAA;IACnB,6BAAa,CAAA;AACf,CAAC,EATW,YAAY,4BAAZ,YAAY,QASvB"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":";;;AAuFA,IAAY,YASX;AATD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,2BAAW,CAAA;IACX,6BAAa,CAAA;IACb,+BAAe,CAAA;IACf,iCAAiB,CAAA;IACjB,2BAAW,CAAA;IACX,mCAAmB,CAAA;IACnB,6BAAa,CAAA;AACf,CAAC,EATW,YAAY,4BAAZ,YAAY,QASvB"}
@@ -6,23 +6,75 @@ import { HttpPlugin } from './plugins';
6
6
  import { SanitizerConfig } from './sanitize';
7
7
  import { StaticConfig } from './static';
8
8
  export interface ServerConfig {
9
+ /**
10
+ * Port number the server listens on
11
+ * @type {number}
12
+ */
9
13
  port?: number;
14
+ /**
15
+ * Hostname or IP address
16
+ * @type {string}
17
+ */
10
18
  host?: string;
19
+ /**
20
+ * Array of middleware callback functions
21
+ * @type {MiddlewareCB[]}
22
+ */
11
23
  middlewares?: MiddlewareCB[];
24
+ /**
25
+ * Interceptor callback function
26
+ * @type {InterceptorCB}
27
+ */
12
28
  interceptor?: InterceptorCB;
29
+ /**
30
+ * Error handling callback
31
+ * @type {ErrorCB}
32
+ */
13
33
  errorHandler?: ErrorCB;
34
+ /**
35
+ * Array of controller types
36
+ * @type {ControllerType[]}
37
+ */
14
38
  controllers?: ControllerType[];
39
+ /**
40
+ * CORS configuration object
41
+ * @type {CORSConfig}
42
+ */
15
43
  cors?: CORSConfig;
44
+ /**
45
+ * Array of sanitizer configurations
46
+ * @type {SanitizerConfig[]}
47
+ */
16
48
  sanitizers?: SanitizerConfig[];
49
+ /**
50
+ * Array of static file serving configurations
51
+ * @type {StaticConfig[]}
52
+ */
17
53
  statics?: StaticConfig[];
54
+ /**
55
+ * WebSocket enablement and lazy loading
56
+ * @type {{ enabled: boolean; lazy?: boolean }}
57
+ */
18
58
  websocket?: {
19
59
  enabled: boolean;
20
60
  lazy?: boolean;
21
61
  };
62
+ /**
63
+ * Server-Sent Events enablement
64
+ * @type {{ enabled: boolean }}
65
+ */
22
66
  sse?: {
23
67
  enabled: boolean;
24
68
  };
69
+ /**
70
+ * Path for WebSocket connections
71
+ * @type {string}
72
+ */
25
73
  websocketPath?: string;
74
+ /**
75
+ * GraphQL configuration including playground, pubSub, and resolvers
76
+ * @type {{ playground?: boolean; pubSub?: PubSub; resolvers?: Function[] }}
77
+ */
26
78
  graphql?: {
27
79
  playground?: boolean;
28
80
  pubSub?: PubSub;
@@ -1,4 +1,4 @@
1
- import { APIGatewayProxyEvent, APIGatewayProxyEventV2, Handler } from 'aws-lambda';
1
+ import { APIGatewayProxyEvent, APIGatewayProxyEventV2, Context, Handler } from 'aws-lambda';
2
2
  import { HTTP_METHODS } from './common';
3
3
  import { ControllerClass } from './controller';
4
4
  import { MultipartFile } from './multipart';
@@ -43,9 +43,9 @@ export interface NormalizedEvent {
43
43
  cookies?: string[];
44
44
  requestContext: any;
45
45
  }
46
- export interface LambdaRequest {
47
- event?: any;
48
- context?: any;
46
+ export interface LambdaRequestMeta {
47
+ event: LambdaEvent;
48
+ context: Context;
49
49
  requestId?: string;
50
50
  stage?: string;
51
51
  sourceIp?: string;
@@ -66,7 +66,7 @@ export interface Lambda {
66
66
  beforeStart?: () => Promise<void>;
67
67
  handleRequest(request: any): Promise<any>;
68
68
  }
69
- export interface ILRequest {
69
+ export interface LambdaRequest {
70
70
  requestUrl: URL;
71
71
  method: HTTP_METHODS;
72
72
  path?: string;
@@ -2,7 +2,7 @@ import { Context } from 'aws-lambda';
2
2
  import { IncomingMessage, Server, ServerResponse } from 'http';
3
3
  import { AppRequest, MiddlewareCB } from './common';
4
4
  import { IHttpServer } from './http';
5
- import { ILambdaAdapter, ILRequest, ILResponse, LambdaEvent } from './lambda';
5
+ import { ILambdaAdapter, ILResponse, LambdaEvent, LambdaRequest } from './lambda';
6
6
  export interface HttpPluginHooks {
7
7
  beforeRequest?: (req: IncomingMessage) => void | Promise<void>;
8
8
  beforeRoute?: (req: AppRequest, response: ServerResponse) => void | Promise<void>;
@@ -20,8 +20,8 @@ export type PluginHookKeys = keyof HttpPluginHooks;
20
20
  export type PluginKeys = keyof Omit<HttpPlugin, 'name' | 'hooks'>;
21
21
  export interface LambdaPluginHooks {
22
22
  beforeRequest?: (event: LambdaEvent, context: Context) => void | Promise<void>;
23
- beforeRoute?: (req: ILRequest) => void | Promise<void>;
24
- afterResponse?: (req: ILRequest, res: ILResponse) => void | Promise<void>;
23
+ beforeRoute?: (req: LambdaRequest) => void | Promise<void>;
24
+ afterResponse?: (req: LambdaRequest, res: ILResponse) => void | Promise<void>;
25
25
  }
26
26
  export interface LambdaPlugin {
27
27
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/utils/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/utils/controller.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,17 @@
1
1
  import { ServerConfig } from '../types/index.js';
2
2
  import http from 'http';
3
+ /**
4
+ * Resolves the server configuration from a class or an object.
5
+ *
6
+ * @param configOrClass - Can be a class with decorators or a plain configuration object.
7
+ *
8
+ * @returns A complete ServerConfig object with defaults and merged properties.
9
+ *
10
+ * Behavior:
11
+ * - If a class is provided, extracts metadata from decorators to build the config.
12
+ * - If an object is provided, merges it with default values.
13
+ * - Defaults: port = 3000, host = 'localhost'.
14
+ * - Merges middleware, interceptors, errorHandler, cors, controllers, sanitizers from decorators or object.
15
+ */
3
16
  export declare const resolveConfig: (configOrClass?: any) => ServerConfig;
4
17
  export declare const collectRawBody: (req: http.IncomingMessage) => Promise<Buffer>;
@@ -2,6 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.collectRawBody = exports.resolveConfig = void 0;
4
4
  const _constants_1 = require("../constants.js");
5
+ /**
6
+ * Resolves the server configuration from a class or an object.
7
+ *
8
+ * @param configOrClass - Can be a class with decorators or a plain configuration object.
9
+ *
10
+ * @returns A complete ServerConfig object with defaults and merged properties.
11
+ *
12
+ * Behavior:
13
+ * - If a class is provided, extracts metadata from decorators to build the config.
14
+ * - If an object is provided, merges it with default values.
15
+ * - Defaults: port = 3000, host = 'localhost'.
16
+ * - Merges middleware, interceptors, errorHandler, cors, controllers, sanitizers from decorators or object.
17
+ */
5
18
  const resolveConfig = (configOrClass) => {
6
19
  let config = {};
7
20
  if (configOrClass && typeof configOrClass === 'function') {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/utils/server.ts"],"names":[],"mappings":";;;AAAA,2CAA0F;AAInF,MAAM,aAAa,GAAG,CAAC,aAAmB,EAAgB,EAAE;IACjE,IAAI,MAAM,GAAiB,EAAE,CAAC;IAE9B,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;QACzD,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;QACpF,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,kBAAK,EAAE,aAAa,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAQ,EAAE,aAAa,CAAC,CAAC;QAClE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,2BAAc,EAAE,aAAa,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAEhF,MAAM,GAAG;YACP,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,GAAG,eAAe;YAClB,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,YAAY;YAC1D,YAAY,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,WAAW,EAAE,eAAe,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE;YAC5F,IAAI,EAAE,eAAe,CAAC,IAAI;YAC1B,WAAW,EAAE,CAAC,eAAe,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,UAAU;SACX,CAAC;IACJ,CAAC;SAAM,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC9D,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,aAAa,EAAE,CAAC;IAC/D,CAAC;SAAM,CAAC;QACN,MAAM,GAAG;YACP,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,EAAE;SAChB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAjCW,QAAA,aAAa,iBAiCxB;AAEK,MAAM,cAAc,GAAG,CAAC,GAAyB,EAAmB,EAAE;IAC3E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACjB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/utils/server.ts"],"names":[],"mappings":";;;AAAA,2CAA0F;AAI1F;;;;;;;;;;;;GAYG;AACI,MAAM,aAAa,GAAG,CAAC,aAAmB,EAAgB,EAAE;IACjE,IAAI,MAAM,GAAiB,EAAE,CAAC;IAE9B,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;QACzD,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,8BAAiB,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;QACpF,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,kBAAK,EAAE,aAAa,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAQ,EAAE,aAAa,CAAC,CAAC;QAClE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,2BAAc,EAAE,aAAa,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAEhF,MAAM,GAAG;YACP,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,GAAG,eAAe;YAClB,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,YAAY;YAC1D,YAAY,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,WAAW,EAAE,eAAe,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE;YAC5F,IAAI,EAAE,eAAe,CAAC,IAAI;YAC1B,WAAW,EAAE,CAAC,eAAe,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,UAAU;SACX,CAAC;IACJ,CAAC;SAAM,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC9D,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,aAAa,EAAE,CAAC;IAC/D,CAAC;SAAM,CAAC;QACN,MAAM,GAAG;YACP,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,EAAE;SAChB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAjCW,QAAA,aAAa,iBAiCxB;AAEK,MAAM,cAAc,GAAG,CAAC,GAAyB,EAAmB,EAAE;IAC3E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACjB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB"}
@@ -1,33 +1,77 @@
1
1
  import { WebSocketHandlerType } from '../types/index.js';
2
2
  /**
3
3
  * Method decorator to handle WebSocket events.
4
- * @param type Type of WebSocket event (connection, message, close, error).
5
- * @param topic Optional topic for message filtering.
4
+ *
5
+ * @param {WebSocketHandlerType} type - Type of WebSocket event (connection, message, close, error).
6
+ * @param {string} [topic] - Optional topic for message filtering.
7
+ *
8
+ * Usage:
9
+ * ```ts
10
+ * @OnWS('message', 'chat')
11
+ * onMessage(msg) {}
12
+ * ```
6
13
  */
7
14
  export declare function OnWS(type: WebSocketHandlerType, topic?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
8
15
  /**
9
16
  * Shortcut decorator for WebSocket connection event handler.
17
+ *
18
+ * Usage:
19
+ * ```ts
20
+ * @OnConnection()
21
+ * onConnect() {}
22
+ * ```
10
23
  */
11
24
  export declare function OnConnection(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
12
25
  /**
13
26
  * Shortcut decorator for WebSocket message event handler.
14
- * @param topic Optional topic for message filtering.
27
+ *
28
+ * @param {string} [topic] - Optional topic for message filtering.
29
+ *
30
+ * Usage:
31
+ * ```ts
32
+ * @OnMessage('chat')
33
+ * onChatMessage(msg) {}
34
+ * ```
15
35
  */
16
36
  export declare function OnMessage(topic?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
17
37
  /**
18
38
  * Shortcut decorator for WebSocket close event handler.
39
+ *
40
+ * Usage:
41
+ * ```ts
42
+ * @OnClose()
43
+ * onClose() {}
44
+ * ```
19
45
  */
20
46
  export declare function OnClose(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
21
47
  /**
22
48
  * Shortcut decorator for WebSocket error event handler.
49
+ *
50
+ * Usage:
51
+ * ```ts
52
+ * @OnError()
53
+ * onError() {}
54
+ * ```
23
55
  */
24
56
  export declare function OnError(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
25
57
  /**
26
58
  * Method decorator to subscribe to a WebSocket topic.
27
- * @param topic Topic name to subscribe.
59
+ *
60
+ * @param {string} topic - Topic name to subscribe.
61
+ *
62
+ * Usage:
63
+ * ```ts
64
+ * @Subscribe('news')
65
+ * onNews(data) {}
66
+ * ```
28
67
  */
29
68
  export declare function Subscribe(topic: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
30
69
  /**
31
70
  * Parameter decorator to inject WebSocket service instance.
71
+ *
72
+ * Usage:
73
+ * ```ts
74
+ * someMethod(@InjectWS() ws) {}
75
+ * ```
32
76
  */
33
77
  export declare function InjectWS(): (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
@@ -11,8 +11,15 @@ const _constants_1 = require("../constants.js");
11
11
  const _utils_1 = require("../utils/index.js");
12
12
  /**
13
13
  * Method decorator to handle WebSocket events.
14
- * @param type Type of WebSocket event (connection, message, close, error).
15
- * @param topic Optional topic for message filtering.
14
+ *
15
+ * @param {WebSocketHandlerType} type - Type of WebSocket event (connection, message, close, error).
16
+ * @param {string} [topic] - Optional topic for message filtering.
17
+ *
18
+ * Usage:
19
+ * ```ts
20
+ * @OnWS('message', 'chat')
21
+ * onMessage(msg) {}
22
+ * ```
16
23
  */
17
24
  function OnWS(type, topic) {
18
25
  return function (target, propertyKey, descriptor) {
@@ -24,32 +31,64 @@ function OnWS(type, topic) {
24
31
  }
25
32
  /**
26
33
  * Shortcut decorator for WebSocket connection event handler.
34
+ *
35
+ * Usage:
36
+ * ```ts
37
+ * @OnConnection()
38
+ * onConnect() {}
39
+ * ```
27
40
  */
28
41
  function OnConnection() {
29
42
  return OnWS('connection');
30
43
  }
31
44
  /**
32
45
  * Shortcut decorator for WebSocket message event handler.
33
- * @param topic Optional topic for message filtering.
46
+ *
47
+ * @param {string} [topic] - Optional topic for message filtering.
48
+ *
49
+ * Usage:
50
+ * ```ts
51
+ * @OnMessage('chat')
52
+ * onChatMessage(msg) {}
53
+ * ```
34
54
  */
35
55
  function OnMessage(topic) {
36
56
  return OnWS('message', topic);
37
57
  }
38
58
  /**
39
59
  * Shortcut decorator for WebSocket close event handler.
60
+ *
61
+ * Usage:
62
+ * ```ts
63
+ * @OnClose()
64
+ * onClose() {}
65
+ * ```
40
66
  */
41
67
  function OnClose() {
42
68
  return OnWS('close');
43
69
  }
44
70
  /**
45
71
  * Shortcut decorator for WebSocket error event handler.
72
+ *
73
+ * Usage:
74
+ * ```ts
75
+ * @OnError()
76
+ * onError() {}
77
+ * ```
46
78
  */
47
79
  function OnError() {
48
80
  return OnWS('error');
49
81
  }
50
82
  /**
51
83
  * Method decorator to subscribe to a WebSocket topic.
52
- * @param topic Topic name to subscribe.
84
+ *
85
+ * @param {string} topic - Topic name to subscribe.
86
+ *
87
+ * Usage:
88
+ * ```ts
89
+ * @Subscribe('news')
90
+ * onNews(data) {}
91
+ * ```
53
92
  */
54
93
  function Subscribe(topic) {
55
94
  return function (target, propertyKey, descriptor) {
@@ -61,6 +100,11 @@ function Subscribe(topic) {
61
100
  }
62
101
  /**
63
102
  * Parameter decorator to inject WebSocket service instance.
103
+ *
104
+ * Usage:
105
+ * ```ts
106
+ * someMethod(@InjectWS() ws) {}
107
+ * ```
64
108
  */
65
109
  function InjectWS() {
66
110
  return (0, _utils_1.createParamDecorator)('ws');
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/ws/decorators.ts"],"names":[],"mappings":";;AASA,oBAOC;AAKD,oCAEC;AAMD,8BAEC;AAKD,0BAEC;AAKD,0BAEC;AAMD,8BASC;AAKD,4BAEC;AAnED,2CAAsD;AAEtD,mCAA8C;AAE9C;;;;GAIG;AACH,SAAgB,IAAI,CAAC,IAA0B,EAAE,KAAc;IAC7D,OAAO,UAAU,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAC/E,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAU,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,cAAc,CAAC,uBAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACjE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY;IAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,KAAc;IACtC,OAAO,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,SAAgB,OAAO;IACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,SAAgB,OAAO;IACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,KAAa;IACrC,OAAO,UAAU,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAC/E,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QAE5C,OAAO,CAAC,cAAc,CAAC,yBAAY,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAEjE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ;IACtB,OAAO,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/ws/decorators.ts"],"names":[],"mappings":";;AAgBA,oBAOC;AAWD,oCAEC;AAaD,8BAEC;AAWD,0BAEC;AAWD,0BAEC;AAaD,8BASC;AAUD,4BAEC;AA/GD,2CAAsD;AAEtD,mCAA8C;AAE9C;;;;;;;;;;;GAWG;AACH,SAAgB,IAAI,CAAC,IAA0B,EAAE,KAAc;IAC7D,OAAO,UAAU,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAC/E,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAU,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,cAAc,CAAC,uBAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACjE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,YAAY;IAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,SAAS,CAAC,KAAc;IACtC,OAAO,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,OAAO;IACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,OAAO;IACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,SAAS,CAAC,KAAa;IACrC,OAAO,UAAU,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAC/E,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QAE5C,OAAO,CAAC,cAAc,CAAC,yBAAY,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAEjE,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,QAAQ;IACtB,OAAO,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;AACpC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quantum-flow",
3
- "version": "1.19.0",
3
+ "version": "1.20.0",
4
4
  "description": "Decorator-based API framework",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,8 +0,0 @@
1
- /**
2
- * Parameter decorator to inject AWS lambda event.
3
- */
4
- export declare const LambdaEvent: () => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
5
- /**
6
- * Parameter decorator to inject AWS lambda context.
7
- */
8
- export declare const LambdaContext: () => (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LambdaContext = exports.LambdaEvent = void 0;
4
- const _utils_1 = require("../../utils/index.js");
5
- /**
6
- * Parameter decorator to inject AWS lambda event.
7
- */
8
- const LambdaEvent = () => (0, _utils_1.createParamDecorator)('event');
9
- exports.LambdaEvent = LambdaEvent;
10
- /**
11
- * Parameter decorator to inject AWS lambda context.
12
- */
13
- const LambdaContext = () => (0, _utils_1.createParamDecorator)('context');
14
- exports.LambdaContext = LambdaContext;
15
- //# sourceMappingURL=decorators.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/app/aws/decorators.ts"],"names":[],"mappings":";;;AAAA,mCAA8C;AAE9C;;GAEG;AACI,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAoB,EAAC,OAAO,CAAC,CAAC;AAAlD,QAAA,WAAW,eAAuC;AAE/D;;GAEG;AACI,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAoB,EAAC,SAAS,CAAC,CAAC;AAAtD,QAAA,aAAa,iBAAyC"}