@tsed/platform-express 7.63.0 → 7.63.2

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/jest.config.js CHANGED
@@ -4,15 +4,13 @@
4
4
  module.exports = {
5
5
  ...require("@tsed/jest-config"),
6
6
  roots: ["<rootDir>/src", "<rootDir>/test"],
7
- moduleNameMapper: {
8
- "^@tsed/platform-express$": "<rootDir>/src/index.ts"
9
- },
7
+ collectCoverageFrom: ["src/**/*.{ts,tsx}", "!src/**/*.d.ts"],
10
8
  coverageThreshold: {
11
9
  global: {
12
- statements: 96.77,
13
- branches: 84.31,
14
- functions: 100,
15
- lines: 96.77
10
+ statements: 90,
11
+ branches: 79.66,
12
+ functions: 90,
13
+ lines: 90
16
14
  }
17
15
  }
18
16
  };
@@ -8,13 +8,24 @@ const core_1 = require("@tsed/core");
8
8
  const express_1 = tslib_1.__importDefault(require("express"));
9
9
  const util_1 = require("util");
10
10
  const staticsMiddleware_1 = require("../middlewares/staticsMiddleware");
11
+ const PlatformExpressHandler_1 = require("../services/PlatformExpressHandler");
12
+ function callNext(next, metadata, $ctx) {
13
+ if (metadata.type !== common_1.PlatformHandlerType.RESPONSE_FN) {
14
+ return next && $ctx.error && !$ctx.isDone() ? next($ctx.error) : next();
15
+ }
16
+ }
11
17
  /**
12
18
  * @platform
13
19
  * @express
14
20
  */
15
21
  let PlatformExpress = PlatformExpress_1 = class PlatformExpress extends common_1.PlatformAdapter {
16
22
  static NAME = "express";
17
- providers = [];
23
+ providers = [
24
+ {
25
+ provide: common_1.PlatformHandler,
26
+ useClass: PlatformExpressHandler_1.PlatformExpressHandler
27
+ }
28
+ ];
18
29
  #multer;
19
30
  constructor(injector) {
20
31
  super(injector);
@@ -76,27 +87,25 @@ let PlatformExpress = PlatformExpress_1 = class PlatformExpress extends common_1
76
87
  });
77
88
  }
