@tsed/common 8.0.0-alpha.5 → 8.0.0-alpha.7

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 (239) hide show
  1. package/lib/esm/builder/PlatformBuilder.js.map +1 -1
  2. package/lib/esm/config/services/PlatformConfiguration.js.map +1 -1
  3. package/lib/esm/decorators/PlatformProvider.js.map +1 -1
  4. package/lib/esm/decorators/multer/multerOptions.js.map +1 -1
  5. package/lib/esm/decorators/multer/multipartFile.js.map +1 -1
  6. package/lib/esm/decorators/params/request.js +1 -1
  7. package/lib/esm/decorators/params/request.js.map +1 -1
  8. package/lib/esm/decorators/params/response.js.map +1 -1
  9. package/lib/esm/domain/AnyToPromiseWithCtx.js.map +1 -1
  10. package/lib/esm/domain/PlatformContext.js.map +1 -1
  11. package/lib/esm/exports.js +5 -5
  12. package/lib/esm/exports.js.map +1 -1
  13. package/lib/esm/middlewares/PlatformAcceptMimesMiddleware.js.map +1 -1
  14. package/lib/esm/middlewares/PlatformMulterMiddleware.js.map +1 -1
  15. package/lib/esm/services/Platform.js.map +1 -1
  16. package/lib/esm/services/PlatformAdapter.js.map +1 -1
  17. package/lib/esm/services/PlatformApplication.js.map +1 -1
  18. package/lib/esm/services/PlatformHandler.js.map +1 -1
  19. package/lib/esm/services/PlatformMiddlewaresChain.js.map +1 -1
  20. package/lib/esm/services/PlatformRequest.js.map +1 -1
  21. package/lib/esm/services/PlatformResponse.js.map +1 -1
  22. package/lib/esm/services/PlatformTest.js.map +1 -1
  23. package/lib/esm/utils/createContext.js.map +1 -1
  24. package/lib/esm/utils/createHttpServer.js.map +1 -1
  25. package/lib/esm/utils/createHttpsServer.js.map +1 -1
  26. package/lib/esm/utils/createInjector.js.map +1 -1
  27. package/lib/esm/utils/createServer.js.map +1 -1
  28. package/lib/esm/utils/ensureContext.js.map +1 -1
  29. package/lib/esm/utils/getConfiguration.js.map +1 -1
  30. package/lib/esm/utils/getStaticsOptions.js.map +1 -1
  31. package/lib/esm/utils/printRoutes.js.map +1 -1
  32. package/lib/esm/utils/registerPlatformAdapter.js.map +1 -1
  33. package/lib/esm/utils/setResponseHeaders.js.map +1 -1
  34. package/lib/types/builder/PlatformBuilder.d.ts +1 -1
  35. package/lib/types/config/services/PlatformConfiguration.d.ts +1 -1
  36. package/lib/types/domain/PlatformContext.d.ts +1 -1
  37. package/lib/types/exports.d.ts +5 -5
  38. package/lib/types/interfaces/IncomingEvent.d.ts +1 -1
  39. package/lib/types/services/FakeResponse.d.ts +1 -1
  40. package/lib/types/services/PlatformAdapter.d.ts +1 -1
  41. package/lib/types/services/PlatformApplication.d.ts +1 -1
  42. package/lib/types/services/PlatformRequest.d.ts +1 -1
  43. package/lib/types/services/PlatformResponse.d.ts +2 -2
  44. package/lib/types/services/PlatformTest.d.ts +1 -1
  45. package/lib/types/utils/closeServer.d.ts +3 -3
  46. package/lib/types/utils/createHttpServer.d.ts +1 -1
  47. package/lib/types/utils/createHttpsServer.d.ts +1 -1
  48. package/lib/types/utils/createServer.d.ts +3 -3
  49. package/lib/types/utils/listenServer.d.ts +3 -3
  50. package/package.json +22 -23
  51. package/vitest.config.mts +4 -4
  52. package/lib/cjs/builder/PlatformBuilder.js +0 -341
  53. package/lib/cjs/builder/PlatformBuilder.js.map +0 -1
  54. package/lib/cjs/config/interfaces/PlatformJsonMapperSettings.js +0 -3
  55. package/lib/cjs/config/interfaces/PlatformJsonMapperSettings.js.map +0 -1
  56. package/lib/cjs/config/interfaces/PlatformMulterSettings.js +0 -3
  57. package/lib/cjs/config/interfaces/PlatformMulterSettings.js.map +0 -1
  58. package/lib/cjs/config/interfaces/PlatformRouterSettings.js +0 -3
  59. package/lib/cjs/config/interfaces/PlatformRouterSettings.js.map +0 -1
  60. package/lib/cjs/config/interfaces/PlatformStaticsSettings.js +0 -3
  61. package/lib/cjs/config/interfaces/PlatformStaticsSettings.js.map +0 -1
  62. package/lib/cjs/config/services/PlatformConfiguration.js +0 -122
  63. package/lib/cjs/config/services/PlatformConfiguration.js.map +0 -1
  64. package/lib/cjs/constants/routerOptions.js +0 -5
  65. package/lib/cjs/constants/routerOptions.js.map +0 -1
  66. package/lib/cjs/decorators/PlatformProvider.js +0 -11
  67. package/lib/cjs/decorators/PlatformProvider.js.map +0 -1
  68. package/lib/cjs/decorators/multer/multerFileSize.js +0 -35
  69. package/lib/cjs/decorators/multer/multerFileSize.js.map +0 -1
  70. package/lib/cjs/decorators/multer/multerOptions.js +0 -52
  71. package/lib/cjs/decorators/multer/multerOptions.js.map +0 -1
  72. package/lib/cjs/decorators/multer/multipartFile.js +0 -78
  73. package/lib/cjs/decorators/multer/multipartFile.js.map +0 -1
  74. package/lib/cjs/decorators/params/error.js +0 -20
  75. package/lib/cjs/decorators/params/error.js.map +0 -1
  76. package/lib/cjs/decorators/params/next.js +0 -21
  77. package/lib/cjs/decorators/params/next.js.map +0 -1
  78. package/lib/cjs/decorators/params/request.js +0 -39
  79. package/lib/cjs/decorators/params/request.js.map +0 -1
  80. package/lib/cjs/decorators/params/response.js +0 -33
  81. package/lib/cjs/decorators/params/response.js.map +0 -1
  82. package/lib/cjs/domain/AnyToPromiseWithCtx.js +0 -25
  83. package/lib/cjs/domain/AnyToPromiseWithCtx.js.map +0 -1
  84. package/lib/cjs/domain/EndpointMetadata.js +0 -6
  85. package/lib/cjs/domain/EndpointMetadata.js.map +0 -1
  86. package/lib/cjs/domain/PlatformContext.js +0 -73
  87. package/lib/cjs/domain/PlatformContext.js.map +0 -1
  88. package/lib/cjs/domain/PlatformRouteDetails.js +0 -3
  89. package/lib/cjs/domain/PlatformRouteDetails.js.map +0 -1
  90. package/lib/cjs/exports.js +0 -30
  91. package/lib/cjs/exports.js.map +0 -1
  92. package/lib/cjs/index.js +0 -67
  93. package/lib/cjs/index.js.map +0 -1
  94. package/lib/cjs/interfaces/AfterInit.js +0 -3
  95. package/lib/cjs/interfaces/AfterInit.js.map +0 -1
  96. package/lib/cjs/interfaces/AfterListen.js +0 -3
  97. package/lib/cjs/interfaces/AfterListen.js.map +0 -1
  98. package/lib/cjs/interfaces/AfterRoutesInit.js +0 -3
  99. package/lib/cjs/interfaces/AfterRoutesInit.js.map +0 -1
  100. package/lib/cjs/interfaces/BeforeInit.js +0 -3
  101. package/lib/cjs/interfaces/BeforeInit.js.map +0 -1
  102. package/lib/cjs/interfaces/BeforeListen.js +0 -3
  103. package/lib/cjs/interfaces/BeforeListen.js.map +0 -1
  104. package/lib/cjs/interfaces/BeforeRoutesInit.js +0 -3
  105. package/lib/cjs/interfaces/BeforeRoutesInit.js.map +0 -1
  106. package/lib/cjs/interfaces/HandlerType.js +0 -17
  107. package/lib/cjs/interfaces/HandlerType.js.map +0 -1
  108. package/lib/cjs/interfaces/IncomingEvent.js +0 -3
  109. package/lib/cjs/interfaces/IncomingEvent.js.map +0 -1
  110. package/lib/cjs/interfaces/OnReady.js +0 -3
  111. package/lib/cjs/interfaces/OnReady.js.map +0 -1
  112. package/lib/cjs/interfaces/OnRequest.js +0 -3
  113. package/lib/cjs/interfaces/OnRequest.js.map +0 -1
  114. package/lib/cjs/interfaces/OnResponse.js +0 -3
  115. package/lib/cjs/interfaces/OnResponse.js.map +0 -1
  116. package/lib/cjs/interfaces/OnRoutesInit.js +0 -3
  117. package/lib/cjs/interfaces/OnRoutesInit.js.map +0 -1
  118. package/lib/cjs/interfaces/PlatformRouteOptions.js +0 -3
  119. package/lib/cjs/interfaces/PlatformRouteOptions.js.map +0 -1
  120. package/lib/cjs/interfaces/ResponseErrorObject.js +0 -3
  121. package/lib/cjs/interfaces/ResponseErrorObject.js.map +0 -1
  122. package/lib/cjs/interfaces/Route.js +0 -3
  123. package/lib/cjs/interfaces/Route.js.map +0 -1
  124. package/lib/cjs/middlewares/PlatformAcceptMimesMiddleware.js +0 -39
  125. package/lib/cjs/middlewares/PlatformAcceptMimesMiddleware.js.map +0 -1
  126. package/lib/cjs/middlewares/PlatformMulterMiddleware.js +0 -70
  127. package/lib/cjs/middlewares/PlatformMulterMiddleware.js.map +0 -1
  128. package/lib/cjs/package.json +0 -3
  129. package/lib/cjs/services/FakeAdapter.js +0 -6
  130. package/lib/cjs/services/FakeAdapter.js.map +0 -1
  131. package/lib/cjs/services/FakeResponse.js +0 -59
  132. package/lib/cjs/services/FakeResponse.js.map +0 -1
  133. package/lib/cjs/services/Platform.js +0 -76
  134. package/lib/cjs/services/Platform.js.map +0 -1
  135. package/lib/cjs/services/PlatformAdapter.js +0 -82
  136. package/lib/cjs/services/PlatformAdapter.js.map +0 -1
  137. package/lib/cjs/services/PlatformApplication.js +0 -44
  138. package/lib/cjs/services/PlatformApplication.js.map +0 -1
  139. package/lib/cjs/services/PlatformHandler.js +0 -133
  140. package/lib/cjs/services/PlatformHandler.js.map +0 -1
  141. package/lib/cjs/services/PlatformMiddlewaresChain.js +0 -60
  142. package/lib/cjs/services/PlatformMiddlewaresChain.js.map +0 -1
  143. package/lib/cjs/services/PlatformRequest.js +0 -144
  144. package/lib/cjs/services/PlatformRequest.js.map +0 -1
  145. package/lib/cjs/services/PlatformResponse.js +0 -309
  146. package/lib/cjs/services/PlatformResponse.js.map +0 -1
  147. package/lib/cjs/services/PlatformTest.js +0 -142
  148. package/lib/cjs/services/PlatformTest.js.map +0 -1
  149. package/lib/cjs/utils/closeServer.js +0 -8
  150. package/lib/cjs/utils/closeServer.js.map +0 -1
  151. package/lib/cjs/utils/createContext.js +0 -49
  152. package/lib/cjs/utils/createContext.js.map +0 -1
  153. package/lib/cjs/utils/createHttpServer.js +0 -18
  154. package/lib/cjs/utils/createHttpServer.js.map +0 -1
  155. package/lib/cjs/utils/createHttpsServer.js +0 -18
  156. package/lib/cjs/utils/createHttpsServer.js.map +0 -1
  157. package/lib/cjs/utils/createInjector.js +0 -45
  158. package/lib/cjs/utils/createInjector.js.map +0 -1
  159. package/lib/cjs/utils/createServer.js +0 -33
  160. package/lib/cjs/utils/createServer.js.map +0 -1
  161. package/lib/cjs/utils/ensureContext.js +0 -16
  162. package/lib/cjs/utils/ensureContext.js.map +0 -1
  163. package/lib/cjs/utils/getConfiguration.js +0 -36
  164. package/lib/cjs/utils/getConfiguration.js.map +0 -1
  165. package/lib/cjs/utils/getStaticsOptions.js +0 -21
  166. package/lib/cjs/utils/getStaticsOptions.js.map +0 -1
  167. package/lib/cjs/utils/listenServer.js +0 -14
  168. package/lib/cjs/utils/listenServer.js.map +0 -1
  169. package/lib/cjs/utils/mapReturnedResponse.js +0 -15
  170. package/lib/cjs/utils/mapReturnedResponse.js.map +0 -1
  171. package/lib/cjs/utils/printRoutes.js +0 -38
  172. package/lib/cjs/utils/printRoutes.js.map +0 -1
  173. package/lib/cjs/utils/registerPlatformAdapter.js +0 -11
  174. package/lib/cjs/utils/registerPlatformAdapter.js.map +0 -1
  175. package/lib/cjs/utils/setResponseHeaders.js +0 -29
  176. package/lib/cjs/utils/setResponseHeaders.js.map +0 -1
  177. package/lib/esm/package.json +0 -3
  178. package/lib/types-esm/builder/PlatformBuilder.d.ts +0 -100
  179. package/lib/types-esm/config/interfaces/PlatformJsonMapperSettings.d.ts +0 -10
  180. package/lib/types-esm/config/interfaces/PlatformMulterSettings.d.ts +0 -14
  181. package/lib/types-esm/config/interfaces/PlatformRouterSettings.d.ts +0 -10
  182. package/lib/types-esm/config/interfaces/PlatformStaticsSettings.d.ts +0 -17
  183. package/lib/types-esm/config/services/PlatformConfiguration.d.ts +0 -67
  184. package/lib/types-esm/constants/routerOptions.d.ts +0 -1
  185. package/lib/types-esm/decorators/PlatformProvider.d.ts +0 -3
  186. package/lib/types-esm/decorators/multer/multerFileSize.d.ts +0 -27
  187. package/lib/types-esm/decorators/multer/multerOptions.d.ts +0 -41
  188. package/lib/types-esm/decorators/multer/multipartFile.d.ts +0 -47
  189. package/lib/types-esm/decorators/params/error.d.ts +0 -7
  190. package/lib/types-esm/decorators/params/next.d.ts +0 -22
  191. package/lib/types-esm/decorators/params/request.d.ts +0 -46
  192. package/lib/types-esm/decorators/params/response.d.ts +0 -40
  193. package/lib/types-esm/domain/AnyToPromiseWithCtx.d.ts +0 -10
  194. package/lib/types-esm/domain/EndpointMetadata.d.ts +0 -1
  195. package/lib/types-esm/domain/PlatformContext.d.ts +0 -80
  196. package/lib/types-esm/domain/PlatformRouteDetails.d.ts +0 -7
  197. package/lib/types-esm/exports.d.ts +0 -11
  198. package/lib/types-esm/index.d.ts +0 -63
  199. package/lib/types-esm/interfaces/AfterInit.d.ts +0 -3
  200. package/lib/types-esm/interfaces/AfterListen.d.ts +0 -3
  201. package/lib/types-esm/interfaces/AfterRoutesInit.d.ts +0 -3
  202. package/lib/types-esm/interfaces/BeforeInit.d.ts +0 -3
  203. package/lib/types-esm/interfaces/BeforeListen.d.ts +0 -3
  204. package/lib/types-esm/interfaces/BeforeRoutesInit.d.ts +0 -3
  205. package/lib/types-esm/interfaces/HandlerType.d.ts +0 -12
  206. package/lib/types-esm/interfaces/IncomingEvent.d.ts +0 -6
  207. package/lib/types-esm/interfaces/OnReady.d.ts +0 -3
  208. package/lib/types-esm/interfaces/OnRequest.d.ts +0 -4
  209. package/lib/types-esm/interfaces/OnResponse.d.ts +0 -4
  210. package/lib/types-esm/interfaces/OnRoutesInit.d.ts +0 -3
  211. package/lib/types-esm/interfaces/PlatformRouteOptions.d.ts +0 -15
  212. package/lib/types-esm/interfaces/ResponseErrorObject.d.ts +0 -8
  213. package/lib/types-esm/interfaces/Route.d.ts +0 -10
  214. package/lib/types-esm/middlewares/PlatformAcceptMimesMiddleware.d.ts +0 -10
  215. package/lib/types-esm/middlewares/PlatformMulterMiddleware.d.ts +0 -24
  216. package/lib/types-esm/services/FakeAdapter.d.ts +0 -1
  217. package/lib/types-esm/services/FakeResponse.d.ts +0 -22
  218. package/lib/types-esm/services/Platform.d.ts +0 -25
  219. package/lib/types-esm/services/PlatformAdapter.d.ts +0 -89
  220. package/lib/types-esm/services/PlatformApplication.d.ts +0 -29
  221. package/lib/types-esm/services/PlatformHandler.d.ts +0 -39
  222. package/lib/types-esm/services/PlatformMiddlewaresChain.d.ts +0 -17
  223. package/lib/types-esm/services/PlatformRequest.d.ts +0 -111
  224. package/lib/types-esm/services/PlatformResponse.d.ts +0 -174
  225. package/lib/types-esm/services/PlatformTest.d.ts +0 -60
  226. package/lib/types-esm/utils/closeServer.d.ts +0 -7
  227. package/lib/types-esm/utils/createContext.d.ts +0 -10
  228. package/lib/types-esm/utils/createHttpServer.d.ts +0 -4
  229. package/lib/types-esm/utils/createHttpsServer.d.ts +0 -4
  230. package/lib/types-esm/utils/createInjector.d.ts +0 -9
  231. package/lib/types-esm/utils/createServer.d.ts +0 -17
  232. package/lib/types-esm/utils/ensureContext.d.ts +0 -2
  233. package/lib/types-esm/utils/getConfiguration.d.ts +0 -2
  234. package/lib/types-esm/utils/getStaticsOptions.d.ts +0 -5
  235. package/lib/types-esm/utils/listenServer.d.ts +0 -8
  236. package/lib/types-esm/utils/mapReturnedResponse.d.ts +0 -4
  237. package/lib/types-esm/utils/printRoutes.d.ts +0 -2
  238. package/lib/types-esm/utils/registerPlatformAdapter.d.ts +0 -3
  239. package/lib/types-esm/utils/setResponseHeaders.d.ts +0 -5
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlatformMiddlewaresChain = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@tsed/core");
6
- const di_1 = require("@tsed/di");
7
- const platform_params_1 = require("@tsed/platform-params");
8
- const schema_1 = require("@tsed/schema");
9
- const PlatformAcceptMimesMiddleware_js_1 = require("../middlewares/PlatformAcceptMimesMiddleware.js");
10
- const PlatformMulterMiddleware_js_1 = require("../middlewares/PlatformMulterMiddleware.js");
11
- const PlatformAdapter_js_1 = require("../services/PlatformAdapter.js");
12
- let PlatformMiddlewaresChain = class PlatformMiddlewaresChain {
13
- get(handlers, operationRoute) {
14
- const { ACCEPT_MIMES, FILE } = this.getParamTypes(handlers, operationRoute);
15
- return {
16
- ...handlers,
17
- before: [ACCEPT_MIMES && PlatformAcceptMimesMiddleware_js_1.PlatformAcceptMimesMiddleware, ...handlers.before, FILE && PlatformMulterMiddleware_js_1.PlatformMulterMiddleware].filter(Boolean)
18
- };
19
- }
20
- hasAcceptMimes(operationRoute) {
21
- return operationRoute.endpoint.acceptMimes.length || this.acceptMimes.length;
22
- }
23
- getParamTypes(middlewares, operationRoute) {
24
- return middlewares.before
25
- .concat(middlewares.after)
26
- .filter(core_1.isClass)
27
- .reduce((paramTypes, token) => {
28
- const entity = schema_1.JsonEntityStore.fromMethod(token, "use");
29
- if (entity.decoratorType === "method") {
30
- const { FILE, RAW_BODY, BODY } = entity.getParamTypes();
31
- paramTypes.FILE = paramTypes.FILE || FILE;
32
- paramTypes.RAW_BODY = paramTypes.RAW_BODY || RAW_BODY;
33
- paramTypes.BODY = paramTypes.BODY || BODY;
34
- }
35
- return paramTypes;
36
- }, {
37
- ACCEPT_MIMES: this.hasAcceptMimes(operationRoute),
38
- FILE: operationRoute.has(platform_params_1.ParamTypes.FILES),
39
- RAW_BODY: operationRoute.has(platform_params_1.ParamTypes.RAW_BODY),
40
- BODY: operationRoute.has(platform_params_1.ParamTypes.BODY) || operationRoute.method === "ALL"
41
- });
42
- }
43
- };
44
- tslib_1.__decorate([
45
- (0, di_1.Constant)("acceptMimes", []),
46
- tslib_1.__metadata("design:type", Array)
47
- ], PlatformMiddlewaresChain.prototype, "acceptMimes", void 0);
48
- tslib_1.__decorate([
49
- (0, di_1.Inject)(PlatformAdapter_js_1.PlatformAdapter),
50
- tslib_1.__metadata("design:type", PlatformAdapter_js_1.PlatformAdapter)
51
- ], PlatformMiddlewaresChain.prototype, "adapter", void 0);
52
- tslib_1.__decorate([
53
- (0, di_1.Inject)(di_1.InjectorService),
54
- tslib_1.__metadata("design:type", di_1.InjectorService)
55
- ], PlatformMiddlewaresChain.prototype, "injector", void 0);
56
- PlatformMiddlewaresChain = tslib_1.__decorate([
57
- (0, di_1.Injectable)()
58
- ], PlatformMiddlewaresChain);
59
- exports.PlatformMiddlewaresChain = PlatformMiddlewaresChain;
60
- //# sourceMappingURL=PlatformMiddlewaresChain.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlatformMiddlewaresChain.js","sourceRoot":"","sources":["../../../src/services/PlatformMiddlewaresChain.ts"],"names":[],"mappings":";;;;AAAA,qCAAmC;AACnC,iCAAsF;AACtF,2DAAiD;AAEjD,yCAAiE;AACjE,sGAA8F;AAC9F,4FAAoF;AACpF,uEAA+D;AAGxD,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAUnC,GAAG,CAAC,QAAkC,EAAE,cAAkC;QACxE,MAAM,EAAC,YAAY,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAE1E,OAAO;YACL,GAAG,QAAQ;YACX,MAAM,EAAE,CAAC,YAAY,IAAI,gEAA6B,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,IAAI,sDAAwB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAU;SACvI,CAAC;IACJ,CAAC;IAES,cAAc,CAAC,cAAkC;QACzD,OAAO,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;IAC/E,CAAC;IAES,aAAa,CAAC,WAAqC,EAAE,cAAkC;QAC/F,OAAO,WAAW,CAAC,MAAM;aACtB,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;aACzB,MAAM,CAAC,cAAO,CAAC;aACf,MAAM,CACL,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,wBAAe,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAExD,IAAI,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE;gBACrC,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;gBACtD,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC;gBAC1C,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,QAAQ,CAAC;gBACtD,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC;aAC3C;YAED,OAAO,UAAU,CAAC;QACpB,CAAC,EACD;YACE,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC;YACjD,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,4BAAU,CAAC,KAAK,CAAC;YAC1C,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,4BAAU,CAAC,QAAQ,CAAC;YACjD,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,4BAAU,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,KAAK;SAC7E,CACF,CAAC;IACN,CAAC;CACF,CAAA;AA/CC;IAAC,IAAA,aAAQ,EAAC,aAAa,EAAE,EAAE,CAAC;;6DACI;AAEhC;IAAC,IAAA,WAAM,EAAC,oCAAe,CAAC;sCACL,oCAAe;yDAAC;AAEnC;IAAC,IAAA,WAAM,EAAC,oBAAe,CAAC;sCACJ,oBAAe;0DAAC;AARzB,wBAAwB;IADpC,IAAA,eAAU,GAAE;GACA,wBAAwB,CAgDpC;AAhDY,4DAAwB"}
@@ -1,144 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlatformRequest = void 0;
4
- const tslib_1 = require("tslib");
5
- const di_1 = require("@tsed/di");
6
- /**
7
- * Platform Request abstraction layer.
8
- * @platform
9
- */
10
- let PlatformRequest = class PlatformRequest {
11
- constructor($ctx) {
12
- this.$ctx = $ctx;
13
- }
14
- /**
15
- * The current @@PlatformResponse@@.
16
- */
17
- get response() {
18
- return this.$ctx.response;
19
- }
20
- get raw() {
21
- return this.$ctx.event.request;
22
- }
23
- get secure() {
24
- return this.raw.secure;
25
- }
26
- get host() {
27
- return this.get("host");
28
- }
29
- get protocol() {
30
- return this.raw.protocol;
31
- }
32
- /**
33
- * Get the url of the request.
34
- *
35
- * Is equivalent of `express.response.originalUrl || express.response.url`.
36
- */
37
- get url() {
38
- return this.raw.originalUrl || this.raw.url;
39
- }
40
- get headers() {
41
- return this.raw.headers;
42
- }
43
- get method() {
44
- return this.raw.method;
45
- }
46
- /**
47
- * Contains key-value pairs of data submitted in the request body. By default, it is `undefined`, and is populated when you use
48
- * `body-parsing` middleware such as `express.json()` or `express.urlencoded()`.
49
- */
50
- get body() {
51
- return this.raw.body;
52
- }
53
- get rawBody() {
54
- return this.raw.rawBody || this.raw.body;
55
- }
56
- /**
57
- * When using `cookie-parser` middleware, this property is an object that contains cookies sent by the request.
58
- * If the request contains no cookies, it defaults to `{}`.
59
- */
60
- get cookies() {
61
- return this.raw.cookies;
62
- }
63
- /**
64
- * This property is an object containing properties mapped to the named route `parameters`.
65
- * For example, if you have the route `/user/:name`, then the `name` property is available as `req.params.name`.
66
- * This object defaults to `{}`.
67
- */
68
- get params() {
69
- return this.raw.params;
70
- }
71
- /**
72
- * This property is an object containing a property for each query string parameter in the route.
73
- * When query parser is set to disabled, it is an empty object `{}`, otherwise it is the result of the configured query parser.
74
- */
75
- get query() {
76
- return this.raw.query;
77
- }
78
- /**
79
- * This property is an object containing a property for each session attributes set by any code.
80
- * It requires to install a middleware like express-session to work.
81
- */
82
- get session() {
83
- return this.raw.session;
84
- }
85
- get files() {
86
- return this.raw.files;
87
- }
88
- get route() {
89
- return this.$ctx.handlerMetadata?.path;
90
- }
91
- /**
92
- * Return the original request framework instance
93
- */
94
- get request() {
95
- return this.getRequest();
96
- }
97
- /**
98
- * Return the original request node.js instance
99
- */
100
- get req() {
101
- return this.getReq();
102
- }
103
- /**
104
- * Returns the HTTP request header specified by field. The match is case-insensitive.
105
- *
106
- * ```typescript
107
- * request.get('Content-Type') // => "text/plain"
108
- * ```
109
- *
110
- * @param name
111
- */
112
- get(name) {
113
- return this.raw.get(name);
114
- }
115
- getHeader(name) {
116
- return this.get(name);
117
- }
118
- accepts(mime) {
119
- // @ts-ignore
120
- return this.raw.accepts(mime);
121
- }
122
- isAborted() {
123
- return this.raw.aborted;
124
- }
125
- /**
126
- * Return the Framework response object (express, koa, etc...)
127
- */
128
- getRequest() {
129
- return this.raw;
130
- }
131
- /**
132
- * Return the Node.js response object
133
- */
134
- getReq() {
135
- return this.$ctx.event.request;
136
- }
137
- };
138
- PlatformRequest = tslib_1.__decorate([
139
- (0, di_1.Injectable)(),
140
- (0, di_1.Scope)(di_1.ProviderScope.INSTANCE),
141
- tslib_1.__metadata("design:paramtypes", [Function])
142
- ], PlatformRequest);
143
- exports.PlatformRequest = PlatformRequest;
144
- //# sourceMappingURL=PlatformRequest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlatformRequest.js","sourceRoot":"","sources":["../../../src/services/PlatformRequest.ts"],"names":[],"mappings":"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"}
@@ -1,309 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlatformResponse = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@tsed/core");
6
- const di_1 = require("@tsed/di");
7
- const schema_1 = require("@tsed/schema");
8
- const encodeurl_1 = tslib_1.__importDefault(require("encodeurl"));
9
- /**
10
- * Platform Response abstraction layer.
11
- * @platform
12
- */
13
- let PlatformResponse = class PlatformResponse {
14
- constructor($ctx) {
15
- this.$ctx = $ctx;
16
- }
17
- /**
18
- * The current @@PlatformRequest@@.
19
- */
20
- get request() {
21
- return this.$ctx.request;
22
- }
23
- get raw() {
24
- return this.$ctx.event.response;
25
- }
26
- /**
27
- * Get the current statusCode
28
- */
29
- get statusCode() {
30
- return this.raw.statusCode;
31
- }
32
- /**
33
- * An object that contains response local variables scoped to the request, and therefore available only to the view(s) rendered during that request / response cycle (if any). Otherwise, this property is identical to app.locals.
34
- *
35
- * This property is useful for exposing request-level information such as the request path name, authenticated user, user settings, and so on.
36
- */
37
- get locals() {
38
- return this.raw.locals;
39
- }
40
- /**
41
- * Return the original response framework instance
42
- */
43
- get response() {
44
- return this.getResponse();
45
- }
46
- /**
47
- * Return the original response node.js instance
48
- */
49
- get res() {
50
- return this.getRes();
51
- }
52
- /**
53
- * Returns the HTTP response header specified by field. The match is case-insensitive.
54
- *
55
- * ```typescript
56
- * response.get('Content-Type') // => "text/plain"
57
- * ```
58
- *
59
- * @param name
60
- */
61
- get(name) {
62
- return this.raw.get(name);
63
- }
64
- getHeaders() {
65
- return this.raw.getHeaders();
66
- }
67
- /**
68
- * Return the Framework response object (express, koa, etc...)
69
- */
70
- getResponse() {
71
- return this.raw;
72
- }
73
- /**
74
- * Return the Node.js response object
75
- */
76
- getRes() {
77
- return this.raw;
78
- }
79
- hasStatus() {
80
- return this.statusCode !== 200;
81
- }
82
- /**
83
- * Sets the HTTP status for the response.
84
- *
85
- * @param status
86
- */
87
- status(status) {
88
- this.raw.status(status);
89
- return this;
90
- }
91
- /**
92
- * Set header `field` to `val`, or pass
93
- * an object of header fields.
94
- *
95
- * Examples:
96
- * ```typescript
97
- * response.setHeaders({ Accept: 'text/plain', 'X-API-Key': 'tobi' });
98
- * ```
99
- *
100
- * Aliased as `res.header()`.
101
- */
102
- setHeaders(headers) {
103
- // apply headers
104
- Object.entries(headers).forEach(([key, item]) => {
105
- this.setHeader(key, item);
106
- });
107
- return this;
108
- }
109
- setHeader(key, item) {
110
- this.raw.set(key, this.formatHeader(key, item));
111
- return this;
112
- }
113
- /**
114
- * Set `Content-Type` response header with `type` through `mime.lookup()`
115
- * when it does not contain "/", or set the Content-Type to `type` otherwise.
116
- *
117
- * Examples:
118
- *
119
- * res.type('.html');
120
- * res.type('html');
121
- * res.type('json');
122
- * res.type('application/json');
123
- * res.type('png');
124
- */
125
- contentType(contentType) {
126
- this.raw.contentType(contentType);
127
- return this;
128
- }
129
- contentLength(length) {
130
- this.setHeader("Content-Length", length);
131
- return this;
132
- }
133
- getContentLength() {
134
- if (this.get("Content-Length")) {
135
- return parseInt(this.get("Content-Length"), 10) || 0;
136
- }
137
- }
138
- getContentType() {
139
- return (this.get("Content-Type") || "").split(";")[0];
140
- }
141
- /**
142
- * Sets the HTTP response Content-Disposition header field to “attachment”.
143
- * If a filename is given, then it sets the Content-Type based on the extension name via res.type(), and sets the Content-Disposition “filename=” parameter.
144
- *
145
- * ```typescript
146
- * res.attachment()
147
- * // Content-Disposition: attachment
148
- *
149
- * res.attachment('path/to/logo.png')
150
- * // Content-Disposition: attachment; filename="logo.png"
151
- * // Content-Type: image/png
152
- * ```
153
- *
154
- * @param filename
155
- */
156
- attachment(filename) {
157
- this.raw.attachment(filename);
158
- return this;
159
- }
160
- /**
161
- * Redirects to the URL derived from the specified path, with specified status, a positive integer that corresponds to an [HTTP status code](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
162
- * If not specified, status defaults to `302 Found`.
163
- *
164
- * @param status
165
- * @param url
166
- */
167
- redirect(status, url) {
168
- status = status || 302;
169
- this.location(url);
170
- // Set location header
171
- url = this.get("Location");
172
- const txt = `${(0, schema_1.getStatusMessage)(status)}. Redirecting to ${url}`;
173
- this.status(status);
174
- if (this.request.method === "HEAD") {
175
- this.end();
176
- }
177
- else {
178
- this.setHeader("Content-Length", Buffer.byteLength(txt)).end(txt);
179
- }
180
- return this;
181
- }
182
- /**
183
- * Sets the response Location HTTP header to the specified path parameter.
184
- *
185
- * @param location
186
- */
187
- location(location) {
188
- this.setHeader("Location", location);
189
- return this;
190
- }
191
- /**
192
- * Stream the given data.
193
- *
194
- * @param data
195
- */
196
- stream(data) {
197
- data.pipe(this.raw);
198
- return this;
199
- }
200
- /**
201
- * Renders a view and sends the rendered HTML string to the client.
202
- *
203
- * @param path
204
- * @param options
205
- */
206
- async render(path, options = {}) {
207
- const { PlatformViews } = await Promise.resolve().then(() => tslib_1.__importStar(require("@tsed/platform-views")));
208
- const platformViews = await this.$ctx.injector.lazyInvoke(PlatformViews);
209
- return platformViews.render(path, {
210
- ...this.locals,
211
- ...options
212
- });
213
- }
214
- /**
215
- * Send any data to your consumer.
216
- *
217
- * This method accept a ReadableStream, a plain object, boolean, string, number, null and undefined data.
218
- * It chooses the better way to send the data.
219
- *
220
- * @param data
221
- */
222
- body(data) {
223
- this.data = data;
224
- if (data === undefined) {
225
- this.end();
226
- return this;
227
- }
228
- if ((0, core_1.isStream)(data)) {
229
- this.stream(data);
230
- return this;
231
- }
232
- if (Buffer.isBuffer(data)) {
233
- this.buffer(data);
234
- return this;
235
- }
236
- if ((0, core_1.isBoolean)(data) || (0, core_1.isNumber)(data) || (0, core_1.isString)(data) || data === null) {
237
- this.end(data);
238
- return this;
239
- }
240
- this.json(data);
241
- return this;
242
- }
243
- getBody() {
244
- return this.data;
245
- }
246
- /**
247
- * Add a listener to handler the end of the request/response.
248
- * @param cb
249
- */
250
- onEnd(cb) {
251
- const res = this.getRes();
252
- res.on("finish", cb);
253
- return this;
254
- }
255
- isDone() {
256
- if (this.$ctx.isFinished()) {
257
- return true;
258
- }
259
- const res = this.getRes();
260
- return Boolean(this.isHeadersSent() || res.writableEnded || res.writableFinished);
261
- }
262
- isHeadersSent() {
263
- return this.getRes().headersSent;
264
- }
265
- cookie(name, value, opts) {
266
- if (value === null) {
267
- this.raw.clearCookie(name);
268
- return this;
269
- }
270
- this.raw.cookie(name, value, opts);
271
- const cookie = this.raw.get("set-cookie");
272
- if (!(0, core_1.isArray)(value)) {
273
- this.raw.set("set-cookie", [].concat(cookie));
274
- }
275
- return this;
276
- }
277
- formatHeader(key, item) {
278
- if (key.toLowerCase() === "location") {
279
- // "back" is an alias for the referrer
280
- if (item === "back") {
281
- item = this.request.get("Referrer") || "/";
282
- }
283
- item = (0, encodeurl_1.default)(String(item));
284
- }
285
- return item;
286
- }
287
- json(data) {
288
- this.raw.json(data);
289
- return this;
290
- }
291
- buffer(data) {
292
- if (!this.getContentType()) {
293
- this.contentType("application/octet-stream");
294
- }
295
- this.contentLength(data.length);
296
- this.end(data);
297
- }
298
- end(data) {
299
- // data = await this.$ctx.injector.alter("$onResponse", data, this.$ctx);
300
- this.raw.send(data);
301
- }
302
- };
303
- PlatformResponse = tslib_1.__decorate([
304
- (0, di_1.Injectable)(),
305
- (0, di_1.Scope)(di_1.ProviderScope.INSTANCE),
306
- tslib_1.__metadata("design:paramtypes", [Function])
307
- ], PlatformResponse);
308
- exports.PlatformResponse = PlatformResponse;
309
- //# sourceMappingURL=PlatformResponse.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlatformResponse.js","sourceRoot":"","sources":["../../../src/services/PlatformResponse.ts"],"names":[],"mappings":"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"}
@@ -1,142 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlatformTest = void 0;
4
- const tslib_1 = require("tslib");
5
- const di_1 = require("@tsed/di");
6
- const accepts_1 = tslib_1.__importDefault(require("accepts"));
7
- const PlatformBuilder_js_1 = require("../builder/PlatformBuilder.js");
8
- const PlatformContext_js_1 = require("../domain/PlatformContext.js");
9
- const createInjector_js_1 = require("../utils/createInjector.js");
10
- const getConfiguration_js_1 = require("../utils/getConfiguration.js");
11
- const FakeResponse_1 = require("./FakeResponse");
12
- const PlatformApplication_js_1 = require("./PlatformApplication.js");
13
- /**
14
- * @platform
15
- */
16
- class PlatformTest extends di_1.DITest {
17
- static async create(settings = {}) {
18
- di_1.DITest.injector = PlatformTest.createInjector((0, getConfiguration_js_1.getConfiguration)(settings));
19
- await di_1.DITest.createContainer();
20
- }
21
- /**
22
- * Create a new injector with the right default services
23
- */
24
- static createInjector(settings = {}) {
25
- return (0, createInjector_js_1.createInjector)({
26
- settings: di_1.DITest.configure({ httpPort: false, httpsPort: false, ...settings })
27
- });
28
- }
29
- /**
30
- * Load the server silently without listening port and configure it on test profile.
31
- * @decorator
32
- * @param mod
33
- * @param listen
34
- * @param settings
35
- * @returns {Promise<void>}
36
- */
37
- static bootstrap(mod, { listen, ...settings } = {}) {
38
- return async function before() {
39
- let instance;
40
- const adapter = settings.platform || settings.adapter || PlatformTest.adapter;
41
- /* istanbul ignore next */
42
- if (!adapter) {
43
- throw new Error("Platform adapter is not specified. Have you added at least `import @tsed/platform-express` (or equivalent) on your Server.ts ?");
44
- }
45
- // @ts-ignore
46
- settings = di_1.DITest.configure(settings);
47
- settings.adapter = adapter;
48
- const configuration = (0, getConfiguration_js_1.getConfiguration)(settings, mod);
49
- const disableComponentsScan = configuration.disableComponentsScan || !!process.env.WEBPACK;
50
- if (!disableComponentsScan) {
51
- const { importProviders } = await Promise.resolve().then(() => tslib_1.__importStar(require("@tsed/components-scan")));
52
- await importProviders(configuration);
53
- }
54
- instance = await PlatformBuilder_js_1.PlatformBuilder.build(mod, configuration).bootstrap();
55
- await instance.listen(!!listen);
56
- // used by inject method
57
- di_1.DITest.injector = instance.injector;
58
- };
59
- }
60
- /**
61
- * It injects services into the test function where you can alter, spy on, and manipulate them.
62
- *
63
- * The inject function has two parameters
64
- *
65
- * * an array of Service dependency injection tokens,
66
- * * a test function whose parameters correspond exactly to each item in the injection token array.
67
- *
68
- * @param targets
69
- * @param func
70
- */
71
- static inject(targets, func) {
72
- return async () => {
73
- if (!di_1.DITest.hasInjector()) {
74
- await PlatformTest.create();
75
- }
76
- const injector = di_1.DITest.injector;
77
- const deps = [];
78
- for (const target of targets) {
79
- deps.push(injector.has(target) ? injector.get(target) : await injector.invoke(target));
80
- }
81
- return func(...deps);
82
- };
83
- }
84
- /**
85
- * Return the raw application (express or koa).
86
- * Use this callback with SuperTest.
87
- *
88
- * ```typescript
89
- * let request: SuperTest.Agent;
90
- * beforeEach(PlatformTest.bootstrap(Server, {
91
- * mount: {
92
- * "/rest": [ProductsController]
93
- * }
94
- * }));
95
- * beforeEach(() => {
96
- * request = SuperTest(PlatformTest.callback());
97
- * });
98
- * ```
99
- */
100
- static callback() {
101
- return di_1.DITest.injector.get(PlatformApplication_js_1.PlatformApplication)?.callback();
102
- }
103
- static createRequest(options = {}) {
104
- return {
105
- headers: {},
106
- method: "GET",
107
- url: "/",
108
- query: {},
109
- get(key) {
110
- return this.headers[key.toLowerCase()];
111
- },
112
- accepts(mime) {
113
- return (0, accepts_1.default)(this).types([].concat(mime));
114
- },
115
- ...options
116
- };
117
- }
118
- static createResponse(options = {}) {
119
- return new FakeResponse_1.FakeResponse(options);
120
- }
121
- static createRequestContext(options = {}) {
122
- const event = {
123
- ...options.event,
124
- request: options?.request?.request || options?.event?.request || PlatformTest.createRequest(),
125
- response: options?.response?.response || options?.event?.response || PlatformTest.createResponse()
126
- };
127
- const $ctx = new PlatformContext_js_1.PlatformContext({
128
- id: "id",
129
- injector: di_1.DITest.injector,
130
- logger: di_1.DITest.injector.logger,
131
- url: "/",
132
- ...options,
133
- event
134
- });
135
- if (options.endpoint) {
136
- $ctx.endpoint = options.endpoint;
137
- }
138
- return $ctx;
139
- }
140
- }
141
- exports.PlatformTest = PlatformTest;
142
- //# sourceMappingURL=PlatformTest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlatformTest.js","sourceRoot":"","sources":["../../../src/services/PlatformTest.ts"],"names":[],"mappings":"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"}