quantum-flow 1.12.3 → 1.14.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 +55 -10
- package/dist/app/aws/lambda.d.ts +11 -4
- package/dist/app/aws/lambda.js +43 -18
- package/dist/app/aws/lambda.js.map +1 -1
- package/dist/app/aws/utils/request.d.ts +2 -2
- package/dist/app/aws/utils/response.d.ts +3 -2
- package/dist/app/aws/utils/response.js +1 -1
- package/dist/app/aws/utils/response.js.map +1 -1
- package/dist/app/http/Application.d.ts +7 -3
- package/dist/app/http/Application.js +33 -17
- package/dist/app/http/Application.js.map +1 -1
- package/dist/app/plugin.d.ts +8 -0
- package/dist/app/plugin.js +43 -0
- package/dist/app/plugin.js.map +1 -0
- package/dist/core/Controller.js +3 -1
- package/dist/core/Controller.js.map +1 -1
- package/dist/core/Endpoint.d.ts +2 -2
- package/dist/core/Endpoint.js +4 -4
- package/dist/plugins/aws.d.ts +1 -0
- package/dist/plugins/aws.js +3 -0
- package/dist/plugins/aws.js.map +1 -0
- package/dist/plugins/http.d.ts +1 -0
- package/dist/plugins/http.js +3 -0
- package/dist/plugins/http.js.map +1 -0
- package/dist/types/common.d.ts +1 -1
- package/dist/types/common.js +1 -1
- package/dist/types/http.d.ts +32 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/lambda.d.ts +38 -1
- package/dist/types/plugins.d.ts +30 -0
- package/dist/types/plugins.js +3 -0
- package/dist/types/plugins.js.map +1 -0
- package/dist/utils/controller.js +5 -6
- package/dist/utils/controller.js.map +1 -1
- package/dist/utils/endpoint.d.ts +1 -0
- package/dist/utils/endpoint.js +15 -0
- package/dist/utils/endpoint.js.map +1 -1
- package/dist/utils/helper.js.map +1 -1
- package/dist/utils/server.js.map +1 -1
- package/package.json +11 -1
package/README.md
CHANGED
|
@@ -23,6 +23,8 @@ You can use controllers and server functionality by importing controllers and cr
|
|
|
23
23
|
- `quantum-flow/middlewares` - Core middlewares to use within the application.
|
|
24
24
|
- `quantum-flow/ws` - Websocket decorators.
|
|
25
25
|
- `quantum-flow/sse` - Server side events decorators.
|
|
26
|
+
- `quantum-flow/plugins/aws` - Exports plugins types for lambda.
|
|
27
|
+
- `quantum-flow/plugins/http` - Exports plugins types for http server.
|
|
26
28
|
|
|
27
29
|
---
|
|
28
30
|
|
|
@@ -42,7 +44,7 @@ import {
|
|
|
42
44
|
Request,
|
|
43
45
|
Response,
|
|
44
46
|
Status,
|
|
45
|
-
|
|
47
|
+
ANY,
|
|
46
48
|
} from 'quantum-flow/core';
|
|
47
49
|
import {IsString} from 'class-validator'
|
|
48
50
|
import { Catch, Cors, Sanitize, Use, SANITIZER } from 'quantum-flow/middlewares';
|
|
@@ -86,7 +88,7 @@ export class User {
|
|
|
86
88
|
) {
|
|
87
89
|
}
|
|
88
90
|
|
|
89
|
-
@
|
|
91
|
+
@ANY([...middlewares])
|
|
90
92
|
async any(@Response() resp: any) {
|
|
91
93
|
...
|
|
92
94
|
}
|
|
@@ -156,14 +158,11 @@ let dbConnection = null;
|
|
|
156
158
|
prefix: 'api',
|
|
157
159
|
controllers: [UserController, SocketController],
|
|
158
160
|
})
|
|
159
|
-
class RootController {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
export const handler = LambdaAdapter.createHandler(RootController);
|
|
161
|
+
class RootController {}
|
|
162
|
+
const lambdaAdapter = new LambdaAdapter(Root);
|
|
163
|
+
lambdaAdapter.usePlugin(metricsPlugin);
|
|
164
|
+
|
|
165
|
+
export const handler = lambdaAdapter.handler;
|
|
167
166
|
```
|
|
168
167
|
|
|
169
168
|
# WebSocket Support
|
|
@@ -396,6 +395,52 @@ const server = new HttpServer(App);
|
|
|
396
395
|
server.listen().catch(console.error);
|
|
397
396
|
```
|
|
398
397
|
|
|
398
|
+
## Custom plugins.
|
|
399
|
+
|
|
400
|
+
Use plugins to extend app with custom logic.
|
|
401
|
+
|
|
402
|
+
Example server setup:
|
|
403
|
+
|
|
404
|
+
```typescript
|
|
405
|
+
import { Server, HttpServer } from 'quantum-flow/http';
|
|
406
|
+
import { User, UserMetadata } from './controllers';
|
|
407
|
+
import client from 'prom-client';
|
|
408
|
+
|
|
409
|
+
const register = new client.Registry();
|
|
410
|
+
client.collectDefaultMetrics({ register });
|
|
411
|
+
|
|
412
|
+
const httpRequestsTotal = new client.Counter({
|
|
413
|
+
name: 'http_requests_total',
|
|
414
|
+
help: 'Total number of HTTP requests',
|
|
415
|
+
labelNames: ['method', 'path', 'status'],
|
|
416
|
+
});
|
|
417
|
+
|
|
418
|
+
@Controller({ prefix: 'metrics' })
|
|
419
|
+
export class MetricsController {...}
|
|
420
|
+
@Server({...})
|
|
421
|
+
class App {}
|
|
422
|
+
|
|
423
|
+
const server = new HttpServer(App);
|
|
424
|
+
server.usePlugun(metricsPlugin)
|
|
425
|
+
server.listen().catch(console.error);
|
|
426
|
+
|
|
427
|
+
let connection;
|
|
428
|
+
const dbConnectionPlugin: Plugin = {
|
|
429
|
+
name: 'metric',
|
|
430
|
+
beforeRequest: async(server) => {
|
|
431
|
+
if(!connection){
|
|
432
|
+
connection = await connetct(...)
|
|
433
|
+
}
|
|
434
|
+
},
|
|
435
|
+
hooks: {...},
|
|
436
|
+
};
|
|
437
|
+
|
|
438
|
+
const lambdaAdapter = new LambdaAdapter(Root);
|
|
439
|
+
lambdaAdapter.usePlugin(dbConnectionPlugin);
|
|
440
|
+
|
|
441
|
+
export const handler = lambdaAdapter.handler;
|
|
442
|
+
```
|
|
443
|
+
|
|
399
444
|
## Summary
|
|
400
445
|
|
|
401
446
|
- Use `@Controller` with `prefix` and `controllers` to organize your API.
|
package/dist/app/aws/lambda.d.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
|
+
import { ControllerClass, ILambdaAdapter, LambdaPlugin } from '../../types/index.js';
|
|
1
2
|
import { Handler } from 'aws-lambda';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import { Plugin } from '../plugin';
|
|
4
|
+
export declare class LambdaAdapter extends Plugin implements ILambdaAdapter {
|
|
5
|
+
handler: Handler;
|
|
6
|
+
controllers: ControllerClass[];
|
|
7
|
+
plugins: LambdaPlugin[];
|
|
8
|
+
constructor(Controller: ControllerClass);
|
|
9
|
+
private createHandler;
|
|
10
|
+
private runControllers;
|
|
11
|
+
private toLambdaResponse;
|
|
12
|
+
private handleError;
|
|
6
13
|
}
|
package/dist/app/aws/lambda.js
CHANGED
|
@@ -3,17 +3,38 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.LambdaAdapter = void 0;
|
|
4
4
|
const _constants_1 = require("../../constants.js");
|
|
5
5
|
const _utils_1 = require("../../utils/index.js");
|
|
6
|
+
const plugin_1 = require("../plugin");
|
|
6
7
|
const utils_1 = require("./utils");
|
|
7
|
-
class LambdaAdapter {
|
|
8
|
-
|
|
8
|
+
class LambdaAdapter extends plugin_1.Plugin {
|
|
9
|
+
handler;
|
|
10
|
+
controllers = [];
|
|
11
|
+
plugins = [];
|
|
12
|
+
constructor(Controller) {
|
|
13
|
+
super();
|
|
14
|
+
this.controllers.push(Controller);
|
|
15
|
+
this.handler = this.createHandler(Controller);
|
|
16
|
+
}
|
|
17
|
+
createHandler(Controller) {
|
|
9
18
|
return async (event, context) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
await instance.beforeStart?.();
|
|
13
|
-
}
|
|
19
|
+
this.controllers.push(Controller);
|
|
20
|
+
await this.callPluginHook('beforeRequest', event, context);
|
|
14
21
|
const eventType = (0, utils_1.getEventType)(event);
|
|
15
22
|
const request = new utils_1.LRequest(event, context);
|
|
16
23
|
const response = new utils_1.LResponse();
|
|
24
|
+
return this.runControllers({
|
|
25
|
+
context,
|
|
26
|
+
event,
|
|
27
|
+
eventType,
|
|
28
|
+
request,
|
|
29
|
+
response,
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
async runControllers(meta) {
|
|
34
|
+
const { request, response, eventType, event, context } = meta;
|
|
35
|
+
let processed;
|
|
36
|
+
for (const ControllerClass of this.controllers ?? []) {
|
|
37
|
+
const instance = new ControllerClass();
|
|
17
38
|
try {
|
|
18
39
|
const cors = Reflect.getMetadata(_constants_1.CORS_METADATA, instance);
|
|
19
40
|
let handledCors = { permitted: true, continue: true };
|
|
@@ -29,22 +50,25 @@ class LambdaAdapter {
|
|
|
29
50
|
if (typeof instance.handleRequest !== 'function') {
|
|
30
51
|
throw new Error('Controller must have handleRequest method');
|
|
31
52
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
if ((0, _utils_1.getErrorType)(data).isError) {
|
|
38
|
-
return this.handleError(data, event, context);
|
|
39
|
-
}
|
|
40
|
-
return this.toLambdaResponse(data, request, response, eventType);
|
|
53
|
+
await this.callPluginHook('beforeRoute', request, response);
|
|
54
|
+
processed = await instance.handleRequest(request, response);
|
|
55
|
+
if (processed.routeMatch)
|
|
56
|
+
break;
|
|
41
57
|
}
|
|
42
58
|
catch (error) {
|
|
43
59
|
return this.handleError(error, event, context);
|
|
44
60
|
}
|
|
45
|
-
}
|
|
61
|
+
}
|
|
62
|
+
if (!processed?.routeMatch) {
|
|
63
|
+
response.statusCode = 404;
|
|
64
|
+
return this.toLambdaResponse({ data: 'Route not found' }, request, response, eventType);
|
|
65
|
+
}
|
|
66
|
+
if ((0, _utils_1.getErrorType)(processed?.data).isError) {
|
|
67
|
+
return this.handleError(processed?.data, event, context);
|
|
68
|
+
}
|
|
69
|
+
return this.toLambdaResponse(processed?.data, request, response, eventType);
|
|
46
70
|
}
|
|
47
|
-
|
|
71
|
+
toLambdaResponse(data, request, response, eventType) {
|
|
48
72
|
const statusCode = data.status ?? response.statusCode ?? 200;
|
|
49
73
|
const headers = {
|
|
50
74
|
'Content-Type': 'application/json',
|
|
@@ -80,6 +104,7 @@ class LambdaAdapter {
|
|
|
80
104
|
body: data.data ?? data.error,
|
|
81
105
|
timestamp: new Date().toISOString(),
|
|
82
106
|
};
|
|
107
|
+
this.callPluginHook('afterResponse', request, response);
|
|
83
108
|
switch (eventType) {
|
|
84
109
|
case 'rest':
|
|
85
110
|
return { ...commonResponse, isBase64Encoded: false };
|
|
@@ -105,7 +130,7 @@ class LambdaAdapter {
|
|
|
105
130
|
};
|
|
106
131
|
}
|
|
107
132
|
}
|
|
108
|
-
|
|
133
|
+
handleError(error, event, context) {
|
|
109
134
|
let serialized = (0, _utils_1.serializeError)(error);
|
|
110
135
|
const eventType = (0, utils_1.getEventType)(event);
|
|
111
136
|
const statusCode = serialized.status || 500;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../src/app/aws/lambda.ts"],"names":[],"mappings":";;;AAAA,2CAA2C;AAE3C,mCAAkE;AAElE,mCAA4D;AAE5D,MAAa,
|
|
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, LambdaEvent, MultipartFile } from '../../../types/index.js';
|
|
1
|
+
import { HTTP_METHODS, ILRequest, LambdaEvent, MultipartFile } from '../../../types/index.js';
|
|
2
2
|
import { Context } from 'aws-lambda';
|
|
3
|
-
export declare class LRequest {
|
|
3
|
+
export declare class LRequest implements ILRequest {
|
|
4
4
|
requestUrl: URL;
|
|
5
5
|
method: HTTP_METHODS;
|
|
6
6
|
path?: string;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { ILResponse } from '../../../types/index.js';
|
|
1
2
|
import { ServerResponse } from 'http';
|
|
2
|
-
export declare class LResponse {
|
|
3
|
+
export declare class LResponse implements ILResponse {
|
|
3
4
|
private originalResponse?;
|
|
4
5
|
private _statusCode;
|
|
5
6
|
private _headers;
|
|
6
|
-
|
|
7
|
+
body: any;
|
|
7
8
|
constructor(originalResponse?: ServerResponse | undefined);
|
|
8
9
|
setHeader(name: string, value: string): void;
|
|
9
10
|
set statusCode(code: number);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../../src/app/aws/utils/response.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../../src/app/aws/utils/response.ts"],"names":[],"mappings":";;;AAGA,MAAa,SAAS;IAKA;IAJZ,WAAW,GAAW,GAAG,CAAC;IAC1B,QAAQ,GAA2B,EAAE,CAAC;IAC9C,IAAI,GAAQ,IAAI,CAAC;IAEjB,YAAoB,gBAAiC;QAAjC,qBAAgB,GAAhB,gBAAgB,CAAiB;IAAG,CAAC;IAEzD,SAAS,CAAC,IAAY,EAAE,KAAa;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC5B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,IAAY;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAED,IAAI;QACF,MAAM,4CAA4C,CAAC;IACrD,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;CACF;AApCD,8BAoCC"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import { ServerConfig } from '../../types/index.js';
|
|
1
|
+
import { ControllerType, HttpPlugin, IHttpServer, MiddlewareCB, ServerConfig } from '../../types/index.js';
|
|
2
2
|
import http from 'http';
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
import { Plugin } from '../plugin';
|
|
4
|
+
export declare class HttpServer extends Plugin implements IHttpServer {
|
|
5
|
+
app: http.Server;
|
|
6
|
+
plugins: HttpPlugin[];
|
|
5
7
|
private config;
|
|
6
8
|
private isRunning;
|
|
7
9
|
private sse?;
|
|
8
10
|
private websocket?;
|
|
9
11
|
private allControllers;
|
|
12
|
+
controllers: ControllerType[];
|
|
13
|
+
middlewares: MiddlewareCB[];
|
|
10
14
|
constructor(configOrClass: new (...args: any[]) => any);
|
|
11
15
|
private logConfig;
|
|
12
16
|
listen(port?: number, host?: string): Promise<http.Server>;
|
|
@@ -11,21 +11,28 @@ const server_1 = require("../../sse/server");
|
|
|
11
11
|
const service_1 = require("../../sse/service");
|
|
12
12
|
const server_2 = require("../../ws/server");
|
|
13
13
|
const service_2 = require("../../ws/service");
|
|
14
|
-
|
|
14
|
+
const plugin_1 = require("../plugin");
|
|
15
|
+
class HttpServer extends plugin_1.Plugin {
|
|
15
16
|
app;
|
|
17
|
+
plugins = [];
|
|
16
18
|
config;
|
|
17
19
|
isRunning = false;
|
|
18
20
|
sse;
|
|
19
21
|
websocket;
|
|
20
22
|
allControllers;
|
|
23
|
+
controllers = [];
|
|
24
|
+
middlewares = [];
|
|
21
25
|
constructor(configOrClass) {
|
|
26
|
+
super();
|
|
22
27
|
this.config = (0, _utils_1.resolveConfig)(configOrClass);
|
|
28
|
+
this.controllers = this.controllers.concat(this.config.controllers ?? []);
|
|
29
|
+
this.middlewares = this.middlewares.concat(this.config.middlewares ?? []);
|
|
23
30
|
const app = http_1.default.createServer(this.requestHandler.bind(this));
|
|
24
31
|
for (const st of this.config.statics ?? []) {
|
|
25
32
|
const staticMw = (0, _utils_1.staticMiddleware)(st.path, st.options);
|
|
26
|
-
this.
|
|
33
|
+
this.middlewares?.unshift(staticMw);
|
|
27
34
|
}
|
|
28
|
-
this.allControllers = this.getAllControllers(this.
|
|
35
|
+
this.allControllers = this.getAllControllers(this.controllers);
|
|
29
36
|
this.setupStaticFiles();
|
|
30
37
|
if (this.config.websocket?.enabled) {
|
|
31
38
|
this.websocket = new server_2.WebSocketServer(app, { path: this.config.websocket.path });
|
|
@@ -48,7 +55,7 @@ class HttpServer {
|
|
|
48
55
|
║ 📍 Host: ${this.config.host}
|
|
49
56
|
║ 🔌 Port: ${this.config.port}
|
|
50
57
|
║ 🔌 Websocket: ${!!this.config.websocket}
|
|
51
|
-
║ 🔧 Global Middlewares: ${this.
|
|
58
|
+
║ 🔧 Global Middlewares: ${this.middlewares?.length || 0}
|
|
52
59
|
║ 🔧 Error handler: ${!this.config.errorHandler}
|
|
53
60
|
║ 🎯 Global Interceptors: ${!!this.config.interceptor?.length}
|
|
54
61
|
║ 📦 Controllers: ${_constants_1.STATISTIC.controllers}
|
|
@@ -63,7 +70,7 @@ class HttpServer {
|
|
|
63
70
|
}
|
|
64
71
|
const listenPort = port || this.config.port || 3000;
|
|
65
72
|
const listenHost = host || this.config.host || 'localhost';
|
|
66
|
-
return new Promise((resolve, reject) => {
|
|
73
|
+
return new Promise(async (resolve, reject) => {
|
|
67
74
|
try {
|
|
68
75
|
this.app.listen(listenPort, listenHost, () => {
|
|
69
76
|
this.isRunning = true;
|
|
@@ -76,6 +83,7 @@ class HttpServer {
|
|
|
76
83
|
`);
|
|
77
84
|
resolve(this.app);
|
|
78
85
|
});
|
|
86
|
+
await this.callPluginMethod('onStart', this.app);
|
|
79
87
|
this.app.on('error', (error) => {
|
|
80
88
|
console.error('❌ Server error:', error);
|
|
81
89
|
reject(error);
|
|
@@ -102,7 +110,8 @@ class HttpServer {
|
|
|
102
110
|
resolve();
|
|
103
111
|
return;
|
|
104
112
|
}
|
|
105
|
-
this.app.close((err) => {
|
|
113
|
+
this.app.close(async (err) => {
|
|
114
|
+
await this.callPluginMethod('onStop', this.app);
|
|
106
115
|
if (err) {
|
|
107
116
|
reject(err);
|
|
108
117
|
}
|
|
@@ -122,11 +131,17 @@ class HttpServer {
|
|
|
122
131
|
async requestHandler(req, response) {
|
|
123
132
|
const startTime = Date.now();
|
|
124
133
|
let request;
|
|
134
|
+
try {
|
|
135
|
+
await this.callPluginHook('beforeRequest', req);
|
|
136
|
+
}
|
|
137
|
+
catch (data) {
|
|
138
|
+
return this.sendResponse(response, { status: 500, data }, startTime);
|
|
139
|
+
}
|
|
125
140
|
try {
|
|
126
141
|
request = await this.createRequest(req);
|
|
127
142
|
}
|
|
128
143
|
catch (err) {
|
|
129
|
-
return this.sendResponse(response, { status: 500,
|
|
144
|
+
return this.sendResponse(response, { status: 500, data: err.message }, startTime);
|
|
130
145
|
}
|
|
131
146
|
try {
|
|
132
147
|
let handledCors = { permitted: true, continue: true };
|
|
@@ -134,18 +149,19 @@ class HttpServer {
|
|
|
134
149
|
handledCors = (0, _utils_1.handleCORS)(request, response, this.config.cors);
|
|
135
150
|
}
|
|
136
151
|
if (!handledCors.permitted) {
|
|
137
|
-
return this.sendResponse(response, { status: 403, message: 'CORS: Origin not allowed' }, startTime);
|
|
152
|
+
return this.sendResponse(response, { status: 403, message: 'CORS: Origin not allowed' }, startTime, request);
|
|
138
153
|
}
|
|
139
154
|
if (!handledCors.continue && handledCors.permitted) {
|
|
140
|
-
return this.sendResponse(response, { status: 204 }, startTime);
|
|
155
|
+
return this.sendResponse(response, { status: 204 }, startTime, request);
|
|
141
156
|
}
|
|
142
157
|
await this.beforeRequest(request, response);
|
|
143
158
|
if (response.headersSent) {
|
|
144
159
|
return;
|
|
145
160
|
}
|
|
161
|
+
await this.callPluginHook('beforeRoute', request, response);
|
|
146
162
|
let controllerResponse = await this.runController(request, response);
|
|
147
163
|
if (!controllerResponse.routeMatch) {
|
|
148
|
-
return this.sendResponse(response, { status: 404, data: 'Route not found' }, Date.now());
|
|
164
|
+
return this.sendResponse(response, { status: 404, data: 'Route not found' }, Date.now(), request);
|
|
149
165
|
}
|
|
150
166
|
const isError = (0, _utils_1.getErrorType)(controllerResponse.data).isError || !_constants_1.OK_STATUSES.includes(response.statusCode);
|
|
151
167
|
if (isError) {
|
|
@@ -154,7 +170,7 @@ class HttpServer {
|
|
|
154
170
|
if (this.config.interceptor && controllerResponse) {
|
|
155
171
|
controllerResponse.data = await this.config.interceptor(controllerResponse, request, response);
|
|
156
172
|
}
|
|
157
|
-
return this.sendResponse(response, { status: response.statusCode ?? 200, data: controllerResponse.data }, startTime);
|
|
173
|
+
return this.sendResponse(response, { status: response.statusCode ?? 200, data: controllerResponse.data }, startTime, request);
|
|
158
174
|
}
|
|
159
175
|
catch (error) {
|
|
160
176
|
return this.handleError(error, request, response, startTime);
|
|
@@ -189,12 +205,12 @@ class HttpServer {
|
|
|
189
205
|
}
|
|
190
206
|
async beforeRequest(request, response) {
|
|
191
207
|
(0, _utils_1.sanitizeRequest)(request, this.config.sanitizers ?? []);
|
|
192
|
-
for (const middleware of this.
|
|
208
|
+
for (const middleware of this.middlewares?.reverse() || []) {
|
|
193
209
|
await middleware(request, response, _utils_1.NextFN);
|
|
194
210
|
}
|
|
195
211
|
}
|
|
196
212
|
async runController(request, response) {
|
|
197
|
-
for (const ControllerClass of this.
|
|
213
|
+
for (const ControllerClass of this.controllers ?? []) {
|
|
198
214
|
const instance = new ControllerClass();
|
|
199
215
|
if (typeof instance.handleRequest === 'function') {
|
|
200
216
|
const handlerResponse = await instance.handleRequest(request, response);
|
|
@@ -205,7 +221,7 @@ class HttpServer {
|
|
|
205
221
|
}
|
|
206
222
|
return {};
|
|
207
223
|
}
|
|
208
|
-
async sendResponse(res, responseData, startTime) {
|
|
224
|
+
async sendResponse(res, responseData, startTime, appRequest) {
|
|
209
225
|
if (res.headersSent)
|
|
210
226
|
return;
|
|
211
227
|
const { status, data } = responseData;
|
|
@@ -215,8 +231,10 @@ class HttpServer {
|
|
|
215
231
|
res.setHeader('X-Response-Time', `${Date.now() - startTime}ms`);
|
|
216
232
|
res.statusCode = status ?? data.status ?? 200;
|
|
217
233
|
res.end(JSON.stringify(data));
|
|
234
|
+
await this.callPluginHook('afterResponse', appRequest, res);
|
|
218
235
|
}
|
|
219
236
|
async handleError(error, request, response, startTime) {
|
|
237
|
+
console.log(error);
|
|
220
238
|
let serialized = (0, _utils_1.serializeError)(error);
|
|
221
239
|
if (!this.config.errorHandler) {
|
|
222
240
|
return this.sendResponse(response, { data: serialized }, startTime);
|
|
@@ -230,18 +248,16 @@ class HttpServer {
|
|
|
230
248
|
serialized = data ?? serialized;
|
|
231
249
|
}
|
|
232
250
|
catch (cathed) { }
|
|
233
|
-
return this.sendResponse(response, { data: serialized }, startTime);
|
|
251
|
+
return this.sendResponse(response, { data: serialized }, startTime, request);
|
|
234
252
|
}
|
|
235
253
|
setupStaticFiles() {
|
|
236
254
|
const staticConfigs = [];
|
|
237
255
|
for (const ControllerClass of this.allControllers) {
|
|
238
|
-
// console.log(this.allControllers);
|
|
239
256
|
const classStatic = Reflect.getMetadata(_constants_1.STATIC_METADATA_KEY, ControllerClass);
|
|
240
257
|
if (classStatic) {
|
|
241
258
|
staticConfigs.push(classStatic);
|
|
242
259
|
}
|
|
243
260
|
}
|
|
244
|
-
// console.log('aaaaaaaaaaaaaaaaaaddddddddd', staticConfigs, this.config.controllers);
|
|
245
261
|
}
|
|
246
262
|
}
|
|
247
263
|
exports.HttpServer = HttpServer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../../src/app/http/Application.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAsF;
|
|
1
|
+
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../../src/app/http/Application.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAsF;AAWtF,mCAYgB;AAChB,gDAA6D;AAC7D,6CAA6C;AAC7C,+CAA+C;AAC/C,4CAAkD;AAClD,8CAAoD;AACpD,sCAAmC;AAEnC,MAAa,UAAW,SAAQ,eAAM;IACpC,GAAG,CAAc;IACjB,OAAO,GAAiB,EAAE,CAAC;IACnB,MAAM,CAAe;IACrB,SAAS,GAAY,KAAK,CAAC;IAC3B,GAAG,CAAa;IAChB,SAAS,CAAmB;IAC5B,cAAc,CAAkC;IACxD,WAAW,GAAqB,EAAE,CAAC;IACnC,WAAW,GAAmB,EAAE,CAAC;IAEjC,YAAY,aAA0C;QACpD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,IAAA,sBAAa,EAAC,aAAa,CAAC,CAAC;QAE3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAE1E,MAAM,GAAG,GAAG,cAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9D,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAA,yBAAgB,EAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;YACvD,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,QAAwB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,GAAG,IAAI,wBAAe,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACxD,0BAAgB,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAU,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,GAAG,GAAG,IAAI,kBAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClD,oBAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAEf,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,SAAS;QACf,OAAO,CAAC,GAAG,CAAC;;;;cAIF,IAAI,CAAC,MAAM,CAAC,IAAI;cAChB,IAAI,CAAC,MAAM,CAAC,IAAI;mBACX,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;4BACd,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;uBAClC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY;6BACnB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM;qBACzC,sBAAS,CAAC,WAAW;gBAC1B,sBAAS,CAAC,MAAM;;KAE3B,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,IAAa,EAAE,IAAa;QAC9C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC,GAAG,CAAC;QAClB,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC;QAE3D,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE;oBAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC;;;eAGP,UAAU,IAAI,UAAU;;;WAG5B,CAAC,CAAC;oBAEH,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEjD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC7B,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;oBACxC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,cAAgC,EAAE;QAC1D,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,eAAe,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEtB,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,wBAAW,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAEzF,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpB,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBAC3B,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAChD,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;oBACvB,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,MAAM;QACX,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,SAAS;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,GAAoB,EAAE,QAAwB;QACzE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,OAAmB,CAAC;QAExB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,IAAS,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,CAAC;YACH,IAAI,WAAW,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACtD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACrB,WAAW,GAAG,IAAA,mBAAU,EAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAChE,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,YAAY,CACtB,QAAQ,EACR,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,EAAE,EACpD,SAAS,EACT,OAAO,CACR,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;gBACnD,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAE5C,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACzB,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC5D,IAAI,kBAAkB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAErE,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,YAAY,CACtB,QAAQ,EACR,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,iBAAiB,EAAE,EACxC,IAAI,CAAC,GAAG,EAAE,EACV,OAAO,CACR,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GACX,IAAA,qBAAY,EAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,wBAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC9F,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACjF,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC;gBAClD,kBAAkB,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACrD,kBAAkB,EAClB,OAAO,EACP,QAAQ,CACT,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC,YAAY,CACtB,QAAQ,EACR,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,EACrE,SAAS,EACT,OAAO,CACR,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,GAAyB;QACnD,MAAM,OAAO,GAAG,MAAM,IAAA,uBAAc,EAAC,GAAG,CAAC,CAAC;QAE1C,MAAM,YAAY,GAAG;YACnB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,eAAe,EAAE,KAAK;SACvB,CAAC;QAEF,MAAM,UAAU,GAAG,IAAA,kBAAS,EAAC,YAAY,CAAC,CAAC;QAE3C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAC;QAC5D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,QAAQ,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;QAElD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,aAAa,GAAG;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAkB;YACjD,UAAU;YACV,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,IAAA,mBAAU,EAAC,UAAU,CAAC;YAC7B,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,IAAA,qBAAY,EAAC,GAAG,CAAC;YAC1B,eAAe,EAAE,KAAK;YACtB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;SACvB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAClC,OAAO,GAAiB,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAmB,EAAE,QAA6B;QAC5E,IAAA,wBAAe,EAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAEvD,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;YAC3D,MAAM,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAM,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAmB,EAAE,QAAyB;QACxE,KAAK,MAAM,eAAe,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YACrD,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;YACvC,IAAI,OAAO,QAAQ,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gBACjD,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACxE,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;oBAC/B,OAAO,eAAe,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,GAAwB,EACxB,YAAiB,EACjB,SAAiB,EACjB,UAAuB;QAEvB,IAAI,GAAG,CAAC,WAAW;YAAE,OAAO;QAE5B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC;QAEtC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QACpD,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,CAAC,CAAC;QAChE,GAAG,CAAC,UAAU,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC;QAE9C,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9B,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,KAAU,EACV,OAAmB,EACnB,QAA6B,EAC7B,SAAiB;QAEjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,UAAU,GAAG,IAAA,uBAAc,EAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAE7E,IAAI,IAAI,GAAG,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC;YAC3C,IAAI,IAAI,YAAY,KAAK,EAAE,CAAC;gBAC1B,IAAI,GAAG,IAAA,uBAAc,EAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YACD,UAAU,GAAG,IAAI,IAAI,UAAU,CAAC;QAClC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC,CAAA,CAAC;QAEnB,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/E,CAAC;IAEO,gBAAgB;QACtB,MAAM,aAAa,GAAmB,EAAE,CAAC;QAEzC,KAAK,MAAM,eAAe,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAClD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,gCAAmB,EAAE,eAAe,CAAC,CAAC;YAC9E,IAAI,WAAW,EAAE,CAAC;gBAChB,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAtUD,gCAsUC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { MiddlewareCB, PluginHookKeys, PluginKeys } from '../types/index.js';
|
|
2
|
+
export declare class Plugin {
|
|
3
|
+
plugins: any[];
|
|
4
|
+
middlewares: MiddlewareCB[];
|
|
5
|
+
protected callPluginHook<K extends PluginHookKeys>(hookName: K, ...args: any): Promise<void>;
|
|
6
|
+
protected callPluginMethod<K extends PluginKeys>(hookName: PluginKeys, ...args: any): Promise<void>;
|
|
7
|
+
usePlugin(plugin: any): this;
|
|
8
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Plugin = void 0;
|
|
4
|
+
class Plugin {
|
|
5
|
+
plugins;
|
|
6
|
+
middlewares;
|
|
7
|
+
async callPluginHook(hookName, ...args) {
|
|
8
|
+
for (const plugin of this.plugins) {
|
|
9
|
+
const hook = plugin.hooks?.[hookName];
|
|
10
|
+
if (hook) {
|
|
11
|
+
try {
|
|
12
|
+
await Promise.resolve(hook(...args));
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
console.error(`Plugin ${plugin.name} hook ${hookName} error:`, error);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
async callPluginMethod(hookName, ...args) {
|
|
21
|
+
for (const plugin of this.plugins) {
|
|
22
|
+
const hook = plugin?.[hookName];
|
|
23
|
+
if (hook) {
|
|
24
|
+
try {
|
|
25
|
+
await Promise.resolve(hook(...args));
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
console.error(`Plugin ${plugin.name} hook ${hookName} error:`, error);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
usePlugin(plugin) {
|
|
34
|
+
this.plugins.push(plugin);
|
|
35
|
+
plugin.onInit?.(this);
|
|
36
|
+
if (plugin.middleware) {
|
|
37
|
+
this.middlewares?.unshift(plugin.middleware);
|
|
38
|
+
}
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.Plugin = Plugin;
|
|
43
|
+
//# sourceMappingURL=plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/app/plugin.ts"],"names":[],"mappings":";;;AAEA,MAAa,MAAM;IACjB,OAAO,CAAQ;IACf,WAAW,CAAiB;IAClB,KAAK,CAAC,cAAc,CAC5B,QAAW,EACX,GAAG,IAAS;QAEZ,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,OAAO,CAAE,IAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;gBAChD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,SAAS,QAAQ,SAAS,EAAE,KAAK,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACS,KAAK,CAAC,gBAAgB,CAC9B,QAAoB,EACpB,GAAG,IAAS;QAEZ,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,OAAO,CAAE,IAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;gBAChD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,SAAS,QAAQ,SAAS,EAAE,KAAK,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,CAAC,MAAW;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA3CD,wBA2CC"}
|
package/dist/core/Controller.js
CHANGED
|
@@ -110,7 +110,7 @@ function Controller(config, middlewares = []) {
|
|
|
110
110
|
.filter(Boolean)
|
|
111
111
|
.join('/')
|
|
112
112
|
.replace(/\/+/g, '/');
|
|
113
|
-
if (
|
|
113
|
+
if ((0, _utils_1.pathStartsWithPrefix)(path, fullSubPath)) {
|
|
114
114
|
const walkerData = {
|
|
115
115
|
...context,
|
|
116
116
|
subPath: fullSubPath,
|
|
@@ -137,7 +137,9 @@ function Controller(config, middlewares = []) {
|
|
|
137
137
|
const handledCors = context.corsChain
|
|
138
138
|
.concat(cors ?? [])
|
|
139
139
|
.flat()
|
|
140
|
+
.filter((el) => !!el)
|
|
140
141
|
.reduce((acc, conf) => {
|
|
142
|
+
console.log(conf);
|
|
141
143
|
const cors = (0, _utils_1.handleCORS)(request, response, conf);
|
|
142
144
|
return {
|
|
143
145
|
permitted: acc.permitted && cors.permitted,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../../src/core/Controller.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../../src/core/Controller.ts"],"names":[],"mappings":"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"}
|
package/dist/core/Endpoint.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { HTTP_METHODS, MiddlewareCB } from '../types/index.js';
|
|
|
7
7
|
*
|
|
8
8
|
* It also allows attaching middlewares that will be applied when the endpoint is accessed.
|
|
9
9
|
*
|
|
10
|
-
* @param method - The HTTP method (e.g., 'GET', 'POST', 'PUT', 'PATCH', 'DELETE', '
|
|
10
|
+
* @param method - The HTTP method (e.g., 'GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'ANY').
|
|
11
11
|
* @param pathPattern - Optional route pattern string to match the endpoint path.
|
|
12
12
|
* @param middlewares - Optional array of middlewares to apply to this endpoint.
|
|
13
13
|
*
|
|
@@ -70,4 +70,4 @@ export declare const OPTIONS: (pathPattern?: string, middlewares?: MiddlewareCB[
|
|
|
70
70
|
* @returns Method decorator for DELETE endpoint.
|
|
71
71
|
*/
|
|
72
72
|
export declare const HEAD: (pathPattern?: string, middlewares?: MiddlewareCB[]) => (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
|
|
73
|
-
export declare function
|
|
73
|
+
export declare function ANY(middlewares?: MiddlewareCB[]): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
|
package/dist/core/Endpoint.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HEAD = exports.OPTIONS = exports.DELETE = exports.PATCH = exports.PUT = exports.POST = exports.GET = void 0;
|
|
4
4
|
exports.Endpoint = Endpoint;
|
|
5
|
-
exports.
|
|
5
|
+
exports.ANY = ANY;
|
|
6
6
|
const _constants_1 = require("../constants.js");
|
|
7
7
|
const _types_1 = require("../types/index.js");
|
|
8
8
|
/**
|
|
@@ -13,7 +13,7 @@ const _types_1 = require("../types/index.js");
|
|
|
13
13
|
*
|
|
14
14
|
* It also allows attaching middlewares that will be applied when the endpoint is accessed.
|
|
15
15
|
*
|
|
16
|
-
* @param method - The HTTP method (e.g., 'GET', 'POST', 'PUT', 'PATCH', 'DELETE', '
|
|
16
|
+
* @param method - The HTTP method (e.g., 'GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'ANY').
|
|
17
17
|
* @param pathPattern - Optional route pattern string to match the endpoint path.
|
|
18
18
|
* @param middlewares - Optional array of middlewares to apply to this endpoint.
|
|
19
19
|
*
|
|
@@ -117,9 +117,9 @@ exports.HEAD = HEAD;
|
|
|
117
117
|
// * @param middlewares - Optional array of middlewares.
|
|
118
118
|
// * @returns Method decorator for middleware usage.
|
|
119
119
|
// */
|
|
120
|
-
function
|
|
120
|
+
function ANY(middlewares) {
|
|
121
121
|
return function (target, propertyKey, descriptor) {
|
|
122
|
-
Reflect.defineMetadata(_constants_1.ENDPOINT, ['
|
|
122
|
+
Reflect.defineMetadata(_constants_1.ENDPOINT, ['ANY', '/'], target, propertyKey);
|
|
123
123
|
Reflect.defineMetadata(_constants_1.MIDDLEWARES, middlewares || [], target, propertyKey);
|
|
124
124
|
(0, _constants_1.INCREMENT_STATISTIC)('routes');
|
|
125
125
|
return descriptor;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { LambdaPlugin as Plugin } from '../types/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws.js","sourceRoot":"","sources":["../../src/plugins/aws.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { HttpPlugin as Plugin } from '../types/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/plugins/http.ts"],"names":[],"mappings":""}
|
package/dist/types/common.d.ts
CHANGED
package/dist/types/common.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.HTTP_METHODS = void 0;
|
|
4
4
|
var HTTP_METHODS;
|
|
5
5
|
(function (HTTP_METHODS) {
|
|
6
|
-
HTTP_METHODS["
|
|
6
|
+
HTTP_METHODS["ANY"] = "ANY";
|
|
7
7
|
HTTP_METHODS["GET"] = "GET";
|
|
8
8
|
HTTP_METHODS["POST"] = "POST";
|
|
9
9
|
HTTP_METHODS["PATCH"] = "PATCH";
|
package/dist/types/http.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ErrorCB, InterceptorCB, MiddlewareCB } from './common';
|
|
2
|
+
import { ControllerClass, ControllerType } from './controller';
|
|
2
3
|
import { CORSConfig } from './cors';
|
|
4
|
+
import { HttpPlugin } from './plugins';
|
|
3
5
|
import { SanitizerConfig } from './sanitize';
|
|
4
6
|
import { StaticConfig } from './static';
|
|
5
7
|
export interface ServerConfig {
|
|
@@ -8,7 +10,7 @@ export interface ServerConfig {
|
|
|
8
10
|
middlewares?: MiddlewareCB[];
|
|
9
11
|
interceptor?: InterceptorCB;
|
|
10
12
|
errorHandler?: ErrorCB;
|
|
11
|
-
controllers?:
|
|
13
|
+
controllers?: ControllerType[];
|
|
12
14
|
cors?: CORSConfig;
|
|
13
15
|
sanitizers?: SanitizerConfig[];
|
|
14
16
|
statics?: StaticConfig[];
|
|
@@ -21,3 +23,32 @@ export interface ServerConfig {
|
|
|
21
23
|
enabled: boolean;
|
|
22
24
|
};
|
|
23
25
|
}
|
|
26
|
+
import { Server } from 'http';
|
|
27
|
+
export interface IHttpServer {
|
|
28
|
+
readonly app: Server;
|
|
29
|
+
plugins: HttpPlugin[];
|
|
30
|
+
controllers: ControllerClass[];
|
|
31
|
+
/**
|
|
32
|
+
* Starts HTTP сервер
|
|
33
|
+
* @param port - port
|
|
34
|
+
* @param host - host
|
|
35
|
+
* @returns Promise with HTTP server instance
|
|
36
|
+
* @throws Error
|
|
37
|
+
*/
|
|
38
|
+
listen(port?: number, host?: string): Promise<Server>;
|
|
39
|
+
/**
|
|
40
|
+
* Stops server
|
|
41
|
+
* @returns Promise
|
|
42
|
+
* @throws Error
|
|
43
|
+
*/
|
|
44
|
+
close(): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Get server status
|
|
47
|
+
* @returns object with server config
|
|
48
|
+
*/
|
|
49
|
+
status(): {
|
|
50
|
+
running: boolean;
|
|
51
|
+
config: ServerConfig;
|
|
52
|
+
};
|
|
53
|
+
usePlugin(plugin: HttpPlugin): IHttpServer;
|
|
54
|
+
}
|
package/dist/types/index.d.ts
CHANGED
package/dist/types/index.js
CHANGED
|
@@ -20,6 +20,7 @@ __exportStar(require("./cors"), exports);
|
|
|
20
20
|
__exportStar(require("./http"), exports);
|
|
21
21
|
__exportStar(require("./lambda"), exports);
|
|
22
22
|
__exportStar(require("./multipart"), exports);
|
|
23
|
+
__exportStar(require("./plugins"), exports);
|
|
23
24
|
__exportStar(require("./sanitize"), exports);
|
|
24
25
|
__exportStar(require("./sse"), exports);
|
|
25
26
|
__exportStar(require("./static"), exports);
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,2CAAyB;AACzB,8CAA4B;AAC5B,6CAA2B;AAC3B,wCAAsB;AACtB,2CAAyB;AACzB,8CAA4B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,2CAAyB;AACzB,8CAA4B;AAC5B,4CAA0B;AAC1B,6CAA2B;AAC3B,wCAAsB;AACtB,2CAAyB;AACzB,8CAA4B"}
|
package/dist/types/lambda.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import { APIGatewayProxyEvent, APIGatewayProxyEventV2 } from 'aws-lambda';
|
|
1
|
+
import { APIGatewayProxyEvent, APIGatewayProxyEventV2, Handler } from 'aws-lambda';
|
|
2
|
+
import { HTTP_METHODS } from './common';
|
|
3
|
+
import { ControllerClass } from './controller';
|
|
4
|
+
import { MultipartFile } from './multipart';
|
|
5
|
+
import { LambdaPlugin } from './plugins';
|
|
2
6
|
export interface LambdaFunctionUrlEvent {
|
|
3
7
|
version: string;
|
|
4
8
|
routeKey: string;
|
|
@@ -62,3 +66,36 @@ export interface Lambda {
|
|
|
62
66
|
beforeStart?: () => Promise<void>;
|
|
63
67
|
handleRequest(request: any): Promise<any>;
|
|
64
68
|
}
|
|
69
|
+
export interface ILRequest {
|
|
70
|
+
requestUrl: URL;
|
|
71
|
+
method: HTTP_METHODS;
|
|
72
|
+
path?: string;
|
|
73
|
+
headers: Record<string, string | string[]>;
|
|
74
|
+
query?: Record<string, string | string[]>;
|
|
75
|
+
params?: Record<string, string>;
|
|
76
|
+
body: any;
|
|
77
|
+
rawBody: Buffer<ArrayBufferLike>;
|
|
78
|
+
isBase64Encoded?: boolean;
|
|
79
|
+
cookies: Record<string, string>;
|
|
80
|
+
multipart?: Record<string, MultipartFile | MultipartFile[]>;
|
|
81
|
+
_startTime: number;
|
|
82
|
+
url: string;
|
|
83
|
+
requestId: string;
|
|
84
|
+
stage?: string;
|
|
85
|
+
userAgent: string;
|
|
86
|
+
sourceIp: string;
|
|
87
|
+
end(): void;
|
|
88
|
+
}
|
|
89
|
+
export interface ILResponse {
|
|
90
|
+
body: any;
|
|
91
|
+
setHeader(name: string, value: string): void;
|
|
92
|
+
statusCode: number;
|
|
93
|
+
headers: Record<string, string>;
|
|
94
|
+
send(): void;
|
|
95
|
+
original: any;
|
|
96
|
+
}
|
|
97
|
+
export interface ILambdaAdapter {
|
|
98
|
+
handler: Handler;
|
|
99
|
+
controllers: ControllerClass[];
|
|
100
|
+
plugins: LambdaPlugin[];
|
|
101
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Context } from 'aws-lambda';
|
|
2
|
+
import { IncomingMessage, Server, ServerResponse } from 'http';
|
|
3
|
+
import { AppRequest, MiddlewareCB } from './common';
|
|
4
|
+
import { IHttpServer } from './http';
|
|
5
|
+
import { ILambdaAdapter, ILRequest, ILResponse, LambdaEvent } from './lambda';
|
|
6
|
+
export interface HttpPluginHooks {
|
|
7
|
+
beforeRequest?: (req: IncomingMessage) => void | Promise<void>;
|
|
8
|
+
beforeRoute?: (req: AppRequest, response: ServerResponse) => void | Promise<void>;
|
|
9
|
+
afterResponse?: (req: AppRequest, res: ServerResponse) => void | Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
export interface HttpPlugin {
|
|
12
|
+
name: string;
|
|
13
|
+
onInit?(server: IHttpServer): void | Promise<void>;
|
|
14
|
+
onStart?(server: Server): void | Promise<void>;
|
|
15
|
+
onStop?(server: Server): void | Promise<void>;
|
|
16
|
+
middleware?: MiddlewareCB;
|
|
17
|
+
hooks?: HttpPluginHooks;
|
|
18
|
+
}
|
|
19
|
+
export type PluginHookKeys = keyof HttpPluginHooks;
|
|
20
|
+
export type PluginKeys = keyof Omit<HttpPlugin, 'name' | 'hooks'>;
|
|
21
|
+
export interface LambdaPluginHooks {
|
|
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>;
|
|
25
|
+
}
|
|
26
|
+
export interface LambdaPlugin {
|
|
27
|
+
name: string;
|
|
28
|
+
onInit?(app: ILambdaAdapter, event: LambdaEvent, context: Context): void | Promise<void>;
|
|
29
|
+
hooks?: HttpPluginHooks;
|
|
30
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../src/types/plugins.ts"],"names":[],"mappings":""}
|
package/dist/utils/controller.js
CHANGED
|
@@ -114,7 +114,7 @@ const getControllerMethods = (controller) => {
|
|
|
114
114
|
}
|
|
115
115
|
proto = Object.getPrototypeOf(proto);
|
|
116
116
|
}
|
|
117
|
-
return methods.sort((a, b) => (a.httpMethod === _types_1.HTTP_METHODS.
|
|
117
|
+
return methods.sort((a, b) => (a.httpMethod === _types_1.HTTP_METHODS.ANY ? 1 : -1));
|
|
118
118
|
};
|
|
119
119
|
exports.getControllerMethods = getControllerMethods;
|
|
120
120
|
const getAllMethods = (obj) => {
|
|
@@ -149,18 +149,17 @@ const findRouteInController = (instance, path, route, method) => {
|
|
|
149
149
|
if (endpointMeta.length === 0)
|
|
150
150
|
continue;
|
|
151
151
|
const [httpMethod, routePattern, middlewares] = endpointMeta;
|
|
152
|
-
if (httpMethod !== method && httpMethod !== '
|
|
152
|
+
if (httpMethod !== method && httpMethod !== 'ANY') {
|
|
153
153
|
continue;
|
|
154
154
|
}
|
|
155
|
-
if (httpMethod === '
|
|
155
|
+
if (httpMethod === 'ANY') {
|
|
156
156
|
let useRoute = route.split('/');
|
|
157
|
-
useRoute
|
|
158
|
-
route = useRoute.join('/');
|
|
157
|
+
route = useRoute[0];
|
|
159
158
|
}
|
|
160
159
|
const current = [path, routePattern].join('/').replace(/\/+/g, '/');
|
|
161
160
|
const pathParams = (0, helper_1.matchRoute)(current, route);
|
|
162
161
|
if (pathParams) {
|
|
163
|
-
const priority = httpMethod === '
|
|
162
|
+
const priority = httpMethod === 'ANY' ? 0 : Object.keys(pathParams).length > 0 ? 1 : 2;
|
|
164
163
|
matches.push({
|
|
165
164
|
name,
|
|
166
165
|
pathParams,
|
|
@@ -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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"}
|
package/dist/utils/endpoint.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { ParamDecoratorType } from '../types/index.js';
|
|
2
2
|
export declare function createParamDecorator(type: ParamDecoratorType, dto?: any, name?: string): (target: any, propertyKey: string | symbol, parameterIndex: number) => void;
|
|
3
|
+
export declare const pathStartsWithPrefix: (path: string, prefix: string) => boolean;
|
package/dist/utils/endpoint.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pathStartsWithPrefix = void 0;
|
|
3
4
|
exports.createParamDecorator = createParamDecorator;
|
|
4
5
|
const _constants_1 = require("../constants.js");
|
|
5
6
|
function createParamDecorator(type, dto, name) {
|
|
@@ -10,4 +11,18 @@ function createParamDecorator(type, dto, name) {
|
|
|
10
11
|
Reflect.defineMetadata(_constants_1.PARAM_METADATA_KEY, existingParams, target, propertyKey);
|
|
11
12
|
};
|
|
12
13
|
}
|
|
14
|
+
const pathStartsWithPrefix = (path, prefix) => {
|
|
15
|
+
const pathSegments = path.split('/').filter(Boolean);
|
|
16
|
+
const prefixSegments = prefix.split('/').filter(Boolean);
|
|
17
|
+
if (prefixSegments.length > pathSegments.length) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
for (let i = 0; i < prefixSegments.length; i++) {
|
|
21
|
+
if (pathSegments[i] !== prefixSegments[i]) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return true;
|
|
26
|
+
};
|
|
27
|
+
exports.pathStartsWithPrefix = pathStartsWithPrefix;
|
|
13
28
|
//# sourceMappingURL=endpoint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/utils/endpoint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/utils/endpoint.ts"],"names":[],"mappings":";;;AAGA,oDAUC;AAbD,2CAAgD;AAGhD,SAAgB,oBAAoB,CAAC,IAAwB,EAAE,GAAS,EAAE,IAAa;IACrF,OAAO,UAAU,MAAW,EAAE,WAA4B,EAAE,cAAsB;QAChF,MAAM,cAAc,GAClB,OAAO,CAAC,WAAW,CAAC,+BAAkB,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;QAErE,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAEjD,OAAO,CAAC,cAAc,CAAC,+BAAkB,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAClF,CAAC,CAAC;AACJ,CAAC;AAEM,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,MAAc,EAAW,EAAE;IAC5E,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEzD,IAAI,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAfW,QAAA,oBAAoB,wBAe/B"}
|
package/dist/utils/helper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/utils/helper.ts"],"names":[],"mappings":";;AAEA,
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/utils/helper.ts"],"names":[],"mappings":";;AAEA,gCAwDC;AAED,8CAEC;AAED,4CAEC;AAED,8CAEC;AApED,SAAgB,UAAU,CAAC,OAAe,EAAE,IAAY;IACtD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAEtC,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAErD,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,eAAe,CAAC,MAAM,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QAC7D,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAEpC,IAAI,cAAc,KAAK,GAAG,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9C,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;YAChC,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YAEJ,SAAS;QACX,CAAC;QAED,IAAI,cAAc,KAAK,WAAW,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;IACN,CAAC;IAED,OAAO,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAE1C,IAAI,cAAc,KAAK,GAAG,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACjB,CAAC,EAAE,CAAC;QACN,CAAC;aAAM,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;AACtD,CAAC;AAED,SAAgB,iBAAiB,CAAC,KAAe;IAC/C,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,SAAgB,gBAAgB,CAAC,GAAG,eAAiC;IACnE,OAAO,eAAe,CAAC,IAAI,EAAE,CAAC;AAChC,CAAC;AAED,SAAgB,iBAAiB,CAAC,GAAG,gBAAmC;IACtE,OAAO,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC"}
|
package/dist/utils/server.js.map
CHANGED
|
@@ -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;
|
|
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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "quantum-flow",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.14.0",
|
|
4
4
|
"description": "Decorator-based API framework",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -45,6 +45,16 @@
|
|
|
45
45
|
"import": "./dist/sse/index.js",
|
|
46
46
|
"require": "./dist/sse/index.js",
|
|
47
47
|
"types": "./dist/sse/index.d.ts"
|
|
48
|
+
},
|
|
49
|
+
"./plugins/http": {
|
|
50
|
+
"import": "./dist/plugins/http.js",
|
|
51
|
+
"require": "./dist/plugins/http.js",
|
|
52
|
+
"types": "./dist/plugins/http.js"
|
|
53
|
+
},
|
|
54
|
+
"./plugins/aws": {
|
|
55
|
+
"import": "./dist/plugins/aws.js",
|
|
56
|
+
"require": "./dist/plugins/aws.js",
|
|
57
|
+
"types": "./dist/plugins/aws.js"
|
|
48
58
|
}
|
|
49
59
|
},
|
|
50
60
|
"repository": {
|