78
89
  mapHandler(handler, metadata) {
79
- switch (metadata.type) {
80
- case common_1.PlatformHandlerType.RAW_FN:
81
- case common_1.PlatformHandlerType.RAW_ERR_FN:
82
- return handler;
83
- case common_1.PlatformHandlerType.ERR_MIDDLEWARE:
84
- return (error, req, res, next) => {
85
- return (0, common_1.runInContext)(req.$ctx, () => {
86
- const { $ctx } = req;
87
- $ctx.next = next;
88
- $ctx.error = error;
89
- return handler($ctx);
90
- });
91
- };
92
- default:
93
- return (req, res, next) => {
94
- return (0, common_1.runInContext)(req.$ctx, () => {
95
- req.$ctx.next = next;
96
- handler(req.$ctx);
97
- });
98
- };
90
+ if (metadata.type == common_1.PlatformHandlerType.ERR_MIDDLEWARE) {
91
+ return (error, req, res, next) => {
92
+ return (0, common_1.runInContext)(req.$ctx, async () => {
93
+ const { $ctx } = req;
94
+ $ctx.next = next;
95
+ $ctx.error = error;
96
+ $ctx.error = await (0, core_1.catchAsyncError)(() => handler($ctx));
97
+ return callNext(next, metadata, $ctx);
98
+ });
99
+ };
99
100
  }
101
+ return (req, res, next) => {
102
+ return (0, common_1.runInContext)(req.$ctx, async () => {
103
+ const { $ctx } = req;
104
+ $ctx.next = next;
105
+ $ctx.error = await (0, core_1.catchAsyncError)(() => handler($ctx));
106
+ return callNext(next, metadata, $ctx);
107
+ });
108
+ };
100
109
  }
101
110
  useContext() {
102
111
  const { app } = this;
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformExpress.js","sourceRoot":"","sources":["../../../src/components/PlatformExpress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformExpress.js","sourceRoot":"","sources":["../../../src/components/PlatformExpress.ts"],"names":[],"mappings":";;;;;AAAA,yCAcsB;AACtB,qCAAkE;AAIlE,8DAA8B;AAG9B,+BAA+B;AAE/B,wEAAmE;AACnE,+EAA0E;AAS1E,SAAS,QAAQ,CAAC,IAAS,EAAE,QAAiC,EAAE,IAAqB;IACnF,IAAI,QAAQ,CAAC,IAAI,KAAK,4BAAmB,CAAC,WAAW,EAAE;QACrD,OAAO,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;KACzE;AACH,CAAC;AAiBD;;;GAGG;AAEI,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,wBAAoC;IACvE,MAAM,CAAU,IAAI,GAAG,SAAS,CAAC;IAExB,SAAS,GAAG;QACnB;YACE,OAAO,EAAE,wBAAe;YACxB,QAAQ,EAAE,+CAAsB;SACjC;KACF,CAAC;IACF,OAAO,CAAgB;IAEvB,YAAY,QAAyB;QACnC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEhB,0DAAO,QAAQ,IAAE,IAAI,CAAC,CAAC,EAAC,OAAO,EAAE,MAAM,EAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC;IACxE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,MAAiB,EAAE,WAAwC,EAAE;QACzE,OAAO,wBAAe,CAAC,MAAM,CAAsB,MAAM,EAAE;YACzD,GAAG,QAAQ;YACX,OAAO,EAAE,iBAAe;SACzB,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,MAAiB,EAAE,WAAwC,EAAE;QAC5E,OAAO,wBAAe,CAAC,SAAS,CAAsB,MAAM,EAAE;YAC5D,GAAG,QAAQ;YACX,OAAO,EAAE,iBAAe;SACzB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC;QAEnB,8BAA8B;QAC9B,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,UAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAElF,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;IACpC,CAAC;IAED,eAAe;QACb,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC;QACnB,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAqB,2BAAkB,CAAE,CAAC;QAEtF,YAAY;QACZ,GAAG,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YACxC,MAAM,EAAC,IAAI,EAAC,GAAG,GAAG,CAAC;YACnB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,kBAAkB,EAAE,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,oBAAoB;QACpB,GAAG,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YAClD,MAAM,EAAC,IAAI,EAAC,GAAG,GAAG,CAAC;YACnB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,kBAAkB,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,MAAuB;QAC/B,MAAM,MAAM,GAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAEtC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,QAAQ,KAAK,CAAC,MAAM,EAAE;gBACpB,KAAK,SAAS;oBACZ,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAc,EAAE,KAAK,CAAC,IAAW,CAAC,CAAC,CAAC;oBAC9E,OAAO;aACV;YAED,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,OAAiB,EAAE,QAAiC;QAC7D,IAAI,QAAQ,CAAC,IAAI,IAAI,4BAAmB,CAAC,cAAc,EAAE;YACvD,OAAO,CAAC,KAAc,EAAE,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;gBACvD,OAAO,IAAA,qBAAY,EAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;oBACvC,MAAM,EAAC,IAAI,EAAC,GAAG,GAAG,CAAC;oBAEnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;oBACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBAEnB,IAAI,CAAC,KAAK,GAAG,MAAM,IAAA,sBAAe,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBAExD,OAAO,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACxC,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;SACH;QAED,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YACvC,OAAO,IAAA,qBAAY,EAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;gBACvC,MAAM,EAAC,IAAI,EAAC,GAAG,GAAG,CAAC;gBACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBAEjB,IAAI,CAAC,KAAK,GAAG,MAAM,IAAA,sBAAe,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBAExD,OAAO,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC;IAED,UAAU;QACR,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC;QACnB,MAAM,MAAM,GAAG,IAAA,sBAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE5C,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,OAAY,EAAE,QAAa,EAAE,IAAS,EAAE,EAAE;YACvD,MAAM,IAAI,GAAG,MAAM,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAC,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAEnB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAEzD,OAAO,IAAA,qBAAY,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS;QACP,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAA,iBAAO,GAAE,CAAC;QAEnE,OAAO;YACL,GAAG;YACH,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG;SACpB,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,OAA+B;QACvC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,CAAC,MAAW,EAAE,IAAY,EAAE,EAAE;YAChD,uBAAuB;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAE,OAAO;YAE1B,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAExB,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,IAAW;gBAC1C,MAAM,UAAU,GAAQ,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAEtD,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE,CAAC,IAAA,gBAAS,EAAC,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACjE,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACtB,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACxB,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACzB,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACvB,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEzB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,QAAgB,EAAE,OAA+B;QACvD,MAAM,EAAC,IAAI,EAAE,GAAG,KAAK,EAAC,GAAG,OAAO,CAAC;QAEjC,OAAO,IAAA,qCAAiB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,UAAU,CAAC,IAAoC,EAAE,oBAAyB,EAAE;QAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;QAEtE,IAAI,MAAM,GAAQ,iBAAO,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,OAAO,GAAkD,EAAE,CAAC;QAEhE,IAAI,IAAA,iBAAU,EAAC,IAAI,CAAC,EAAE;YACpB,MAAM,GAAG,IAAI,CAAC;YACd,OAAO,GAAG,EAAE,CAAC;SACd;QAED,IAAI,IAAI,KAAK,YAAY,EAAE;YACzB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;SACzB;QAED,OAAO,CAAC,MAAM,GAAG,CAAC,GAAwC,EAAE,IAAoB,EAAE,MAAc,EAAE,EAAE;YAClG,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAEtD,IAAI,OAAO,EAAE;gBACX,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC;aACtB;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,OAAO,MAAM,CAAC,EAAC,GAAG,OAAO,EAAE,GAAG,iBAAiB,EAAC,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC;QAEnB,IAAI;YACF,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAErE,IAAI,MAAM,IAAI,CAAC,QAAQ,EAAE;gBACvB,MAAM,EAAC,aAAa,EAAC,GAAG,gEAAa,sBAAsB,GAAC,CAAC;gBAC7D,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAgB,aAAa,CAAE,CAAC;gBAClE,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;gBAE7B,aAAa,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC,EAAC,SAAS,EAAE,MAAM,EAAC,EAAE,EAAE;oBACzD,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBAEH,aAAa,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;gBACjF,aAAa,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;aAChE;SACF;QAAC,OAAO,KAAK,EAAE;YACd,uBAAuB;YACvB,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,sBAAsB;gBAC7B,OAAO,EAAE,oEAAoE;gBAC7E,KAAK;aACN,CAAC,CAAC;SACJ;IACH,CAAC;;AA9NU,eAAe;IAD3B,IAAA,yBAAgB,GAAE;6CAYK,wBAAe;GAX1B,eAAe,CA+N3B;AA/NY,0CAAe"}
package/lib/cjs/index.js CHANGED
@@ -9,4 +9,5 @@ tslib_1.__exportStar(require("./interfaces/PlatformExpressSettings"), exports);
9
9
  tslib_1.__exportStar(require("./interfaces/PlatformExpressStaticsOptions"), exports);
10
10
  tslib_1.__exportStar(require("./interfaces/interfaces"), exports);
11
11
  tslib_1.__exportStar(require("./middlewares/staticsMiddleware"), exports);
12
+ tslib_1.__exportStar(require("./services/PlatformExpressHandler"), exports);
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uEAA6C;AAC7C,+EAAqD;AACrD,qFAA2D;AAC3D,kEAAwC;AACxC,0EAAgD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uEAA6C;AAC7C,+EAAqD;AACrD,qFAA2D;AAC3D,kEAAwC;AACxC,0EAAgD;AAChD,4EAAkD"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlatformExpressHandler = void 0;
4
+ const common_1 = require("@tsed/common");
5
+ const core_1 = require("@tsed/core");
6
+ const util_1 = require("util");
7
+ class PlatformExpressHandler extends common_1.PlatformHandler {
8
+ onResponse(response, $ctx) {
9
+ super.onResponse(response, $ctx);
10
+ // call returned middleware
11
+ if ((0, core_1.isFunction)($ctx.data) && !(0, core_1.isStream)($ctx.data)) {
12
+ return (0, util_1.promisify)($ctx.data)($ctx.getRequest(), $ctx.getResponse());
13
+ }
14
+ }
15
+ }
16
+ exports.PlatformExpressHandler = PlatformExpressHandler;
17
+ //# sourceMappingURL=PlatformExpressHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlatformExpressHandler.js","sourceRoot":"","sources":["../../../src/services/PlatformExpressHandler.ts"],"names":[],"mappings":";;;AAAA,yCAA8D;AAC9D,qCAAkE;AAClE,+BAA+B;AAE/B,MAAa,sBAAuB,SAAQ,wBAAe;IACzD,UAAU,CAAC,QAA0B,EAAE,IAAqB;QAC1D,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAEjC,2BAA2B;QAC3B,IAAI,IAAA,iBAAU,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjD,OAAO,IAAA,gBAAS,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;SACpE;IACH,CAAC;CACF;AATD,wDASC"}
@@ -1,17 +1,28 @@
1
1
  var PlatformExpress_1;
2
2
  import { __decorate, __metadata } from "tslib";
3
- import { createContext, InjectorService, PlatformAdapter, PlatformBuilder, PlatformExceptions, PlatformHandlerType, PlatformProvider, runInContext } from "@tsed/common";
4
- import { Env, isFunction } from "@tsed/core";
3
+ import { createContext, InjectorService, PlatformAdapter, PlatformBuilder, PlatformExceptions, PlatformHandler, PlatformHandlerType, PlatformProvider, runInContext } from "@tsed/common";
4
+ import { catchAsyncError, Env, isFunction } from "@tsed/core";
5
5
  import Express from "express";
6
6
  import { promisify } from "util";
7
7
  import { staticsMiddleware } from "../middlewares/staticsMiddleware.js";
8
+ import { PlatformExpressHandler } from "../services/PlatformExpressHandler.js";
9
+ function callNext(next, metadata, $ctx) {
10
+ if (metadata.type !== PlatformHandlerType.RESPONSE_FN) {
11
+ return next && $ctx.error && !$ctx.isDone() ? next($ctx.error) : next();
12
+ }
13
+ }
8
14
  /**
9
15
  * @platform
10
16
  * @express
11
17
  */
12
18
  let PlatformExpress = PlatformExpress_1 = class PlatformExpress extends PlatformAdapter {
13
19
  static NAME = "express";
14
- providers = [];
20
+ providers = [
21
+ {
22
+ provide: PlatformHandler,
23
+ useClass: PlatformExpressHandler
24
+ }
25
+ ];
15
26
  #multer;
16
27
  constructor(injector) {
17
28
  super(injector);
@@ -73,27 +84,25 @@ let PlatformExpress = PlatformExpress_1 = class PlatformExpress extends Platform
73
84
  });
74
85
  }
75
86
  mapHandler(handler, metadata) {
76
- switch (metadata.type) {
77
- case PlatformHandlerType.RAW_FN:
78
- case PlatformHandlerType.RAW_ERR_FN:
79
- return handler;
80
- case PlatformHandlerType.ERR_MIDDLEWARE:
81
- return (error, req, res, next) => {
82
- return runInContext(req.$ctx, () => {
83
- const { $ctx } = req;
84
- $ctx.next = next;
85
- $ctx.error = error;
86
- return handler($ctx);
87
- });
88
- };
89
- default:
90
- return (req, res, next) => {
91
- return runInContext(req.$ctx, () => {
92
- req.$ctx.next = next;
93
- handler(req.$ctx);
94
- });
95
- };
87
+ if (metadata.type == PlatformHandlerType.ERR_MIDDLEWARE) {
88
+ return (error, req, res, next) => {
89
+ return runInContext(req.$ctx, async () => {
90
+ const { $ctx } = req;
91
+ $ctx.next = next;
92
+ $ctx.error = error;
93
+ $ctx.error = await catchAsyncError(() => handler($ctx));
94
+ return callNext(next, metadata, $ctx);
95
+ });
96
+ };
96
97
  }
98
+ return (req, res, next) => {
99
+ return runInContext(req.$ctx, async () => {
100
+ const { $ctx } = req;
101
+ $ctx.next = next;
102
+ $ctx.error = await catchAsyncError(() => handler($ctx));
103
+ return callNext(next, metadata, $ctx);
104
+ });
105
+ };
97
106
  }
98
107
  useContext() {
99
108
  const { app } = this;
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformExpress.js","sourceRoot":"","sources":["../../../src/components/PlatformExpress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformExpress.js","sourceRoot":"","sources":["../../../src/components/PlatformExpress.ts"],"names":[],"mappings":"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"}
package/lib/esm/index.js CHANGED
@@ -6,4 +6,5 @@ export * from "./interfaces/PlatformExpressSettings.js";
6
6
  export * from "./interfaces/PlatformExpressStaticsOptions.js";
7
7
  export * from "./interfaces/interfaces.js";
8
8
  export * from "./middlewares/staticsMiddleware.js";
9
+ export * from "./services/PlatformExpressHandler.js";
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { PlatformHandler } from "@tsed/common";
2
+ import { isFunction, isStream } from "@tsed/core";
3
+ import { promisify } from "util";
4
+ export class PlatformExpressHandler extends PlatformHandler {
5
+ onResponse(response, $ctx) {
6
+ super.onResponse(response, $ctx);
7
+ // call returned middleware
8
+ if (isFunction($ctx.data) && !isStream($ctx.data)) {
9
+ return promisify($ctx.data)($ctx.getRequest(), $ctx.getResponse());
10
+ }
11
+ }
12
+ }
13
+ //# sourceMappingURL=PlatformExpressHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlatformExpressHandler.js","sourceRoot":"","sources":["../../../src/services/PlatformExpressHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,eAAe,EAAC,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAmB,UAAU,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AAClE,OAAO,EAAC,SAAS,EAAC,MAAM,MAAM,CAAC;AAE/B,MAAM,OAAO,sBAAuB,SAAQ,eAAe;IACzD,UAAU,CAAC,QAA0B,EAAE,IAAqB;QAC1D,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAEjC,2BAA2B;QAC3B,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjD,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;SACpE;IACH,CAAC;CACF"}
@@ -1,8 +1,9 @@
1
- import { InjectorService, PlatformAdapter, PlatformBuilder, PlatformContext, PlatformMulter, PlatformMulterSettings, PlatformStaticsOptions } from "@tsed/common";
1
+ import { InjectorService, PlatformAdapter, PlatformBuilder, PlatformContext, PlatformHandler, PlatformMulter, PlatformMulterSettings, PlatformStaticsOptions } from "@tsed/common";
2
2
  import { Type } from "@tsed/core";
3
3
  import { PlatformHandlerMetadata, PlatformLayer } from "@tsed/platform-router";
4
4
  import Express from "express";
5
5
  import { PlatformExpressStaticsOptions } from "../interfaces/PlatformExpressStaticsOptions";
6
+ import { PlatformExpressHandler } from "../services/PlatformExpressHandler";
6
7
  declare module "express" {
7
8
  interface Request {
8
9
  id: string;
@@ -28,7 +29,10 @@ declare global {
28
29
  export declare class PlatformExpress extends PlatformAdapter<Express.Application> {
29
30
  #private;
30
31
  static readonly NAME = "express";
31
- readonly providers: never[];
32
+ readonly providers: {
33
+ provide: typeof PlatformHandler;
34
+ useClass: typeof PlatformExpressHandler;
35
+ }[];
32
36
  constructor(injector: InjectorService);
33
37
  /**
34
38
  * Create new serverless application. In this mode, the component scan are disabled.
@@ -45,7 +49,7 @@ export declare class PlatformExpress extends PlatformAdapter<Express.Application
45
49
  beforeLoadRoutes(): Promise<void>;
46
50
  afterLoadRoutes(): Promise<void>;
47
51
  mapLayers(layers: PlatformLayer[]): void;
48
- mapHandler(handler: Function, metadata: PlatformHandlerMetadata): Function;
52
+ mapHandler(handler: Function, metadata: PlatformHandlerMetadata): (error: unknown, req: any, res: any, next: any) => Promise<any>;
49
53
  useContext(): this;
50
54
  createApp(): {
51
55
  app: any;
@@ -6,3 +6,4 @@ export * from "./interfaces/PlatformExpressSettings";
6
6
  export * from "./interfaces/PlatformExpressStaticsOptions";
7
7
  export * from "./interfaces/interfaces";
8
8
  export * from "./middlewares/staticsMiddleware";
9
+ export * from "./services/PlatformExpressHandler";
@@ -0,0 +1,5 @@
1
+ import { PlatformContext, PlatformHandler } from "@tsed/common";
2
+ import { AnyPromiseResult } from "@tsed/core";
3
+ export declare class PlatformExpressHandler extends PlatformHandler {
4
+ onResponse(response: AnyPromiseResult, $ctx: PlatformContext): any;
5
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsed/platform-express",
3
- "version": "7.63.0",
3
+ "version": "7.63.2",
4
4
  "description": "A TypeScript Framework on top of Express",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/cjs/index.js",
@@ -55,12 +55,12 @@
55
55
  "tslib": "2.6.1"
56
56
  },
57
57
  "devDependencies": {
58
- "@tsed/common": "7.63.0",
59
- "@tsed/core": "7.63.0",
60
- "@tsed/di": "7.63.0",
61
- "@tsed/platform-test-sdk": "7.63.0",
62
- "@tsed/platform-views": "7.63.0",
63
- "@tsed/typescript": "7.63.0",
58
+ "@tsed/common": "7.63.2",
59
+ "@tsed/core": "7.63.2",
60
+ "@tsed/di": "7.63.2",
61
+ "@tsed/platform-test-sdk": "7.63.2",
62
+ "@tsed/platform-views": "7.63.2",
63
+ "@tsed/typescript": "7.63.2",
64
64
  "@types/body-parser": "1.19.2",
65
65
  "@types/compression": "1.7.2",
66
66
  "@types/cookie-parser": "1.4.2",
@@ -73,20 +73,21 @@
73
73
  "compression": "1.7.4",
74
74
  "cookie-parser": "1.4.6",
75
75
  "cors": "2.8.5",
76
+ "cross-env": "7.0.3",
76
77
  "eslint": "^8.12.0",
77
78
  "express-session": "1.17.2",
78
79
  "jest": "^29.2.0",
79
80
  "method-override": "3.0.0"
80
81
  },
81
82
  "peerDependencies": {
82
- "@tsed/common": "7.63.0",
83
- "@tsed/core": "7.63.0",
84
- "@tsed/di": "7.63.0",
85
- "@tsed/json-mapper": "7.63.0",
83
+ "@tsed/common": "7.63.2",
84
+ "@tsed/core": "7.63.2",
85
+ "@tsed/di": "7.63.2",
86
+ "@tsed/json-mapper": "7.63.2",
86
87
  "@tsed/logger": ">=6.2.2",
87
- "@tsed/openspec": "7.63.0",
88
- "@tsed/platform-views": "7.63.0",
89
- "@tsed/schema": "7.63.0",
88
+ "@tsed/openspec": "7.63.2",
89
+ "@tsed/platform-views": "7.63.2",
90
+ "@tsed/schema": "7.63.2",
90
91
  "@types/multer": "^1.4.5",
91
92
  "body-parser": "^1.19.0",
92
93
  "cross-env": "7.0.3",