@deepkit/http 1.0.1-alpha.92 → 1.0.1-alpha.94

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 (53) hide show
  1. package/dist/cjs/src/http.d.ts +7 -6
  2. package/dist/cjs/src/http.js +22 -12
  3. package/dist/cjs/src/http.js.map +1 -1
  4. package/dist/cjs/src/kernel.js +18 -1
  5. package/dist/cjs/src/kernel.js.map +1 -1
  6. package/dist/cjs/src/logger.js +1 -1
  7. package/dist/cjs/src/logger.js.map +1 -1
  8. package/dist/cjs/src/model.d.ts +17 -0
  9. package/dist/cjs/src/model.js +10 -2
  10. package/dist/cjs/src/model.js.map +1 -1
  11. package/dist/cjs/src/module.d.ts +4 -1
  12. package/dist/cjs/src/module.js +57 -1
  13. package/dist/cjs/src/module.js.map +1 -1
  14. package/dist/cjs/src/request-parser.d.ts +35 -0
  15. package/dist/cjs/src/request-parser.js +302 -0
  16. package/dist/cjs/src/request-parser.js.map +1 -0
  17. package/dist/cjs/src/router.d.ts +7 -20
  18. package/dist/cjs/src/router.js +23 -247
  19. package/dist/cjs/src/router.js.map +1 -1
  20. package/dist/cjs/src/static-serving.js +1 -1
  21. package/dist/cjs/src/static-serving.js.map +1 -1
  22. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  23. package/dist/esm/src/http.d.ts +7 -6
  24. package/dist/esm/src/http.js +22 -12
  25. package/dist/esm/src/http.js.map +1 -1
  26. package/dist/esm/src/kernel.js +19 -2
  27. package/dist/esm/src/kernel.js.map +1 -1
  28. package/dist/esm/src/logger.js +1 -1
  29. package/dist/esm/src/logger.js.map +1 -1
  30. package/dist/esm/src/model.d.ts +17 -0
  31. package/dist/esm/src/model.js +9 -1
  32. package/dist/esm/src/model.js.map +1 -1
  33. package/dist/esm/src/module.d.ts +4 -1
  34. package/dist/esm/src/module.js +59 -3
  35. package/dist/esm/src/module.js.map +1 -1
  36. package/dist/esm/src/request-parser.d.ts +35 -0
  37. package/dist/esm/src/request-parser.js +292 -0
  38. package/dist/esm/src/request-parser.js.map +1 -0
  39. package/dist/esm/src/router.d.ts +7 -20
  40. package/dist/esm/src/router.js +26 -250
  41. package/dist/esm/src/router.js.map +1 -1
  42. package/dist/esm/src/static-serving.js +1 -1
  43. package/dist/esm/src/static-serving.js.map +1 -1
  44. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  45. package/package.json +11 -11
  46. package/src/http.ts +15 -8
  47. package/src/kernel.ts +22 -3
  48. package/src/logger.ts +1 -1
  49. package/src/model.ts +6 -1
  50. package/src/module.ts +59 -2
  51. package/src/request-parser.ts +340 -0
  52. package/src/router.ts +26 -290
  53. package/src/static-serving.ts +1 -1
@@ -2,7 +2,7 @@
2
2
  /// <reference types="node" />
3
3
  import { ClassType, CustomError } from '@deepkit/core';
4
4
  import { OutgoingHttpHeaders, ServerResponse } from 'http';
5
- import { HttpRequest, HttpResponse } from './model.js';
5
+ import { HttpRequest, HttpRequestPositionedParameters, HttpResponse } from './model.js';
6
6
  import { InjectorContext } from '@deepkit/injector';
7
7
  import { LoggerInterface } from '@deepkit/logger';
8
8
  import { HttpRouter, RouteConfig, RouteParameterResolverForInjector } from './router.js';
@@ -102,7 +102,7 @@ export declare class HttpWorkflowEventWithRoute extends HttpWorkflowEvent {
102
102
  route: RouteConfig;
103
103
  constructor(injectorContext: InjectorContext, request: HttpRequest, response: HttpResponse, route: RouteConfig);
104
104
  send(response: any): void;
105
- accessDenied(): void;
105
+ accessDenied(error?: Error): void;
106
106
  }
