@deepkit/http 1.0.1-alpha.16 → 1.0.1-alpha.160

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.
Files changed (124) hide show
  1. package/CHANGELOG.md +236 -0
  2. package/dist/cjs/index.d.ts +14 -10
  3. package/dist/cjs/index.js +19 -11
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/src/controllers.d.ts +10 -3
  6. package/dist/cjs/src/controllers.js +7 -3
  7. package/dist/cjs/src/controllers.js.map +1 -1
  8. package/dist/cjs/src/decorator.d.ts +144 -70
  9. package/dist/cjs/src/decorator.js +277 -102
  10. package/dist/cjs/src/decorator.js.map +1 -1
  11. package/dist/cjs/src/filter.d.ts +49 -0
  12. package/dist/cjs/src/filter.js +215 -0
  13. package/dist/cjs/src/filter.js.map +1 -0
  14. package/dist/cjs/src/http-app.d.ts +8 -0
  15. package/dist/cjs/src/http-app.js +16 -0
  16. package/dist/cjs/src/http-app.js.map +1 -0
  17. package/dist/cjs/src/http.d.ts +131 -32
  18. package/dist/cjs/src/http.js +523 -122
  19. package/dist/cjs/src/http.js.map +1 -1
  20. package/dist/cjs/src/kernel.d.ts +50 -9
  21. package/dist/cjs/src/kernel.js +109 -98
  22. package/dist/cjs/src/kernel.js.map +1 -1
  23. package/dist/cjs/src/logger.d.ts +3 -3
  24. package/dist/cjs/src/logger.js +9 -12
  25. package/dist/cjs/src/logger.js.map +1 -1
  26. package/dist/cjs/src/middleware.d.ts +61 -0
  27. package/dist/cjs/src/middleware.js +95 -0
  28. package/dist/cjs/src/middleware.js.map +1 -0
  29. package/dist/cjs/src/model.d.ts +270 -4
  30. package/dist/cjs/src/model.js +401 -3
  31. package/dist/cjs/src/model.js.map +1 -1
  32. package/dist/cjs/src/module.config.d.ts +149 -4
  33. package/dist/cjs/src/module.config.js +11 -6
  34. package/dist/cjs/src/module.config.js.map +1 -1
  35. package/dist/cjs/src/module.d.ts +14 -32
  36. package/dist/cjs/src/module.js +122 -7
  37. package/dist/cjs/src/module.js.map +1 -1
  38. package/dist/cjs/src/request-parser.d.ts +37 -0
  39. package/dist/cjs/src/request-parser.js +382 -0
  40. package/dist/cjs/src/request-parser.js.map +1 -0
  41. package/dist/cjs/src/router.d.ts +174 -75
  42. package/dist/cjs/src/router.js +469 -288
  43. package/dist/cjs/src/router.js.map +1 -1
  44. package/dist/cjs/src/static-serving.d.ts +32 -4
  45. package/dist/cjs/src/static-serving.js +115 -71
  46. package/dist/cjs/src/static-serving.js.map +1 -1
  47. package/dist/cjs/src/utils.js +2 -2
  48. package/dist/cjs/src/utils.js.map +1 -1
  49. package/dist/cjs/tsconfig.tsbuildinfo +1 -2916
  50. package/dist/esm/index.d.ts +14 -10
  51. package/dist/esm/index.js +14 -10
  52. package/dist/esm/index.js.map +1 -1
  53. package/dist/esm/src/controllers.d.ts +10 -3
  54. package/dist/esm/src/controllers.js +7 -3
  55. package/dist/esm/src/controllers.js.map +1 -1
  56. package/dist/esm/src/decorator.d.ts +144 -70
  57. package/dist/esm/src/decorator.js +272 -99
  58. package/dist/esm/src/decorator.js.map +1 -1
  59. package/dist/esm/src/filter.d.ts +49 -0
  60. package/dist/esm/src/filter.js +209 -0
  61. package/dist/esm/src/filter.js.map +1 -0
  62. package/dist/esm/src/http-app.d.ts +8 -0
  63. package/dist/esm/src/http-app.js +12 -0
  64. package/dist/esm/src/http-app.js.map +1 -0
  65. package/dist/esm/src/http.d.ts +131 -32
  66. package/dist/esm/src/http.js +504 -121
  67. package/dist/esm/src/http.js.map +1 -1
  68. package/dist/esm/src/kernel.d.ts +50 -9
  69. package/dist/esm/src/kernel.js +110 -100
  70. package/dist/esm/src/kernel.js.map +1 -1
  71. package/dist/esm/src/logger.d.ts +3 -3
  72. package/dist/esm/src/logger.js +7 -11
  73. package/dist/esm/src/logger.js.map +1 -1
  74. package/dist/esm/src/middleware.d.ts +61 -0
  75. package/dist/esm/src/middleware.js +90 -0
  76. package/dist/esm/src/middleware.js.map +1 -0
  77. package/dist/esm/src/model.d.ts +270 -4
  78. package/dist/esm/src/model.js +357 -1
  79. package/dist/esm/src/model.js.map +1 -1
  80. package/dist/esm/src/module.config.d.ts +149 -4
  81. package/dist/esm/src/module.config.js +9 -5
  82. package/dist/esm/src/module.config.js.map +1 -1
  83. package/dist/esm/src/module.d.ts +14 -32
  84. package/dist/esm/src/module.js +121 -7
  85. package/dist/esm/src/module.js.map +1 -1
  86. package/dist/esm/src/request-parser.d.ts +37 -0
  87. package/dist/esm/src/request-parser.js +372 -0
  88. package/dist/esm/src/request-parser.js.map +1 -0
  89. package/dist/esm/src/router.d.ts +174 -75
  90. package/dist/esm/src/router.js +463 -285
  91. package/dist/esm/src/router.js.map +1 -1
  92. package/dist/esm/src/static-serving.d.ts +32 -4
  93. package/dist/esm/src/static-serving.js +107 -65
  94. package/dist/esm/src/static-serving.js.map +1 -1
  95. package/dist/esm/src/utils.js +1 -0
  96. package/dist/esm/src/utils.js.map +1 -1
  97. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -2916
  98. package/index.ts +14 -10
  99. package/package.json +30 -19
  100. package/src/controllers.ts +4 -3
  101. package/src/decorator.ts +242 -104
  102. package/src/filter.ts +224 -0
  103. package/src/http-app.ts +11 -0
  104. package/src/http.ts +501 -100
  105. package/src/kernel.ts +128 -80
  106. package/src/logger.ts +4 -6
  107. package/src/middleware.ts +116 -0
  108. package/src/model.ts +516 -5
  109. package/src/module.config.ts +168 -5
  110. package/src/module.ts +120 -7
  111. package/src/request-parser.ts +430 -0
  112. package/src/router.ts +546 -317
  113. package/src/static-serving.ts +120 -50
  114. package/src/utils.ts +0 -2
  115. package/tsconfig.esm.json +7 -7
  116. package/tsconfig.json +18 -11
  117. package/tsconfig.spec.json +8 -0
  118. package/dist/cjs/tests/router.spec.d.ts +0 -1
  119. package/dist/cjs/tests/router.spec.js +0 -481
  120. package/dist/cjs/tests/router.spec.js.map +0 -1
  121. package/dist/esm/tests/router.spec.d.ts +0 -1
  122. package/dist/esm/tests/router.spec.js +0 -479
  123. package/dist/esm/tests/router.spec.js.map +0 -1
  124. package/tests/router.spec.ts +0 -347
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/http.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,56 @@
1
1
  import { InjectorContext } from '@deepkit/injector';