107
107
  export declare class HttpRouteEvent extends HttpWorkflowEvent {
108
108
  injectorContext: InjectorContext;
@@ -128,7 +128,8 @@ export declare class HttpAccessDeniedEvent extends HttpWorkflowEvent {
128
128
  request: HttpRequest;
129
129
  response: HttpResponse;
130
130
  route: RouteConfig;
131
- constructor(injectorContext: InjectorContext, request: HttpRequest, response: HttpResponse, route: RouteConfig);
131
+ error?: Error | undefined;
132
+ constructor(injectorContext: InjectorContext, request: HttpRequest, response: HttpResponse, route: RouteConfig, error?: Error | undefined);
132
133
  }
133
134
  export declare class HttpResolveParametersEvent extends HttpWorkflowEventWithRoute {
134
135
  injectorContext: InjectorContext;
@@ -136,7 +137,7 @@ export declare class HttpResolveParametersEvent extends HttpWorkflowEventWithRou
136
137
  response: HttpResponse;
137
138
  parameterResolver: RouteParameterResolverForInjector;
138
139
  route: RouteConfig;
139
- parameters: any[];
140
+ parameters: HttpRequestPositionedParameters;
140
141
  constructor(injectorContext: InjectorContext, request: HttpRequest, response: HttpResponse, parameterResolver: RouteParameterResolverForInjector, route: RouteConfig);
141
142
  accessDenied(): void;
142
143
  }
@@ -144,9 +145,9 @@ export declare class HttpControllerEvent extends HttpWorkflowEventWithRoute {
144
145
  injectorContext: InjectorContext;
145
146
  request: HttpRequest;
146
147
  response: HttpResponse;
147
- parameters: any[];
148
+ parameters: HttpRequestPositionedParameters;
148
149
  route: RouteConfig;
149
- constructor(injectorContext: InjectorContext, request: HttpRequest, response: HttpResponse, parameters: any[], route: RouteConfig);
150
+ constructor(injectorContext: InjectorContext, request: HttpRequest, response: HttpResponse, parameters: HttpRequestPositionedParameters, route: RouteConfig);
150
151
  }
151
152
  export declare class HttpResponseEvent extends WorkflowEvent {
152
153
  injectorContext: InjectorContext;
@@ -18,6 +18,8 @@ const { __ΩClassType } = require('@deepkit/core');
18
18
  /*@ts-ignore*/
19
19
  const { __ΩRouteParameterResolverForInjector } = require('./router.js');
20
20
  /*@ts-ignore*/
21
+ const { __ΩHttpRequestPositionedParameters } = require('./model.js');
22
+ /*@ts-ignore*/
21
23
  const { __ΩLoggerInterface } = require('@deepkit/logger');
22
24
  function __assignType(fn, args) {
23
25
  fn.__type = args;
@@ -203,12 +205,12 @@ class HttpWorkflowEventWithRoute extends HttpWorkflowEvent {
203
205
  send(response) {
204
206
  this.next('response', new HttpResponseEvent(this.injectorContext, this.request, this.response, response, this.route));
205
207
  }
206
- accessDenied() {
207
- this.next('accessDenied', new HttpAccessDeniedEvent(this.injectorContext, this.request, this.response, this.route));
208
+ accessDenied(error) {
209
+ this.next('accessDenied', new HttpAccessDeniedEvent(this.injectorContext, this.request, this.response, this.route, error));
208
210
  }
209
211
  }
210
212
  exports.HttpWorkflowEventWithRoute = HttpWorkflowEventWithRoute;
211
- HttpWorkflowEventWithRoute.__type = [() => HttpWorkflowEvent, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => router_js_1.RouteConfig, 'route', 'constructor', 'send', 'accessDenied', 'P7!PP7"2#:P7$2%:P7&2\':P7(2):"0*P"2\'"0+P"0,5'];
213
+ HttpWorkflowEventWithRoute.__type = [() => HttpWorkflowEvent, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => router_js_1.RouteConfig, 'route', 'constructor', 'send', () => __ΩError, 'error', 'accessDenied', 'P7!PP7"2#:P7$2%:P7&2\':P7(2):"0*P"2\'"0+Pn,2-8"0.5'];
212
214
  class HttpRouteEvent extends HttpWorkflowEvent {
213
215
  constructor(injectorContext, request, response, parameterResolver, route) {
214
216
  super(injectorContext, request, response);
@@ -244,16 +246,17 @@ class HttpAuthEvent extends HttpWorkflowEventWithRoute {
244
246
  exports.HttpAuthEvent = HttpAuthEvent;
245
247
  HttpAuthEvent.__type = [() => HttpWorkflowEventWithRoute, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => router_js_1.RouteConfig, 'route', () => __ΩRouteParameterResolverForInjector, 'parameterResolver', 'constructor', 'success', 'P7!PP7"2#:P7$2%:P7&2\':P7(2):n*2+:"0,P"0-5'];
246
248
  class HttpAccessDeniedEvent extends HttpWorkflowEvent {
247
- constructor(injectorContext, request, response, route) {
249
+ constructor(injectorContext, request, response, route, error) {
248
250
  super(injectorContext, request, response);
249
251
  this.injectorContext = injectorContext;
250
252
  this.request = request;
251
253
  this.response = response;
252
254
  this.route = route;
255
+ this.error = error;
253
256
  }
254
257
  }
255
258
  exports.HttpAccessDeniedEvent = HttpAccessDeniedEvent;
256
- HttpAccessDeniedEvent.__type = [() => HttpWorkflowEvent, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => router_js_1.RouteConfig, 'route', 'constructor', 'P7!PP7"2#:P7$2%:P7&2\':P7(2):"0*5'];
259
+ HttpAccessDeniedEvent.__type = [() => HttpWorkflowEvent, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => router_js_1.RouteConfig, 'route', () => __ΩError, 'error', 'constructor', 'P7!PP7"2#:P7$2%:P7&2\':P7(2):n*2+8:"0,5'];
257
260
  class HttpResolveParametersEvent extends HttpWorkflowEventWithRoute {
258
261
  constructor(injectorContext, request, response, parameterResolver, route) {
259
262
  super(injectorContext, request, response, route);
@@ -262,16 +265,16 @@ class HttpResolveParametersEvent extends HttpWorkflowEventWithRoute {
262
265
  this.response = response;
263
266
  this.parameterResolver = parameterResolver;
264
267
  this.route = route;
265
- this.parameters = [];
268
+ this.parameters = { arguments: [], parameters: {} };
266
269
  }
267
270
  accessDenied() {
268
271
  this.next('accessDenied', new HttpAccessDeniedEvent(this.injectorContext, this.request, this.response, this.route));
269
272
  }
270
273
  }
271
274
  exports.HttpResolveParametersEvent = HttpResolveParametersEvent;
272
- HttpResolveParametersEvent.__type = [() => HttpWorkflowEventWithRoute, 'parameters', function () { return []; }, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => __ΩRouteParameterResolverForInjector, 'parameterResolver', () => router_js_1.RouteConfig, 'route', 'constructor', 'accessDenied', 'P7!"F3">#PP7$2%:P7&2\':P7(2):n*2+:P7,2-:"0.P"0/5'];
275
+ HttpResolveParametersEvent.__type = [() => HttpWorkflowEventWithRoute, () => __ΩHttpRequestPositionedParameters, 'parameters', function () { return { arguments: [], parameters: {} }; }, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => __ΩRouteParameterResolverForInjector, 'parameterResolver', () => router_js_1.RouteConfig, 'route', 'constructor', 'accessDenied', 'P7!n"3#>$PP7%2&:P7\'2(:P7)2*:n+2,:P7-2.:"0/P"005'];
273
276
  class HttpControllerEvent extends HttpWorkflowEventWithRoute {
274
- constructor(injectorContext, request, response, parameters = [], route) {
277
+ constructor(injectorContext, request, response, parameters = { arguments: [], parameters: {} }, route) {
275
278
  super(injectorContext, request, response, route);
276
279
  this.injectorContext = injectorContext;
277
280
  this.request = request;
@@ -281,7 +284,7 @@ class HttpControllerEvent extends HttpWorkflowEventWithRoute {
281
284
  }
282
285
  }
283
286
  exports.HttpControllerEvent = HttpControllerEvent;
284
- HttpControllerEvent.__type = [() => HttpWorkflowEventWithRoute, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', 'parameters', () => [], () => router_js_1.RouteConfig, 'route', 'constructor', 'P7!PP7"2#:P7$2%:P7&2\':"F2(:>)P7*2+:"0,5'];
287
+ HttpControllerEvent.__type = [() => HttpWorkflowEventWithRoute, () => injector_1.InjectorContext, 'injectorContext', () => model_js_1.HttpRequest, 'request', () => model_js_1.HttpResponse, 'response', () => __ΩHttpRequestPositionedParameters, 'parameters', () => ({ arguments: [], parameters: {} }), () => router_js_1.RouteConfig, 'route', 'constructor', 'P7!PP7"2#:P7$2%:P7&2\':n(2):>*P7+2,:"0-5'];
285
288
  class HttpResponseEvent extends workflow_1.WorkflowEvent {
286
289
  constructor(injectorContext, request, response, result, route) {
287
290
  super();
@@ -596,6 +599,7 @@ class HttpListener {
596
599
  }, ['resolve', 'reject', '', 'P"2!"2""/#']));
597
600
  }
598
601
  }
602
+ event.injectorContext.set(router_js_1.RouteConfig, resolved.routeConfig);
599
603
  event.routeFound(resolved.routeConfig, resolved.parameters);
600
604
  }
601
605
  }
@@ -662,10 +666,10 @@ class HttpListener {
662
666
  if (event.route.action.type === 'controller') {
663
667
  const controllerInstance = event.injectorContext.get(event.route.action.controller, event.route.action.module);
664
668
  const method = controllerInstance[event.route.action.methodName];
665
- result = await method.apply(controllerInstance, event.parameters);
669
+ result = await method.apply(controllerInstance, event.parameters.arguments);
666
670
  }
667
671
  else {
668
- result = await event.route.action.fn(...event.parameters);
672
+ result = await event.route.action.fn(...event.parameters.arguments);
669
673
  }
670
674
  if (isElementStruct(result)) {
671
675
  const html = await getTemplateRender()(event.injectorContext.getRootInjector(), result, this.stopwatch ? this.stopwatch : undefined);
@@ -686,7 +690,7 @@ class HttpListener {
686
690
  if (frame)
687
691
  frame.end();
688
692
  if (error instanceof HttpAccessDeniedError) {
689
- event.next('accessDenied', new HttpAccessDeniedEvent(event.injectorContext, event.request, event.response, event.route));
693
+ event.next('accessDenied', new HttpAccessDeniedEvent(event.injectorContext, event.request, event.response, event.route, error));
690
694
  }
691
695
  else {
692
696
  const errorEvent = new HttpControllerErrorEvent(event.injectorContext, event.request, event.response, event.route, error);
@@ -720,6 +724,12 @@ class HttpListener {
720
724
  errors: event.error.errors
721
725
  }, 400).disableAutoSerializing());
722
726
  }
727
+ else if (event.error instanceof HttpError) {
728
+ event.send(new JSONResponse({
729
+ message: event.error.message
730
+ }, event.error.httpCode).disableAutoSerializing());
731
+ return;
732
+ }
723
733
  else {
724
734
  this.logger.error('Controller parameter resolving error:', event.error);
725
735
  event.send(new HtmlResponse('Internal error', 500));
@@ -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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"}
@@ -10,6 +10,7 @@ const model_js_1 = require("./model.js");
10
10
  const http_js_1 = require("./http.js");
11
11
  const stopwatch_1 = require("@deepkit/stopwatch");
12
12
  const fs_1 = require("fs");
13
+ const type_1 = require("@deepkit/type");
13
14
  class HttpKernel {
14
15
  constructor(router, eventDispatcher, injectorContext, logger, stopwatch) {
15
16
  this.router = router;
@@ -29,6 +30,7 @@ class HttpKernel {
29
30
  const httpInjectorContext = this.injectorContext.createChildScope('http');
30
31
  httpInjectorContext.set(model_js_1.HttpRequest, req);
31
32
  httpInjectorContext.set(model_js_1.HttpResponse, res);
33
+ httpInjectorContext.set(injector_1.InjectorContext, httpInjectorContext);
32
34
  const frame = this.stopwatch ? this.stopwatch.start(req.method + ' ' + req.getUrl(), stopwatch_1.FrameCategory.http, true) : undefined;
33
35
  const workflow = http_js_1.httpWorkflow.create('start', this.eventDispatcher, httpInjectorContext, this.stopwatch);
34
36
  try {
@@ -41,8 +43,23 @@ class HttpKernel {
41
43
  }
42
44
  }
43
45
  catch (error) {
44
- if (!res.headersSent)
46
+ if (!res.headersSent) {
47
+ const resultFormatter = httpInjectorContext.get(http_js_1.HttpResultFormatter);
48
+ if (error instanceof type_1.ValidationError) {
49
+ resultFormatter.handle(new http_js_1.JSONResponse({
50
+ message: error.message,
51
+ errors: error.errors
52
+ }, 400).disableAutoSerializing(), { request: req, response: res });
53
+ return;
54
+ }
55
+ else if (error instanceof http_js_1.HttpError) {
56
+ resultFormatter.handle(new http_js_1.JSONResponse({
57
+ message: error.message
58
+ }, error.httpCode).disableAutoSerializing(), { request: req, response: res });
59
+ return;
60
+ }
45
61
  res.status(500);
62
+ }
46
63
  this.logger.error('HTTP kernel request failed', error);
47
64
  }
48
65
  finally {
@@ -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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"}
@@ -19,7 +19,7 @@ class HttpLogger {
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
25
  HttpLogger.__type = [() => __ΩLoggerInterface, 'logger', 'constructor', () => http_js_1.httpWorkflow.onResponse.event, 'event', 'onHttpRequest', 'Pn!2";"0#Pi$2%"0&5'];
@@ -1 +1 @@
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,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;;qGATwC,UAAU,CAAC,KAAK;AADzD;IAAC,uBAAe,CAAC,MAAM,CAAC,sBAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,yCAAyC;;;;;+CAU9F;AAdL,gCAeC"}
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;;qGATwC,UAAU,CAAC,KAAK;AADzD;IAAC,uBAAe,CAAC,MAAM,CAAC,sBAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,yCAAyC;;;;;+CAU9F;AAdL,gCAeC"}
@@ -20,6 +20,10 @@ export declare type HttpRequestQuery = {
20
20
  export declare type HttpRequestResolvedParameters = {
21
21
  [name: string]: any;
22
22
  };
23
+ export declare type HttpRequestPositionedParameters = {
24
+ arguments: any[];
25
+ parameters: HttpRequestResolvedParameters;
26
+ };
23
27
  export declare class BodyValidationError {
24
28
  readonly errors: ValidationErrorItem[];
25
29
  constructor(errors?: ValidationErrorItem[]);
@@ -42,6 +46,16 @@ export declare type HttpBody<T> = T & {
42
46
  export declare type HttpBodyValidation<T> = ValidatedBody<T> & {
43
47
  __meta?: ['httpBodyValidation'];
44
48
  };
49
+ export declare type HttpPath<T, Options extends {
50
+ name?: string;
51
+ } = {}> = T & {
52
+ __meta?: ['httpPath', Options];
53
+ };
54
+ export declare type HttpHeader<T, Options extends {
55
+ name?: string;
56
+ } = {}> = T & {
57
+ __meta?: ['httpHeader', Options];
58
+ };
45
59
  export declare type HttpQuery<T, Options extends {
46
60
  name?: string;
47
61
  } = {}> = T & {
@@ -140,8 +154,11 @@ export declare class MemoryHttpResponse extends HttpResponse {
140
154
  }
141
155
  export declare type __ΩHttpRequestQuery = any[];
142
156
  export declare type __ΩHttpRequestResolvedParameters = any[];
157
+ export declare type __ΩHttpRequestPositionedParameters = any[];
143
158
  export declare type __ΩHttpBody = any[];
144
159
  export declare type __ΩHttpBodyValidation = any[];
160
+ export declare type __ΩHttpPath = any[];
161
+ export declare type __ΩHttpHeader = any[];
145
162
  export declare type __ΩHttpQuery = any[];
146
163
  export declare type __ΩHttpQueries = any[];
147
164
  export declare type __ΩHttpRegExp = any[];
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.MemoryHttpResponse = exports.HttpRequest = exports.RequestBuilder = exports.getRegExp = exports.__ΩHttpRegExp = exports.__ΩHttpQueries = exports.__ΩHttpQuery = exports.__ΩHttpBodyValidation = exports.__ΩHttpBody = exports.ValidatedBody = exports.BodyValidationError = exports.__ΩHttpRequestResolvedParameters = exports.__ΩHttpRequestQuery = exports.createRequestWithCachedBody = exports.readBody = exports.HttpResponse = void 0;
26
+ exports.MemoryHttpResponse = exports.HttpRequest = exports.RequestBuilder = exports.getRegExp = exports.__ΩHttpRegExp = exports.__ΩHttpQueries = exports.__ΩHttpQuery = exports.__ΩHttpHeader = exports.__ΩHttpPath = exports.__ΩHttpBodyValidation = exports.__ΩHttpBody = exports.ValidatedBody = exports.BodyValidationError = exports.__ΩHttpRequestPositionedParameters = exports.__ΩHttpRequestResolvedParameters = exports.__ΩHttpRequestQuery = exports.createRequestWithCachedBody = exports.readBody = exports.HttpResponse = void 0;
27
27
  function __assignType(fn, args) {
28
28
  fn.__type = args;
29
29
  return fn;
@@ -121,6 +121,8 @@ const __ΩHttpRequestQuery = ['P&&LM'];
121
121
  exports.__ΩHttpRequestQuery = __ΩHttpRequestQuery;
122
122
  const __ΩHttpRequestResolvedParameters = ['P&"LM'];
123
123
  exports.__ΩHttpRequestResolvedParameters = __ΩHttpRequestResolvedParameters;
124
+ const __ΩHttpRequestPositionedParameters = ['arguments', () => __ΩHttpRequestResolvedParameters, 'parameters', 'P"F4!n"4#M'];
125
+ exports.__ΩHttpRequestPositionedParameters = __ΩHttpRequestPositionedParameters;
124
126
  class BodyValidationError {
125
127
  constructor(errors = []) {
126
128
  this.errors = errors;
@@ -157,6 +159,10 @@ const __ΩHttpBody = ['T', "httpBody", '__meta', 'b!Pe"!PP."G4#8MK'];
157
159
  exports.__ΩHttpBody = __ΩHttpBody;
158
160
  const __ΩHttpBodyValidation = ['T', () => ValidatedBody, "httpBodyValidation", '__meta', 'b!PPe#!7"PP.#G4$8MK'];
159
161
  exports.__ΩHttpBodyValidation = __ΩHttpBodyValidation;
162
+ const __ΩHttpPath = ['T', 'Options', "httpPath", '__meta', 'b!PMc"Pe"!PP.#e$"G4$8MK'];
163
+ exports.__ΩHttpPath = __ΩHttpPath;
164
+ const __ΩHttpHeader = ['T', 'Options', "httpHeader", '__meta', 'b!PMc"Pe"!PP.#e$"G4$8MK'];
165
+ exports.__ΩHttpHeader = __ΩHttpHeader;
160
166
  const __ΩHttpQuery = ['T', 'Options', "httpQuery", '__meta', 'b!PMc"Pe"!PP.#e$"G4$8MK'];
161
167
  exports.__ΩHttpQuery = __ΩHttpQuery;
162
168
  const __ΩHttpQueries = ['T', 'Options', "httpQueries", '__meta', 'b!PMc"Pe"!PP.#e$"G4$8MK'];
@@ -378,7 +384,9 @@ class MemoryHttpResponse extends HttpResponse {
378
384
  }
379
385
  this.body = Buffer.concat([this.body, chunk]);
380
386
  }
381
- return super.end(chunk, encoding, callback);
387
+ super.end(chunk, encoding, callback);
388
+ this.emit('finish');
389
+ return this;
382
390
  }
383
391
  }
384
392
  exports.MemoryHttpResponse = MemoryHttpResponse;
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/model.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,15 @@
1
1
  import { HttpConfig } from './module.config.js';
2
- import { AppModule } from '@deepkit/app';
2
+ import { AddedListener, AppModule } from '@deepkit/app';
3
3
  import { HttpControllers } from './controllers.js';
4
4
  import '@deepkit/type';
5
5
  import { ClassType } from '@deepkit/core';
6
+ import { EventToken } from '@deepkit/event';
6
7
  declare const HttpModule_base: import("@deepkit/app").AppModuleClass<HttpConfig>;
7
8
  export declare class HttpModule extends HttpModule_base {
8
9
  protected httpControllers: HttpControllers;
9
10
  process(): void;
11
+ protected patchEventsForHttpRequestAccess: EventToken<any>[];
12
+ processListener(module: AppModule<any>, listener: AddedListener): void;
10
13
  processController(module: AppModule<any>, controller: ClassType): void;
11
14
  }
12
15
  export {};
@@ -3,6 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HttpModule = void 0;
4
4
  /*@ts-ignore*/
5
5
  const { __ΩClassType } = require('@deepkit/core');
6
+ function __assignType(fn, args) {
7
+ fn.__type = args;
8
+ return fn;
9
+ }
6
10
  const http_js_1 = require("./http.js");
7
11
  const module_config_js_1 = require("./module.config.js");
8
12
  const app_1 = require("@deepkit/app");
@@ -14,6 +18,15 @@ const logger_1 = require("@deepkit/logger");
14
18
  const model_js_1 = require("./model.js");
15
19
  require("@deepkit/type");
16
20
  const decorator_js_1 = require("./decorator.js");
21
+ const event_1 = require("@deepkit/event");
22
+ const type_1 = require("@deepkit/type");
23
+ const request_parser_js_1 = require("./request-parser.js");
24
+ const injector_1 = require("@deepkit/injector");
25
+ function parameterRequiresRequest(parameter) {
26
+ return Boolean(type_1.metaAnnotation.getForName(parameter.type, 'httpQueries') || type_1.metaAnnotation.getForName(parameter.type, 'httpQuery')
27
+ || type_1.metaAnnotation.getForName(parameter.type, 'httpBody') || type_1.metaAnnotation.getForName(parameter.type, 'httpPath') || type_1.metaAnnotation.getForName(parameter.type, 'httpHeader'));
28
+ }
29
+ parameterRequiresRequest.__type = [() => type_1.ReflectionParameter, 'parameter', 'parameterRequiresRequest', 'PP7!2")/#'];
17
30
  class HttpModule extends (0, app_1.createModule)({
18
31
  config: module_config_js_1.HttpConfig,
19
32
  providers: [
@@ -24,6 +37,7 @@ class HttpModule extends (0, app_1.createModule)({
24
37
  filter_js_1.HttpRouterFilterResolver,
25
38
  { provide: model_js_1.HttpResponse, scope: 'http' },
26
39
  { provide: model_js_1.HttpRequest, scope: 'http' },
40
+ { provide: router_js_1.RouteConfig, useValue: undefined, scope: 'http' },
27
41
  { provide: logger_1.Logger, useValue: new logger_1.Logger([new logger_1.ConsoleTransport()]) },
28
42
  ],
29
43
  listeners: [
@@ -41,16 +55,58 @@ class HttpModule extends (0, app_1.createModule)({
41
55
  model_js_1.HttpResponse,
42
56
  model_js_1.HttpRequest,
43
57
  controllers_js_1.HttpControllers,
58
+ router_js_1.RouteConfig,
44
59
  logger_1.Logger,
45
60
  ]
46
61
  }) {
47
62
  constructor() {
48
63
  super(...arguments);
49
64
  this.httpControllers = new controllers_js_1.HttpControllers;
65
+ this.patchEventsForHttpRequestAccess = [http_js_1.httpWorkflow.onRequest, http_js_1.httpWorkflow.onAuth, http_js_1.httpWorkflow.onController];
50
66
  }
51
67
  process() {
52
68
  this.addProvider({ provide: controllers_js_1.HttpControllers, useValue: this.httpControllers });
53
69
  }
70
+ processListener(module, listener) {
71
+ if (!this.patchEventsForHttpRequestAccess.includes(listener.eventToken))
72
+ return;
73
+ let requiresHttpRequest = false;
74
+ let needsAsync = false;
75
+ const params = listener.reflection.getParameters().slice(1);
76
+ for (const parameter of params) {
77
+ if (type_1.metaAnnotation.getForName(parameter.type, 'httpBody'))
78
+ needsAsync = true;
79
+ if (parameterRequiresRequest(parameter))
80
+ requiresHttpRequest = true;
81
+ }
82
+ if (needsAsync) {
83
+ //not yet supported since we have to patch the listener to be async and redirect the call (as the DI container is sync).
84
+ throw new Error(`Listener ${(0, app_1.stringifyListener)(listener)} requires async HttpBody. This is not yet supported. You have to parse the request manually by injecting HttpRequest.`);
85
+ }
86
+ for (let index = 0; index < params.length; index++) {
87
+ const parameter = params[index];
88
+ if (!parameterRequiresRequest(parameter))
89
+ continue;
90
+ //change the reflection type so that we create a unique injection token for that type.
91
+ const unique = Symbol('unique');
92
+ const uniqueType = { kind: type_1.ReflectionKind.literal, literal: unique };
93
+ type_1.metaAnnotation.registerType(parameter.type, { name: 'inject', options: [uniqueType] });
94
+ let build;
95
+ let i = index;
96
+ this.addProvider({
97
+ provide: uniqueType, useFactory: __assignType((request, injector, config) => {
98
+ if (!build) {
99
+ const params = listener.reflection.getParameters().slice(1);
100
+ build = (0, request_parser_js_1.buildRequestParser)(params, config === null || config === void 0 ? void 0 : config.getFullPath());
101
+ }
102
+ const parser = build(request);
103
+ const params = parser(injector);
104
+ return params.arguments[i];
105
+ }, [() => model_js_1.HttpRequest, 'request', () => injector_1.InjectorContext, 'injector', () => router_js_1.RouteConfig, 'config', '', 'PP7!2"P7#2$P7%2&8"/\'']), scope: 'http'
106
+ });
107
+ this.addExport(uniqueType);
108
+ }
109
+ }
54
110
  processController(module, controller) {
55
111
  const httpConfig = decorator_js_1.httpClass._fetch(controller);
56
112
  if (!httpConfig)
@@ -61,5 +117,5 @@ class HttpModule extends (0, app_1.createModule)({
61
117
  }
62
118
  }
63
119
  exports.HttpModule = HttpModule;
64
- HttpModule.__type = [() => (0, app_1.createModule)({ config: module_config_js_1.HttpConfig, providers: [router_js_1.HttpRouter, kernel_js_1.HttpKernel, http_js_1.HttpResultFormatter, router_js_1.HttpRouterRegistry, filter_js_1.HttpRouterFilterResolver, { provide: model_js_1.HttpResponse, scope: "http" }, { provide: model_js_1.HttpRequest, scope: "http" }, { provide: logger_1.Logger, useValue: new logger_1.Logger([new logger_1.ConsoleTransport()]) }], listeners: [http_js_1.HttpListener], workflows: [http_js_1.httpWorkflow], exports: [router_js_1.HttpRouter, router_js_1.HttpRouterRegistry, kernel_js_1.HttpKernel, http_js_1.HttpResultFormatter, filter_js_1.HttpRouterFilterResolver, model_js_1.HttpResponse, model_js_1.HttpRequest, controllers_js_1.HttpControllers, logger_1.Logger] }), 'process', () => app_1.AppModule, 'module', () => __ΩClassType, 'controller', 'processController', 'P7!P"0"PP"7#2$n%2&"0\'5'];
120
+ HttpModule.__type = [() => (0, app_1.createModule)({ config: module_config_js_1.HttpConfig, providers: [router_js_1.HttpRouter, kernel_js_1.HttpKernel, http_js_1.HttpResultFormatter, router_js_1.HttpRouterRegistry, filter_js_1.HttpRouterFilterResolver, { provide: model_js_1.HttpResponse, scope: "http" }, { provide: model_js_1.HttpRequest, scope: "http" }, { provide: router_js_1.RouteConfig, useValue: undefined, scope: "http" }, { provide: logger_1.Logger, useValue: new logger_1.Logger([new logger_1.ConsoleTransport()]) }], listeners: [http_js_1.HttpListener], workflows: [http_js_1.httpWorkflow], exports: [router_js_1.HttpRouter, router_js_1.HttpRouterRegistry, kernel_js_1.HttpKernel, http_js_1.HttpResultFormatter, filter_js_1.HttpRouterFilterResolver, model_js_1.HttpResponse, model_js_1.HttpRequest, controllers_js_1.HttpControllers, router_js_1.RouteConfig, logger_1.Logger] }), 'process', () => event_1.EventToken, 'patchEventsForHttpRequestAccess', function () { return [http_js_1.httpWorkflow.onRequest, http_js_1.httpWorkflow.onAuth, http_js_1.httpWorkflow.onController]; }, () => app_1.AppModule, 'module', 'listener', 'processListener', () => app_1.AppModule, () => __ΩClassType, 'controller', 'processController', 'P7!P"0"P"7#F3$<>%PP"7&2\'"2("0)PP"7*2\'n+2,"0-5'];
65
121
  //# sourceMappingURL=module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/module.ts"],"names":[],"mappings":";;;;iCAU0B,eAAe;AAVzC,uCAA4E;AAC5E,yDAAgD;AAChD,sCAAuD;AACvD,2CAA6D;AAC7D,2CAAyC;AACzC,2CAAuD;AACvD,qDAAmD;AACnD,4CAA2D;AAC3D,yCAAuD;AACvD,yBAAuB;AAEvB,iDAA2C;AAE3C,MAAa,UAAW,SAAQ,IAAA,kBAAY,EAAC;IACzC,MAAM,EAAE,6BAAU;IAClB,SAAS,EAAE;QACP,sBAAU;QACV,sBAAU;QACV,6BAAmB;QACnB,8BAAkB;QAClB,oCAAwB;QACxB,EAAE,OAAO,EAAE,uBAAY,EAAE,KAAK,EAAE,MAAM,EAAE;QACxC,EAAE,OAAO,EAAE,sBAAW,EAAE,KAAK,EAAE,MAAM,EAAE;QACvC,EAAE,OAAO,EAAE,eAAM,EAAE,QAAQ,EAAE,IAAI,eAAM,CAAC,CAAC,IAAI,yBAAgB,EAAE,CAAC,CAAC,EAAE;KACtE;IACD,SAAS,EAAE;QACP,sBAAY;KACf;IACD,SAAS,EAAE;QACP,sBAAY;KACf;IACD,OAAO,EAAE;QACL,sBAAU;QACV,8BAAkB;QAClB,sBAAU;QACV,6BAAmB;QACnB,oCAAwB;QACxB,uBAAY;QACZ,sBAAW;QACX,gCAAe;QACf,eAAM;KACT;CACJ,CAAC;IA7BF;;QA8Bc,oBAAe,GAAG,IAAI,gCAAe,CAAC;KAanD;IAXG,OAAO;QACH,IAAI,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,gCAAe,EAAE,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,iBAAiB,CAAC,MAAsB,EAAE,UAAqB;QAC3D,MAAM,UAAU,GAAG,wBAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;;AA1CL,gCA2CC"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/module.ts"],"names":[],"mappings":"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"}