2
- import { Router } from './router';
2
+ import { HttpRouter } from './router.js';
3
3
  import { EventDispatcher } from '@deepkit/event';
4
- import { Logger } from '@deepkit/logger';
5
- import { HttpRequest, HttpResponse } from './model';
4
+ import { LoggerInterface } from '@deepkit/logger';
5
+ import { MemoryHttpResponse, RequestBuilder } from './model.js';
6
+ import { Stopwatch } from '@deepkit/stopwatch';
7
+ import { IncomingMessage, ServerResponse } from 'http';
8
+ interface HttpKernelHandleOptions {
9
+ /**
10
+ * Makes the kernel throw a HttpNotFoundError when the route is not found
11
+ * or a controller threw a HttpNotFoundError. This allows you to catch
12
+ * the error and handle it yourself.
13
+ */
14
+ throwOnNotFound?: boolean;
15
+ }
16
+ interface HttpKernelMiddlewareOptions extends HttpKernelHandleOptions {
17
+ /**
18
+ * If true, a HttpNotFoundError or missing route is not automatically
19
+ * sent to the client. Instead, the request is passed to the next middleware.
20
+ */
21
+ fallThroughOnNotFound?: boolean;
22
+ }
6
23
  export declare class HttpKernel {
7
- protected router: Router;
24
+ protected router: HttpRouter;
8
25
  protected eventDispatcher: EventDispatcher;
9
26
  protected injectorContext: InjectorContext;
10
- protected logger: Logger;
11
- protected debug: boolean;
12
- constructor(router: Router, eventDispatcher: EventDispatcher, injectorContext: InjectorContext, logger: Logger, debug?: boolean);
13
- handleRequestFor(method: string, url: string, jsonBody?: any): Promise<any>;
14
- handleRequest(req: HttpRequest, res: HttpResponse): Promise<void>;
27
+ protected logger: LoggerInterface;
28
+ protected stopwatch?: Stopwatch | undefined;
29
+ constructor(router: HttpRouter, eventDispatcher: EventDispatcher, injectorContext: InjectorContext, logger: LoggerInterface, stopwatch?: Stopwatch | undefined);
30
+ /**
31
+ * Creates a request handler function that can be used with http.createServer
32
+ * or any other http server library based on the node.js http module.
33
+ *
34
+ * When `fallThroughOnNotFound` is set to true, the handler will call `next()`
35
+ * when the route is not found, allowing the request to fall through to the next
36
+ * middleware in the chain.
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * import { createServer } from 'http';
41
+ *
42
+ * const app = new App({
43
+ * imports: [new HttpModule({})],
44
+ * });
45
+ *
46
+ * const handler = app.get(HttpKernel).createMiddleware({ fallThroughOnNotFound: true });
47
+ * const server = createServer(handler);
48
+ *
49
+ * server.listen(3000);
50
+ * ```
51
+ */
52
+ createMiddleware(options?: HttpKernelMiddlewareOptions): (req: IncomingMessage, res: ServerResponse, next: (error?: any) => void) => Promise<void>;
53
+ request(requestBuilder: RequestBuilder, options?: HttpKernelHandleOptions): Promise<MemoryHttpResponse>;
54
+ handleRequest(_req: IncomingMessage, _res: ServerResponse, options?: HttpKernelHandleOptions): Promise<void>;
15
55
  }
56
+ export {};
@@ -1,118 +1,129 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.HttpKernel = void 0;
4
+ /*@ts-ignore*/
5
+ const { __ΩLoggerInterface } = require('@deepkit/logger');
6
+ function __assignType(fn, args) {
7
+ fn.__type = args;
8
+ return fn;
9
+ }
16
10
  const injector_1 = require("@deepkit/injector");
17
- const router_1 = require("./router");
11
+ const router_js_1 = require("./router.js");
18
12
  const event_1 = require("@deepkit/event");
19
- const logger_1 = require("@deepkit/logger");
20
- const model_1 = require("./model");
21
- const net_1 = require("net");
22
- const http_1 = require("./http");
23
- const module_config_1 = require("./module.config");
24
- let HttpKernel = class HttpKernel {
25
- constructor(router, eventDispatcher, injectorContext, logger, debug = false) {
13
+ const model_js_1 = require("./model.js");
14
+ const http_js_1 = require("./http.js");
15
+ const stopwatch_1 = require("@deepkit/stopwatch");
16
+ const fs_1 = require("fs");
17
+ const type_1 = require("@deepkit/type");
18
+ const __ΩHttpKernelHandleOptions = ['throwOnNotFound', 'HttpKernelHandleOptions', 'P)4!8Mw"y'];
19
+ const __ΩHttpKernelMiddlewareOptions = [() => __ΩHttpKernelHandleOptions, 'fallThroughOnNotFound', 'HttpKernelMiddlewareOptions', 'Pn!)4"8Mw#y'];
20
+ class HttpKernel {
21
+ constructor(router, eventDispatcher, injectorContext, logger, stopwatch) {
26
22
  this.router = router;
27
23
  this.eventDispatcher = eventDispatcher;
28
24
  this.injectorContext = injectorContext;
29
25
  this.logger = logger;
30
- this.debug = debug;
26
+ this.stopwatch = stopwatch;
31
27
  }
32
- async handleRequestFor(method, url, jsonBody) {
33
- const body = Buffer.from(jsonBody ? JSON.stringify(jsonBody) : '');
34
- const request = new (class extends model_1.HttpRequest {
35
- constructor() {
36
- super(...arguments);
37
- this.url = url;
38
- this.method = method;
39
- this.position = 0;
40
- this.headers = {
41
- 'content-type': 'application/json',
42
- 'content-length': String(body.byteLength),
43
- };
44
- this.done = false;
45
- }
46
- _read(size) {
47
- if (this.done) {
48
- this.push(null);
49
- }
50
- else {
51
- this.push(body);
52
- this.done = true;
53
- }
54
- }
55
- })(new net_1.Socket());
56
- let result = 'nothing';
57
- const response = new (class extends model_1.HttpResponse {
58
- end(chunk) {
59
- result = chunk ? chunk.toString() : chunk;
60
- }
61
- write(chunk) {
62
- result = chunk ? chunk.toString() : chunk;
63
- return true;
64
- }
65
- })(request);
66
- await this.handleRequest(request, response);
67
- if (result === '' || result === undefined || result === null)
68
- return result;
69
- try {
70
- return JSON.parse(result);
71
- }
72
- catch (error) {
73
- return result;
28
+ /**
29
+ * Creates a request handler function that can be used with http.createServer
30
+ * or any other http server library based on the node.js http module.
31
+ *
32
+ * When `fallThroughOnNotFound` is set to true, the handler will call `next()`
33
+ * when the route is not found, allowing the request to fall through to the next
34
+ * middleware in the chain.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * import { createServer } from 'http';
39
+ *
40
+ * const app = new App({
41
+ * imports: [new HttpModule({})],
42
+ * });
43
+ *
44
+ * const handler = app.get(HttpKernel).createMiddleware({ fallThroughOnNotFound: true });
45
+ * const server = createServer(handler);
46
+ *
47
+ * server.listen(3000);
48
+ * ```
49
+ */
50
+ createMiddleware(options = {}) {
51
+ if (options.fallThroughOnNotFound && 'undefined' === typeof options.throwOnNotFound) {
52
+ options.throwOnNotFound = true;
74
53
  }
54
+ return __assignType((req, res, next) => {
55
+ return this.handleRequest(req, res, options).then(() => {
56
+ next();
57
+ }).catch(__assignType((error) => {
58
+ if (options.fallThroughOnNotFound && error instanceof http_js_1.HttpError && error.httpCode === 404) {
59
+ next();
60
+ return;
61
+ }
62
+ next(error);
63
+ }, ['error', '', 'P"2!"/"']));
64
+ }, ['req', 'res', 'error', '', 'next', 'P!2!!2"P"2#8$/$2%"/$']);
75
65
  }
76
- async handleRequest(req, res) {
77
- const httpInjectorContext = this.injectorContext.createChildScope('http', new injector_1.MemoryInjector([
78
- { provide: model_1.HttpRequest, useValue: req },
79
- { provide: model_1.HttpResponse, useValue: res },
80
- ]));
81
- //todo: How should we do that?
82
- // const collector = this.debug ? httpInjectorContext.get(HttpRequestDebugCollector) : undefined;
83
- // const workflow = httpWorkflow.create('start', this.eventDispatcher, httpInjectorContext, collector?.stopwatch);
84
- const workflow = http_1.httpWorkflow.create('start', this.eventDispatcher, httpInjectorContext);
66
+ async request(requestBuilder, options = {}) {
67
+ const request = requestBuilder.build();
68
+ const response = new model_js_1.MemoryHttpResponse(request);
69
+ response.assignSocket(request.socket);
70
+ await this.handleRequest(request, response, options);
71
+ return response;
72
+ }
73
+ async handleRequest(_req, _res, options = {}) {
74
+ const httpInjectorContext = this.injectorContext.createChildScope('http');
75
+ const req = (0, model_js_1.incomingMessageToHttpRequest)(_req);
76
+ const res = (0, model_js_1.serverResponseToHttpResponse)(_res);
77
+ httpInjectorContext.set(model_js_1.HttpRequest, req);
78
+ httpInjectorContext.set(model_js_1.HttpResponse, res);
79
+ httpInjectorContext.set(injector_1.InjectorContext, httpInjectorContext);
80
+ req.throwErrorOnNotFound = options.throwOnNotFound || false;
81
+ const frame = this.stopwatch ? this.stopwatch.start(req.method + ' ' + req.getUrl(), stopwatch_1.FrameCategory.http, true) : undefined;
82
+ const workflow = http_js_1.httpWorkflow.create('start', this.eventDispatcher, httpInjectorContext, this.stopwatch);
85
83
  try {
86
- // if (collector) {
87
- // await collector.init();
88
- // try {
89
- // collector.stopwatch.start('http');
90
- //
91
- // //todo: How should we do that?
92
- // await Zone.run({ collector: collector }, async () => {
93
- // await workflow.apply('request', new HttpRequestEvent(httpInjectorContext, req, res));
94
- // });
95
- // collector.stopwatch.end('http');
96
- // } finally {
97
- // await collector.save();
98
- // }
99
- // } else {
100
- await workflow.apply('request', new http_1.HttpRequestEvent(httpInjectorContext, req, res));
101
- // }
84
+ if (frame) {
85
+ frame.data({ url: req.getUrl(), method: req.getMethod(), clientIp: req.getRemoteAddress() });
86
+ await frame.run(() => workflow.apply('request', new http_js_1.HttpRequestEvent(httpInjectorContext, req, res)));
87
+ }
88
+ else {
89
+ await workflow.apply('request', new http_js_1.HttpRequestEvent(httpInjectorContext, req, res));
90
+ }
102
91
  }
103
92
  catch (error) {
93
+ if (!res.headersSent) {
94
+ const resultFormatter = httpInjectorContext.get(http_js_1.HttpResultFormatter);
95
+ if (error instanceof type_1.ValidationError) {
96
+ resultFormatter.handle(new http_js_1.JSONResponse({
97
+ message: error.message,
98
+ errors: error.errors,
99
+ }, 400).disableAutoSerializing(), { request: req, response: res });
100
+ return;
101
+ }
102
+ else if (error instanceof http_js_1.HttpError) {
103
+ if (req.throwErrorOnNotFound && error.httpCode === 404) {
104
+ throw error;
105
+ }
106
+ resultFormatter.handle(new http_js_1.JSONResponse({
107
+ message: error.message,
108
+ }, error.httpCode).disableAutoSerializing(), { request: req, response: res });
109
+ return;
110
+ }
111
+ res.status(500);
112
+ }
104
113
  this.logger.error('HTTP kernel request failed', error);
105
- throw error;
114
+ }
115
+ finally {
116
+ for (const file of Object.values(req.uploadedFiles || [])) {
117
+ (0, fs_1.unlink)(file.path, () => {
118
+ });
119
+ }
120
+ if (frame) {
121
+ frame.data({ responseStatus: res.statusCode });
122
+ frame.end();
123
+ }
106
124
  }
107
125
  }
108
- };
109
- HttpKernel = __decorate([
110
- injector_1.injectable(),
111
- __param(4, injector_1.inject(module_config_1.config.token('debug'))),
112
- __metadata("design:paramtypes", [router_1.Router,
113
- event_1.EventDispatcher,
114
- injector_1.InjectorContext,
115
- logger_1.Logger, Boolean])
116
- ], HttpKernel);
126
+ }
117
127
  exports.HttpKernel = HttpKernel;
128
+ HttpKernel.__type = [() => router_js_1.HttpRouter, 'router', () => event_1.EventDispatcher, 'eventDispatcher', () => injector_1.InjectorContext, 'injectorContext', () => __ΩLoggerInterface, 'logger', () => stopwatch_1.Stopwatch, 'stopwatch', 'constructor', () => __ΩHttpKernelMiddlewareOptions, 'options', () => ({}), 'createMiddleware', () => model_js_1.RequestBuilder, 'requestBuilder', () => __ΩHttpKernelHandleOptions, () => ({}), () => model_js_1.MemoryHttpResponse, 'request', '_req', '_res', () => __ΩHttpKernelHandleOptions, () => ({}), 'handleRequest', 'HttpKernel', 'PP7!2"<P7#2$<P7%2&<n\'2(<P7)2*8<"0+Pn,2->."0/PP7021n22->3P74`05P!26!27n82->9$`0:5w;'];
118
129
  //# sourceMappingURL=kernel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../src/kernel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../src/kernel.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { Logger } from '@deepkit/logger';
2
- import { httpWorkflow } from './http';
1
+ import { LoggerInterface } from '@deepkit/logger';
2
+ import { httpWorkflow } from './http.js';
3
3
  export declare class HttpLogger {
4
4
  private logger;
5
- constructor(logger: Logger);
5
+ constructor(logger: LoggerInterface);
6
6
  onHttpRequest(event: typeof httpWorkflow.onResponse.event): void;
7
7
  }
@@ -10,28 +10,25 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.HttpLogger = void 0;
13
- const injector_1 = require("@deepkit/injector");
14
- const logger_1 = require("@deepkit/logger");
13
+ /*@ts-ignore*/
14
+ const { __ΩLoggerInterface } = require('@deepkit/logger');
15
15
  const event_1 = require("@deepkit/event");
16
- const http_1 = require("./http");
17
- let HttpLogger = class HttpLogger {
16
+ const http_js_1 = require("./http.js");
17
+ class HttpLogger {
18
18
  constructor(logger) {
19
19
  this.logger = logger;
20
20
  }
21
21
  onHttpRequest(event) {
22
- this.logger.log(event.request.connection.remoteAddress, '-', event.request.method, `"${event.request.url}"`, event.response.statusCode, `"${event.request.headers.referer || ''}"`);
22
+ this.logger.log(event.request.connection.remoteAddress || '0.0.0.0', '-', event.request.method, `"${event.request.url}"`, event.response.statusCode, `"${event.request.headers.referer || ''}"`);
23
23
  }
24
- };
24
+ }
25
+ exports.HttpLogger = HttpLogger;
26
+ HttpLogger.__type = [() => __ΩLoggerInterface, 'logger', 'constructor', () => http_js_1.httpWorkflow.onResponse.event, 'event', 'onHttpRequest', 'HttpLogger', 'Pn!2";"0#Pi$2%"0&5w\''];
25
27
  __decorate([
26
- event_1.eventDispatcher.listen(http_1.httpWorkflow.onResponse, 101) //101 is right after 100 default listener
28
+ event_1.eventDispatcher.listen(http_js_1.httpWorkflow.onResponse, 101) //101 is right after 100 default listener
27
29
  ,
28
30
  __metadata("design:type", Function),
29
31
  __metadata("design:paramtypes", [Object]),
30
32
  __metadata("design:returntype", void 0)
31
33
  ], HttpLogger.prototype, "onHttpRequest", null);
32
- HttpLogger = __decorate([
33
- injector_1.injectable(),
34
- __metadata("design:paramtypes", [logger_1.Logger])
35
- ], HttpLogger);
36
- exports.HttpLogger = HttpLogger;
37
34
  //# sourceMappingURL=logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/logger.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA+C;AAC/C,4CAAyC;AACzC,0CAAiD;AACjD,iCAAsC;AAGtC,IAAa,UAAU,GAAvB,MAAa,UAAU;IACnB,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAClC,CAAC;IAGD,aAAa,CAAC,KAA2C;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,EAC3C,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,EACxB,KAAK,CAAC,QAAQ,CAAC,UAAU,EACzB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,GAAG,CAE7C,CAAC;IACN,CAAC;CACJ,CAAA;AAVG;IADC,uBAAe,CAAC,MAAM,CAAC,mBAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,yCAAyC;;;;;+CAU9F;AAdQ,UAAU;IADtB,qBAAU,EAAE;qCAEmB,eAAM;GADzB,UAAU,CAetB;AAfY,gCAAU"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;uCAAgC,iBAAiB;AACjD,0CAAiD;AACjD,uCAAyC;AAEzC,MAAa,UAAU;IACnB,YAAoB,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAC3C,CAAC;IAGD,aAAa,CAAC,KAA2C;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,IAAI,SAAS,EAAE,GAAG,EACxD,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,EACxB,KAAK,CAAC,QAAQ,CAAC,UAAU,EACzB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,GAAG,CAE7C,CAAC;IACN,CAAC;;AAdL,gCAeC;qGAV4C,UAAU,CAAC,KAAK;AAAzD;IADC,uBAAe,CAAC,MAAM,CAAC,sBAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,yCAAyC;;;;;+CAU9F"}
@@ -0,0 +1,61 @@
1
+ import { ClassType } from '@deepkit/core';
2
+ import { AppModule } from '@deepkit/app';
3
+ import { HttpRequest, HttpResponse } from './model.js';
4
+ import { InjectorModule } from '@deepkit/injector';
5
+ export type HttpMiddlewareFn = (req: HttpRequest, res: HttpResponse, next: (err?: any) => void) => void | Promise<void>;
6
+ export interface HttpMiddleware {
7
+ execute: HttpMiddlewareFn;
8
+ }
9
+ export interface HttpMiddlewareRoute {
10
+ path?: string;
11
+ pathRegExp?: RegExp;
12
+ httpMethod?: 'GET' | 'HEAD' | 'POST' | 'PATCH' | 'PUT' | 'DELETE' | 'OPTIONS' | 'TRACE';
13
+ category?: string;
14
+ excludeCategory?: string;
15
+ group?: string;
16
+ excludeGroup?: string;
17
+ }
18
+ export declare class HttpMiddlewareConfig {
19
+ name?: string;
20
+ middlewares: (HttpMiddlewareFn | ClassType<HttpMiddleware>)[];
21
+ routes: HttpMiddlewareRoute[];
22
+ excludeRoutes: HttpMiddlewareRoute[];
23
+ order: number;
24
+ controllers: ClassType[];
25
+ excludeControllers: ClassType[];
26
+ routeNames: string[];
27
+ excludeRouteNames: string[];
28
+ timeout?: number;
29
+ modules: InjectorModule<any>[];
30
+ selfModule: boolean;
31
+ getClassTypes(): ClassType[];
32
+ }
33
+ export declare class HttpMiddlewareApi {
34
+ t: HttpMiddlewareConfig;
35
+ name(name: string): void;
36
+ for(...middlewares: (HttpMiddlewareFn | ClassType<HttpMiddleware>)[]): void;
37
+ forRoutes(...routes: HttpMiddlewareRoute[]): void;
38
+ excludeRoutes(...routes: HttpMiddlewareRoute[]): void;
39
+ forRouteNames(...names: string[]): void;
40
+ excludeRouteNames(...names: string[]): void;
41
+ /**
42
+ * When the middleware does not respond (either calling next() or sending headers) withing <timeout> milliseconds,
43
+ * automatically the next is executed and warning printed.
44
+ */
45
+ timeout(timeout: number): void;
46
+ forControllers(...controllers: ClassType[]): void;
47
+ excludeControllers(...controllers: ClassType[]): void;
48
+ /**
49
+ * Per default middlewares are executed in the order they were registered. The default order is 0. A lower order means the middleware is executed earlier.
50
+ */
51
+ order(order: number): void;
52
+ forModules(...modules: AppModule<any>[]): void;
53
+ /**
54
+ * Limit the middleware to the module where this middleware is defined.
55
+ */
56
+ forSelfModules(): void;
57
+ }
58
+ export declare const httpMiddleware: import("@deepkit/type").FreeDecoratorResult<typeof HttpMiddlewareApi>;
59
+ export declare type __ΩHttpMiddlewareFn = any[];
60
+ export declare type __ΩHttpMiddleware = any[];
61
+ export declare type __ΩHttpMiddlewareRoute = any[];
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.httpMiddleware = exports.HttpMiddlewareApi = exports.HttpMiddlewareConfig = exports.__ΩHttpMiddlewareRoute = exports.__ΩHttpMiddleware = exports.__ΩHttpMiddlewareFn = void 0;
4
+ /*@ts-ignore*/
5
+ const { __ΩClassType } = require('@deepkit/core');
6
+ const core_1 = require("@deepkit/core");
7
+ const app_1 = require("@deepkit/app");
8
+ const type_1 = require("@deepkit/type");
9
+ const model_js_1 = require("./model.js");
10
+ const injector_1 = require("@deepkit/injector");
11
+ const __ΩHttpMiddlewareFn = [() => model_js_1.HttpRequest, 'req', () => model_js_1.HttpResponse, 'res', 'err', '', 'next', 'HttpMiddlewareFn', 'PP7!2"P7#2$P"2%8$/&2\'P$$`J/&w(y'];
12
+ exports.__ΩHttpMiddlewareFn = __ΩHttpMiddlewareFn;
13
+ const __ΩHttpMiddleware = [() => __ΩHttpMiddlewareFn, 'execute', 'HttpMiddleware', 'Pn!4"Mw#y'];
14
+ exports.__ΩHttpMiddleware = __ΩHttpMiddleware;
15
+ const __ΩHttpMiddlewareRoute = ['path', 'pathRegExp', "GET", "HEAD", "POST", "PATCH", "PUT", "DELETE", "OPTIONS", "TRACE", 'httpMethod', 'category', 'excludeCategory', 'group', 'excludeGroup', 'HttpMiddlewareRoute', 'P&4!8A4"8P.#.$.%.&.\'.(.).*J4+8&4,8&4-8&4.8&4/8Mw0y'];
16
+ exports.__ΩHttpMiddlewareRoute = __ΩHttpMiddlewareRoute;
17
+ class HttpMiddlewareConfig {
18
+ constructor() {
19
+ this.middlewares = [];
20
+ this.routes = [];
21
+ this.excludeRoutes = [];
22
+ this.order = 0;
23
+ this.controllers = [];
24
+ this.excludeControllers = [];
25
+ this.routeNames = [];
26
+ this.excludeRouteNames = [];
27
+ this.modules = [];
28
+ this.selfModule = false;
29
+ }
30
+ getClassTypes() {
31
+ const classTypes = [];
32
+ for (const middleware of this.middlewares) {
33
+ if ((0, core_1.isClass)(middleware))
34
+ classTypes.push(middleware);
35
+ }
36
+ return classTypes;
37
+ }
38
+ }
39
+ exports.HttpMiddlewareConfig = HttpMiddlewareConfig;
40
+ HttpMiddlewareConfig.__type = ['name', () => __ΩHttpMiddlewareFn, () => __ΩClassType, () => __ΩHttpMiddleware, 'middlewares', function () { return []; }, () => __ΩHttpMiddlewareRoute, 'routes', function () { return []; }, () => __ΩHttpMiddlewareRoute, 'excludeRoutes', function () { return []; }, 'order', function () { return 0; }, () => __ΩClassType, 'controllers', function () { return []; }, () => __ΩClassType, 'excludeControllers', function () { return []; }, 'routeNames', function () { return []; }, 'excludeRouteNames', function () { return []; }, 'timeout', () => injector_1.InjectorModule, 'modules', function () { return []; }, 'selfModule', function () { return false; }, () => __ΩClassType, 'getClassTypes', 'HttpMiddlewareConfig', '&3!8Pn"n$o#"JF3%>&n\'F3(>)n*F3+>,\'3->.n/F30>1n2F33>4&F35>6&F37>8\'398P"7:F3;><)3=>>Pn?F0@5wA'];
41
+ class HttpMiddlewareApi {
42
+ constructor() {
43
+ this.t = new HttpMiddlewareConfig;
44
+ }
45
+ name(name) {
46
+ this.t.name = name;
47
+ }
48
+ for(...middlewares) {
49
+ this.t.middlewares = middlewares;
50
+ }
51
+ forRoutes(...routes) {
52
+ this.t.routes = routes;
53
+ }
54
+ excludeRoutes(...routes) {
55
+ this.t.excludeRoutes = routes;
56
+ }
57
+ forRouteNames(...names) {
58
+ this.t.routeNames = names;
59
+ }
60
+ excludeRouteNames(...names) {
61
+ this.t.excludeRouteNames = names;
62
+ }
63
+ /**
64
+ * When the middleware does not respond (either calling next() or sending headers) withing <timeout> milliseconds,
65
+ * automatically the next is executed and warning printed.
66
+ */
67
+ timeout(timeout) {
68
+ this.t.timeout = timeout;
69
+ }
70
+ forControllers(...controllers) {
71
+ this.t.controllers = controllers;
72
+ }
73
+ excludeControllers(...controllers) {
74
+ this.t.excludeControllers = controllers;
75
+ }
76
+ /**
77
+ * Per default middlewares are executed in the order they were registered. The default order is 0. A lower order means the middleware is executed earlier.
78
+ */
79
+ order(order) {
80
+ this.t.order = order;
81
+ }
82
+ forModules(...modules) {
83
+ this.t.modules = modules;
84
+ }
85
+ /**
86
+ * Limit the middleware to the module where this middleware is defined.
87
+ */
88
+ forSelfModules() {
89
+ this.t.selfModule = true;
90
+ }
91
+ }
92
+ exports.HttpMiddlewareApi = HttpMiddlewareApi;
93
+ HttpMiddlewareApi.__type = ['t', function () { return new HttpMiddlewareConfig; }, 'name', () => __ΩHttpMiddlewareFn, () => __ΩClassType, () => __ΩHttpMiddleware, 'middlewares', 'for', () => __ΩHttpMiddlewareRoute, 'routes', 'forRoutes', () => __ΩHttpMiddlewareRoute, 'excludeRoutes', 'names', 'forRouteNames', 'excludeRouteNames', 'timeout', () => __ΩClassType, 'controllers', 'forControllers', () => __ΩClassType, 'excludeControllers', 'order', () => app_1.AppModule, 'modules', 'forModules', 'forSelfModules', 'HttpMiddlewareApi', '!3!>"P&2#"0#PPn$n&o%"J@2\'"0(Pn)@2*"0+Pn,@2*"0-P&@2."0/P&@2."00P\'21"01Pn2@23"04Pn5@23"06P\'27"07PP"78@29"0:P"0;5w<'];
94
+ exports.httpMiddleware = (0, type_1.createFreeDecoratorContext)(HttpMiddlewareApi);
95
+ //# sourceMappingURL=middleware.js.map