@celljs/mvc 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/cell.yml +9 -0
  4. package/lib/common/constants.d.ts +2 -0
  5. package/lib/common/constants.d.ts.map +1 -0
  6. package/lib/common/constants.js +5 -0
  7. package/lib/common/constants.js.map +1 -0
  8. package/lib/common/index.d.ts +2 -0
  9. package/lib/common/index.d.ts.map +1 -0
  10. package/lib/common/index.js +18 -0
  11. package/lib/common/index.js.map +1 -0
  12. package/lib/node/annotation/body.d.ts +7 -0
  13. package/lib/node/annotation/body.d.ts.map +1 -0
  14. package/lib/node/annotation/body.js +20 -0
  15. package/lib/node/annotation/body.js.map +1 -0
  16. package/lib/node/annotation/catch.d.ts +10 -0
  17. package/lib/node/annotation/catch.d.ts.map +1 -0
  18. package/lib/node/annotation/catch.js +23 -0
  19. package/lib/node/annotation/catch.js.map +1 -0
  20. package/lib/node/annotation/controller.d.ts +15 -0
  21. package/lib/node/annotation/controller.d.ts.map +1 -0
  22. package/lib/node/annotation/controller.js +35 -0
  23. package/lib/node/annotation/controller.js.map +1 -0
  24. package/lib/node/annotation/cookie.d.ts +16 -0
  25. package/lib/node/annotation/cookie.d.ts.map +1 -0
  26. package/lib/node/annotation/cookie.js +29 -0
  27. package/lib/node/annotation/cookie.js.map +1 -0
  28. package/lib/node/annotation/file.d.ts +3 -0
  29. package/lib/node/annotation/file.d.ts.map +1 -0
  30. package/lib/node/annotation/file.js +10 -0
  31. package/lib/node/annotation/file.js.map +1 -0
  32. package/lib/node/annotation/header.d.ts +16 -0
  33. package/lib/node/annotation/header.d.ts.map +1 -0
  34. package/lib/node/annotation/header.js +29 -0
  35. package/lib/node/annotation/header.js.map +1 -0
  36. package/lib/node/annotation/html.d.ts +3 -0
  37. package/lib/node/annotation/html.d.ts.map +1 -0
  38. package/lib/node/annotation/html.js +10 -0
  39. package/lib/node/annotation/html.js.map +1 -0
  40. package/lib/node/annotation/index.d.ts +17 -0
  41. package/lib/node/annotation/index.d.ts.map +1 -0
  42. package/lib/node/annotation/index.js +33 -0
  43. package/lib/node/annotation/index.js.map +1 -0
  44. package/lib/node/annotation/json.d.ts +3 -0
  45. package/lib/node/annotation/json.d.ts.map +1 -0
  46. package/lib/node/annotation/json.js +10 -0
  47. package/lib/node/annotation/json.js.map +1 -0
  48. package/lib/node/annotation/method.d.ts +24 -0
  49. package/lib/node/annotation/method.d.ts.map +1 -0
  50. package/lib/node/annotation/method.js +54 -0
  51. package/lib/node/annotation/method.js.map +1 -0
  52. package/lib/node/annotation/param.d.ts +7 -0
  53. package/lib/node/annotation/param.d.ts.map +1 -0
  54. package/lib/node/annotation/param.js +20 -0
  55. package/lib/node/annotation/param.js.map +1 -0
  56. package/lib/node/annotation/query.d.ts +7 -0
  57. package/lib/node/annotation/query.d.ts.map +1 -0
  58. package/lib/node/annotation/query.js +20 -0
  59. package/lib/node/annotation/query.js.map +1 -0
  60. package/lib/node/annotation/req.d.ts +6 -0
  61. package/lib/node/annotation/req.d.ts.map +1 -0
  62. package/lib/node/annotation/req.js +18 -0
  63. package/lib/node/annotation/req.js.map +1 -0
  64. package/lib/node/annotation/res.d.ts +6 -0
  65. package/lib/node/annotation/res.d.ts.map +1 -0
  66. package/lib/node/annotation/res.js +18 -0
  67. package/lib/node/annotation/res.js.map +1 -0
  68. package/lib/node/annotation/session.d.ts +16 -0
  69. package/lib/node/annotation/session.d.ts.map +1 -0
  70. package/lib/node/annotation/session.js +29 -0
  71. package/lib/node/annotation/session.js.map +1 -0
  72. package/lib/node/annotation/text.d.ts +3 -0
  73. package/lib/node/annotation/text.d.ts.map +1 -0
  74. package/lib/node/annotation/text.js +10 -0
  75. package/lib/node/annotation/text.js.map +1 -0
  76. package/lib/node/annotation/view.d.ts +13 -0
  77. package/lib/node/annotation/view.d.ts.map +1 -0
  78. package/lib/node/annotation/view.js +15 -0
  79. package/lib/node/annotation/view.js.map +1 -0
  80. package/lib/node/constants.d.ts +18 -0
  81. package/lib/node/constants.d.ts.map +1 -0
  82. package/lib/node/constants.js +21 -0
  83. package/lib/node/constants.js.map +1 -0
  84. package/lib/node/error/error-handler.d.ts +10 -0
  85. package/lib/node/error/error-handler.d.ts.map +1 -0
  86. package/lib/node/error/error-handler.js +42 -0
  87. package/lib/node/error/error-handler.js.map +1 -0
  88. package/lib/node/error/index.d.ts +2 -0
  89. package/lib/node/error/index.d.ts.map +1 -0
  90. package/lib/node/error/index.js +18 -0
  91. package/lib/node/error/index.js.map +1 -0
  92. package/lib/node/handler/handler-adapter.d.ts +22 -0
  93. package/lib/node/handler/handler-adapter.d.ts.map +1 -0
  94. package/lib/node/handler/handler-adapter.js +122 -0
  95. package/lib/node/handler/handler-adapter.js.map +1 -0
  96. package/lib/node/handler/handler-protocol.d.ts +38 -0
  97. package/lib/node/handler/handler-protocol.d.ts.map +1 -0
  98. package/lib/node/handler/handler-protocol.js +7 -0
  99. package/lib/node/handler/handler-protocol.js.map +1 -0
  100. package/lib/node/handler/index.d.ts +6 -0
  101. package/lib/node/handler/index.d.ts.map +1 -0
  102. package/lib/node/handler/index.js +22 -0
  103. package/lib/node/handler/index.js.map +1 -0
  104. package/lib/node/handler/route-builder.d.ts +29 -0
  105. package/lib/node/handler/route-builder.d.ts.map +1 -0
  106. package/lib/node/handler/route-builder.js +117 -0
  107. package/lib/node/handler/route-builder.js.map +1 -0
  108. package/lib/node/handler/route-metadata-matcher.d.ts +9 -0
  109. package/lib/node/handler/route-metadata-matcher.d.ts.map +1 -0
  110. package/lib/node/handler/route-metadata-matcher.js +60 -0
  111. package/lib/node/handler/route-metadata-matcher.js.map +1 -0
  112. package/lib/node/handler/route-provider.d.ts +11 -0
  113. package/lib/node/handler/route-provider.d.ts.map +1 -0
  114. package/lib/node/handler/route-provider.js +44 -0
  115. package/lib/node/handler/route-provider.js.map +1 -0
  116. package/lib/node/index.d.ts +6 -0
  117. package/lib/node/index.d.ts.map +1 -0
  118. package/lib/node/index.js +22 -0
  119. package/lib/node/index.js.map +1 -0
  120. package/lib/node/module.d.ts +4 -0
  121. package/lib/node/module.d.ts.map +1 -0
  122. package/lib/node/module.js +6 -0
  123. package/lib/node/module.js.map +1 -0
  124. package/lib/node/resolver/index.d.ts +8 -0
  125. package/lib/node/resolver/index.d.ts.map +1 -0
  126. package/lib/node/resolver/index.js +24 -0
  127. package/lib/node/resolver/index.js.map +1 -0
  128. package/lib/node/resolver/method-args-resolver-provider.d.ts +8 -0
  129. package/lib/node/resolver/method-args-resolver-provider.d.ts.map +1 -0
  130. package/lib/node/resolver/method-args-resolver-provider.js +35 -0
  131. package/lib/node/resolver/method-args-resolver-provider.js.map +1 -0
  132. package/lib/node/resolver/method-args-resolver.d.ts +35 -0
  133. package/lib/node/resolver/method-args-resolver.d.ts.map +1 -0
  134. package/lib/node/resolver/method-args-resolver.js +152 -0
  135. package/lib/node/resolver/method-args-resolver.js.map +1 -0
  136. package/lib/node/resolver/resolver-protocol.d.ts +15 -0
  137. package/lib/node/resolver/resolver-protocol.d.ts.map +1 -0
  138. package/lib/node/resolver/resolver-protocol.js +7 -0
  139. package/lib/node/resolver/resolver-protocol.js.map +1 -0
  140. package/lib/node/resolver/response-resolver-provider.d.ts +8 -0
  141. package/lib/node/resolver/response-resolver-provider.d.ts.map +1 -0
  142. package/lib/node/resolver/response-resolver-provider.js +35 -0
  143. package/lib/node/resolver/response-resolver-provider.js.map +1 -0
  144. package/lib/node/resolver/response-resolver.d.ts +14 -0
  145. package/lib/node/resolver/response-resolver.d.ts.map +1 -0
  146. package/lib/node/resolver/response-resolver.js +67 -0
  147. package/lib/node/resolver/response-resolver.js.map +1 -0
  148. package/lib/node/resolver/view-resolver-provider.d.ts +8 -0
  149. package/lib/node/resolver/view-resolver-provider.d.ts.map +1 -0
  150. package/lib/node/resolver/view-resolver-provider.js +35 -0
  151. package/lib/node/resolver/view-resolver-provider.js.map +1 -0
  152. package/lib/node/resolver/view-resolver.d.ts +8 -0
  153. package/lib/node/resolver/view-resolver.d.ts.map +1 -0
  154. package/lib/node/resolver/view-resolver.js +44 -0
  155. package/lib/node/resolver/view-resolver.js.map +1 -0
  156. package/lib/node/view/file-view.d.ts +19 -0
  157. package/lib/node/view/file-view.d.ts.map +1 -0
  158. package/lib/node/view/file-view.js +79 -0
  159. package/lib/node/view/file-view.js.map +1 -0
  160. package/lib/node/view/html-view.d.ts +11 -0
  161. package/lib/node/view/html-view.d.ts.map +1 -0
  162. package/lib/node/view/html-view.js +48 -0
  163. package/lib/node/view/html-view.js.map +1 -0
  164. package/lib/node/view/index.d.ts +7 -0
  165. package/lib/node/view/index.d.ts.map +1 -0
  166. package/lib/node/view/index.js +23 -0
  167. package/lib/node/view/index.js.map +1 -0
  168. package/lib/node/view/json-view-template-renderer.d.ts +6 -0
  169. package/lib/node/view/json-view-template-renderer.d.ts.map +1 -0
  170. package/lib/node/view/json-view-template-renderer.js +39 -0
  171. package/lib/node/view/json-view-template-renderer.js.map +1 -0
  172. package/lib/node/view/json-view.d.ts +11 -0
  173. package/lib/node/view/json-view.d.ts.map +1 -0
  174. package/lib/node/view/json-view.js +39 -0
  175. package/lib/node/view/json-view.js.map +1 -0
  176. package/lib/node/view/text-view.d.ts +10 -0
  177. package/lib/node/view/text-view.d.ts.map +1 -0
  178. package/lib/node/view/text-view.js +32 -0
  179. package/lib/node/view/text-view.js.map +1 -0
  180. package/lib/node/view/view-protocol.d.ts +12 -0
  181. package/lib/node/view/view-protocol.d.ts.map +1 -0
  182. package/lib/node/view/view-protocol.js +6 -0
  183. package/lib/node/view/view-protocol.js.map +1 -0
  184. package/lib/node/view/view-provider.d.ts +8 -0
  185. package/lib/node/view/view-provider.d.ts.map +1 -0
  186. package/lib/node/view/view-provider.js +35 -0
  187. package/lib/node/view/view-provider.js.map +1 -0
  188. package/lib/package.spec.d.ts +1 -0
  189. package/lib/package.spec.d.ts.map +1 -0
  190. package/lib/package.spec.js +4 -0
  191. package/lib/package.spec.js.map +1 -0
  192. package/package.json +47 -0
  193. package/src/common/constants.ts +1 -0
  194. package/src/common/index.ts +1 -0
  195. package/src/node/annotation/body.ts +21 -0
  196. package/src/node/annotation/catch.ts +27 -0
  197. package/src/node/annotation/controller.ts +44 -0
  198. package/src/node/annotation/cookie.ts +41 -0
  199. package/src/node/annotation/file.ts +7 -0
  200. package/src/node/annotation/header.ts +41 -0
  201. package/src/node/annotation/html.ts +7 -0
  202. package/src/node/annotation/index.ts +17 -0
  203. package/src/node/annotation/json.ts +7 -0
  204. package/src/node/annotation/method.ts +61 -0
  205. package/src/node/annotation/param.ts +21 -0
  206. package/src/node/annotation/query.ts +21 -0
  207. package/src/node/annotation/req.ts +23 -0
  208. package/src/node/annotation/res.ts +23 -0
  209. package/src/node/annotation/session.ts +41 -0
  210. package/src/node/annotation/text.ts +7 -0
  211. package/src/node/annotation/view.ts +16 -0
  212. package/src/node/constants.ts +17 -0
  213. package/src/node/error/error-handler.ts +27 -0
  214. package/src/node/error/index.ts +1 -0
  215. package/src/node/handler/handler-adapter.ts +100 -0
  216. package/src/node/handler/handler-protocol.ts +62 -0
  217. package/src/node/handler/index.ts +5 -0
  218. package/src/node/handler/route-builder.ts +119 -0
  219. package/src/node/handler/route-metadata-matcher.ts +44 -0
  220. package/src/node/handler/route-provider.ts +27 -0
  221. package/src/node/index.ts +5 -0
  222. package/src/node/module.ts +4 -0
  223. package/src/node/resolver/index.ts +7 -0
  224. package/src/node/resolver/method-args-resolver-provider.ts +21 -0
  225. package/src/node/resolver/method-args-resolver.ts +119 -0
  226. package/src/node/resolver/resolver-protocol.ts +18 -0
  227. package/src/node/resolver/response-resolver-provider.ts +21 -0
  228. package/src/node/resolver/response-resolver.ts +46 -0
  229. package/src/node/resolver/view-resolver-provider.ts +21 -0
  230. package/src/node/resolver/view-resolver.ts +29 -0
  231. package/src/node/view/file-view.ts +68 -0
  232. package/src/node/view/html-view.ts +34 -0
  233. package/src/node/view/index.ts +6 -0
  234. package/src/node/view/json-view-template-renderer.ts +23 -0
  235. package/src/node/view/json-view.ts +26 -0
  236. package/src/node/view/text-view.ts +23 -0
  237. package/src/node/view/view-protocol.ts +14 -0
  238. package/src/node/view/view-provider.ts +21 -0
  239. package/src/package.spec.ts +4 -0
@@ -0,0 +1,29 @@
1
+ import { ControllerMetadata } from '../annotation/controller';
2
+ import { ErrorType } from '@celljs/core';
3
+ import { PathResolver } from '@celljs/web';
4
+ import { PathRouteMetadata, ErrorRouteMetadata } from './handler-protocol';
5
+ export declare class RouteBuilder {
6
+ protected readonly controllers: any[];
7
+ protected readonly pathResolver: PathResolver;
8
+ build(): Promise<{
9
+ mapping: Map<string, PathRouteMetadata[]>;
10
+ errorMapping: Map<ErrorType, any>;
11
+ }>;
12
+ protected doBuildRouteMap(mapping: Map<string, PathRouteMetadata[]>, targetConstructor: any, controller: any, controllerMetadata: ControllerMetadata): Promise<void>;
13
+ protected doBuildErrorRouteMap(errorMapping: Map<ErrorType, ErrorRouteMetadata>, targetConstructor: any, controller: any, controllerMetadata: ControllerMetadata): Promise<void>;
14
+ protected doRouteMetadata(targetConstructor: any, method: string): {
15
+ requestMetadata: any;
16
+ responseMetadata: any;
17
+ paramMetadata: any;
18
+ bodyMetadata: any;
19
+ queryMetadata: any;
20
+ requestHeaderMetadata: any;
21
+ responseHeaderMetadata: any;
22
+ requestCookieMetadata: any;
23
+ responseCookieMetadata: any;
24
+ requestSessionMetadata: any;
25
+ responseSessionMetadata: any;
26
+ viewMetadata: any;
27
+ };
28
+ }
29
+ //# sourceMappingURL=route-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-builder.d.ts","sourceRoot":"","sources":["../../../src/node/handler/route-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG1E,OAAO,EAAkD,SAAS,EAAkC,MAAM,cAAc,CAAC;AACzH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,qBACa,YAAY;IAGrB,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,CAAM;IAG3C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAExC,KAAK;;;;cAkBK,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,kBAAkB,EAAE,kBAAkB;cA6C1I,oBAAoB,CAAC,YAAY,EAAE,GAAG,CAAC,SAAS,EAAE,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,kBAAkB,EAAE,kBAAkB;IAmBtK,SAAS,CAAC,eAAe,CAAC,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM;;;;;;;;;;;;;;CAmBnE"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RouteBuilder = void 0;
13
+ const controller_1 = require("../annotation/controller");
14
+ const constants_1 = require("../constants");
15
+ const core_1 = require("@celljs/core");
16
+ const web_1 = require("@celljs/web");
17
+ let RouteBuilder = class RouteBuilder {
18
+ constructor() {
19
+ this.controllers = [];
20
+ }
21
+ async build() {
22
+ const mapping = new Map();
23
+ const errorMapping = new Map();
24
+ for (const controller of this.controllers) {
25
+ const targetConstructor = (0, core_1.getTargetClass)(controller);
26
+ const controllerMetadata = Reflect.getOwnMetadata(constants_1.METADATA_KEY.controller, targetConstructor);
27
+ await this.doBuildRouteMap(mapping, targetConstructor, controller, controllerMetadata);
28
+ await this.doBuildErrorRouteMap(errorMapping, targetConstructor, controller, controllerMetadata);
29
+ }
30
+ return {
31
+ mapping,
32
+ errorMapping
33
+ };
34
+ }
35
+ async doBuildRouteMap(mapping, targetConstructor, controller, controllerMetadata) {
36
+ const methodMetadata = (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerMethod, targetConstructor);
37
+ for (const metadata of methodMetadata) {
38
+ const routeOptions = (typeof metadata.options === 'string' || metadata.options instanceof RegExp) ? { path: metadata.options } : metadata.options;
39
+ const m = Object.assign({}, metadata);
40
+ const method = m.method;
41
+ m.target = controller;
42
+ let paths = mapping.get(method);
43
+ if (!paths) {
44
+ paths = [];
45
+ mapping.set(method, paths);
46
+ }
47
+ let path = routeOptions.path;
48
+ if (typeof path === 'string') {
49
+ path = await this.pathResolver.resolve(controllerMetadata.path, path);
50
+ }
51
+ else if (path instanceof RegExp) {
52
+ if (controllerMetadata.path) {
53
+ path = new RegExp(await this.pathResolver.resolve(controllerMetadata.path, path.source));
54
+ }
55
+ }
56
+ const routeMetadata = Object.assign({ path,
57
+ controllerMetadata, methodMetadata: m }, this.doRouteMetadata(targetConstructor, m.key.toString()));
58
+ paths.push(routeMetadata);
59
+ }
60
+ for (const [method, paths] of mapping) {
61
+ const sorted = core_1.Prioritizeable.prioritizeAllSync(paths, value => {
62
+ if (value.path instanceof RegExp) {
63
+ return Number.MIN_SAFE_INTEGER + value.path.toString().length;
64
+ }
65
+ else if (value.path.includes('*')) {
66
+ return value.path.replace('*', '').length;
67
+ }
68
+ return value.path.length + 1;
69
+ }).map(({ value }) => value);
70
+ mapping.set(method, sorted);
71
+ }
72
+ }
73
+ async doBuildErrorRouteMap(errorMapping, targetConstructor, controller, controllerMetadata) {
74
+ const methodMetadata = (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerCatch, targetConstructor);
75
+ for (const metadata of methodMetadata) {
76
+ const m = Object.assign({}, metadata);
77
+ m.target = controller;
78
+ for (const errorType of metadata.errorTypes) {
79
+ errorMapping.set(errorType, Object.assign({ errorType,
80
+ controllerMetadata, methodMetadata: m }, this.doRouteMetadata(targetConstructor, m.key.toString())));
81
+ }
82
+ }
83
+ }
84
+ doRouteMetadata(targetConstructor, method) {
85
+ const viewMetadata = (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerView, targetConstructor, method);
86
+ const requestMetadata = (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerRequest, targetConstructor, method);
87
+ const responseMetadata = (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerResponse, targetConstructor, method);
88
+ return {
89
+ requestMetadata: requestMetadata[0],
90
+ responseMetadata: responseMetadata[0],
91
+ paramMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerParam, targetConstructor, method),
92
+ bodyMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerBody, targetConstructor, method),
93
+ queryMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerQuery, targetConstructor, method),
94
+ requestHeaderMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerRequestHeader, targetConstructor, method),
95
+ responseHeaderMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerResponseHeader, targetConstructor, method),
96
+ requestCookieMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerRequestCookie, targetConstructor, method),
97
+ responseCookieMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerResponseCookie, targetConstructor, method),
98
+ requestSessionMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerRequestSession, targetConstructor, method),
99
+ responseSessionMetadata: (0, core_1.getOwnMetadata)(constants_1.METADATA_KEY.controllerResponseSession, targetConstructor, method),
100
+ viewMetadata: viewMetadata.length ? viewMetadata[0] : {}
101
+ };
102
+ }
103
+ };
104
+ __decorate([
105
+ (0, core_1.Autowired)(controller_1.CONTROLLER),
106
+ (0, core_1.Optional)(),
107
+ __metadata("design:type", Array)
108
+ ], RouteBuilder.prototype, "controllers", void 0);
109
+ __decorate([
110
+ (0, core_1.Autowired)(web_1.PathResolver),
111
+ __metadata("design:type", Object)
112
+ ], RouteBuilder.prototype, "pathResolver", void 0);
113
+ RouteBuilder = __decorate([
114
+ (0, core_1.Component)()
115
+ ], RouteBuilder);
116
+ exports.RouteBuilder = RouteBuilder;
117
+ //# sourceMappingURL=route-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-builder.js","sourceRoot":"","sources":["../../../src/node/handler/route-builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { RouteProvider, RouteMetadata, RouteMetadataMatcher } from './handler-protocol';
2
+ import { RequestMatcher } from '@celljs/web/lib/node';
3
+ export declare const PATH_PARMAS_ATTR = "pathParams";
4
+ export declare class RouteMetadataMatcherImpl implements RouteMetadataMatcher {
5
+ protected readonly routeProvider: RouteProvider;
6
+ protected readonly requestMatcher: RequestMatcher;
7
+ match(error?: Error): Promise<RouteMetadata | undefined>;
8
+ }
9
+ //# sourceMappingURL=route-metadata-matcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-metadata-matcher.d.ts","sourceRoot":"","sources":["../../../src/node/handler/route-metadata-matcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAW,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE/D,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAE7C,qBACa,wBAAyB,YAAW,oBAAoB;IAGjE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAGhD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAE5C,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;CA4BjE"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RouteMetadataMatcherImpl = exports.PATH_PARMAS_ATTR = void 0;
13
+ const core_1 = require("@celljs/core");
14
+ const handler_protocol_1 = require("./handler-protocol");
15
+ const node_1 = require("@celljs/web/lib/node");
16
+ exports.PATH_PARMAS_ATTR = 'pathParams';
17
+ let RouteMetadataMatcherImpl = class RouteMetadataMatcherImpl {
18
+ async match(error) {
19
+ const route = await this.routeProvider.provide();
20
+ if (error) {
21
+ const metadata = route.errorMapping.get(error.constructor);
22
+ if (metadata) {
23
+ return metadata;
24
+ }
25
+ else {
26
+ for (const entry of route.errorMapping) {
27
+ if (error instanceof entry[0]) {
28
+ return entry[1];
29
+ }
30
+ }
31
+ }
32
+ }
33
+ else {
34
+ const request = node_1.Context.getRequest();
35
+ const paths = route.mapping.get(request.method.toUpperCase());
36
+ if (paths) {
37
+ for (const pathRouteMetadata of paths) {
38
+ const pathParams = await this.requestMatcher.match(pathRouteMetadata.path);
39
+ if (pathParams) {
40
+ node_1.Context.setAttr(exports.PATH_PARMAS_ATTR, pathParams);
41
+ return pathRouteMetadata;
42
+ }
43
+ }
44
+ }
45
+ }
46
+ }
47
+ };
48
+ __decorate([
49
+ (0, core_1.Autowired)(handler_protocol_1.RouteProvider),
50
+ __metadata("design:type", Object)
51
+ ], RouteMetadataMatcherImpl.prototype, "routeProvider", void 0);
52
+ __decorate([
53
+ (0, core_1.Autowired)(node_1.RequestMatcher),
54
+ __metadata("design:type", Object)
55
+ ], RouteMetadataMatcherImpl.prototype, "requestMatcher", void 0);
56
+ RouteMetadataMatcherImpl = __decorate([
57
+ (0, core_1.Component)(handler_protocol_1.RouteMetadataMatcher)
58
+ ], RouteMetadataMatcherImpl);
59
+ exports.RouteMetadataMatcherImpl = RouteMetadataMatcherImpl;
60
+ //# sourceMappingURL=route-metadata-matcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-metadata-matcher.js","sourceRoot":"","sources":["../../../src/node/handler/route-metadata-matcher.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAoD;AACpD,yDAAwF;AACxF,+CAA+D;AAElD,QAAA,gBAAgB,GAAG,YAAY,CAAC;AAGtC,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAQjC,KAAK,CAAC,KAAK,CAAC,KAAa;QACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACjD,IAAI,KAAK,EAAE;YACP,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC3D,IAAI,QAAQ,EAAE;gBACV,OAAO,QAAQ,CAAC;aACnB;iBAAM;gBACH,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,YAAY,EAAE;oBACpC,IAAI,KAAK,YAAiB,KAAK,CAAC,CAAC,CAAC,EAAE;wBAChC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;qBACnB;iBACJ;aACJ;SACJ;aAAM;YACH,MAAM,OAAO,GAAG,cAAO,CAAC,UAAU,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAO,CAAC,WAAW,EAAE,CAAC,CAAC;YAC/D,IAAI,KAAK,EAAE;gBACP,KAAK,MAAM,iBAAiB,IAAI,KAAK,EAAE;oBACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBAC3E,IAAI,UAAU,EAAE;wBACZ,cAAO,CAAC,OAAO,CAAC,wBAAgB,EAAE,UAAU,CAAC,CAAC;wBAC9C,OAAO,iBAAiB,CAAC;qBAC5B;iBACJ;aACJ;SACJ;IACL,CAAC;CAEJ,CAAA;AAlCG;IAAC,IAAA,gBAAS,EAAC,gCAAa,CAAC;;+DACuB;AAEhD;IAAC,IAAA,gBAAS,EAAC,qBAAc,CAAC;;gEACwB;AANzC,wBAAwB;IADpC,IAAA,gBAAS,EAAC,uCAAoB,CAAC;GACnB,wBAAwB,CAoCpC;AApCY,4DAAwB"}
@@ -0,0 +1,11 @@
1
+ import { Deferred } from '@celljs/core';
2
+ import { Route, RouteProvider } from './handler-protocol';
3
+ import { RouteBuilder } from './route-builder';
4
+ export declare class RouteProviderImpl implements RouteProvider {
5
+ protected route: Route;
6
+ protected routeDeferred: Deferred<Route>;
7
+ protected readonly routeBuilder: RouteBuilder;
8
+ protected init(): void;
9
+ provide(): Promise<Route>;
10
+ }
11
+ //# sourceMappingURL=route-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-provider.d.ts","sourceRoot":"","sources":["../../../src/node/handler/route-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,QAAQ,EAAiB,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,qBACa,iBAAkB,YAAW,aAAa;IAEnD,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IAEvB,SAAS,CAAC,aAAa,kBAAyB;IAGhD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAG9C,SAAS,CAAC,IAAI;IAOd,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC;CAI5B"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RouteProviderImpl = void 0;
13
+ const core_1 = require("@celljs/core");
14
+ const handler_protocol_1 = require("./handler-protocol");
15
+ const route_builder_1 = require("./route-builder");
16
+ let RouteProviderImpl = class RouteProviderImpl {
17
+ constructor() {
18
+ this.routeDeferred = new core_1.Deferred();
19
+ }
20
+ init() {
21
+ this.routeBuilder.build().then(route => {
22
+ this.route = route;
23
+ this.routeDeferred.resolve(route);
24
+ });
25
+ }
26
+ provide() {
27
+ return this.routeDeferred.promise;
28
+ }
29
+ };
30
+ __decorate([
31
+ (0, core_1.Autowired)(route_builder_1.RouteBuilder),
32
+ __metadata("design:type", route_builder_1.RouteBuilder)
33
+ ], RouteProviderImpl.prototype, "routeBuilder", void 0);
34
+ __decorate([
35
+ (0, core_1.PostConstruct)(),
36
+ __metadata("design:type", Function),
37
+ __metadata("design:paramtypes", []),
38
+ __metadata("design:returntype", void 0)
39
+ ], RouteProviderImpl.prototype, "init", null);
40
+ RouteProviderImpl = __decorate([
41
+ (0, core_1.Component)(handler_protocol_1.RouteProvider)
42
+ ], RouteProviderImpl);
43
+ exports.RouteProviderImpl = RouteProviderImpl;
44
+ //# sourceMappingURL=route-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-provider.js","sourceRoot":"","sources":["../../../src/node/handler/route-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA6E;AAC7E,yDAA0D;AAC1D,mDAA+C;AAGxC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAAvB;QAIO,kBAAa,GAAG,IAAI,eAAQ,EAAS,CAAC;IAiBpD,CAAC;IAXa,IAAI;QACV,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;IACtC,CAAC;CAEJ,CAAA;AAfG;IAAC,IAAA,gBAAS,EAAC,4BAAY,CAAC;8BACS,4BAAY;uDAAC;AAE9C;IAAC,IAAA,oBAAa,GAAE;;;;6CAMf;AAfQ,iBAAiB;IAD7B,IAAA,gBAAS,EAAC,gCAAa,CAAC;GACZ,iBAAiB,CAqB7B;AArBY,8CAAiB"}
@@ -0,0 +1,6 @@
1
+ export * from './annotation';
2
+ export * from './handler';
3
+ export * from './resolver';
4
+ export * from './view';
5
+ export * from './error';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./annotation"), exports);
18
+ __exportStar(require("./handler"), exports);
19
+ __exportStar(require("./resolver"), exports);
20
+ __exportStar(require("./view"), exports);
21
+ __exportStar(require("./error"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,4CAA0B;AAC1B,6CAA2B;AAC3B,yCAAuB;AACvB,0CAAwB"}
@@ -0,0 +1,4 @@
1
+ import './index';
2
+ declare const _default: import("inversify/lib/interfaces/interfaces").interfaces.ContainerModule;
3
+ export default _default;
4
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/node/module.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,CAAC;;AAEjB,wBAA0B"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@celljs/core");
4
+ require("./index");
5
+ exports.default = (0, core_1.autoBind)();
6
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/node/module.ts"],"names":[],"mappings":";;AAAA,uCAAwC;AACxC,mBAAiB;AAEjB,kBAAe,IAAA,eAAQ,GAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ export * from './response-resolver';
2
+ export * from './method-args-resolver';
3
+ export * from './method-args-resolver-provider';
4
+ export * from './resolver-protocol';
5
+ export * from './response-resolver-provider';
6
+ export * from './view-resolver';
7
+ export * from './view-resolver-provider';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/node/resolver/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./response-resolver"), exports);
18
+ __exportStar(require("./method-args-resolver"), exports);
19
+ __exportStar(require("./method-args-resolver-provider"), exports);
20
+ __exportStar(require("./resolver-protocol"), exports);
21
+ __exportStar(require("./response-resolver-provider"), exports);
22
+ __exportStar(require("./view-resolver"), exports);
23
+ __exportStar(require("./view-resolver-provider"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/node/resolver/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,yDAAuC;AACvC,kEAAgD;AAChD,sDAAoC;AACpC,+DAA6C;AAC7C,kDAAgC;AAChC,2DAAyC"}
@@ -0,0 +1,8 @@
1
+ import { MethodArgsResolver } from './resolver-protocol';
2
+ export declare class MethodArgsResolverProvider {
3
+ protected readonly methodArgsResolvers: MethodArgsResolver[];
4
+ protected prioritized: MethodArgsResolver[];
5
+ constructor(methodArgsResolvers: MethodArgsResolver[]);
6
+ provide(): MethodArgsResolver[];
7
+ }
8
+ //# sourceMappingURL=method-args-resolver-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-args-resolver-provider.d.ts","sourceRoot":"","sources":["../../../src/node/resolver/method-args-resolver-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,qBACa,0BAA0B;IAM/B,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE;IAJhE,SAAS,CAAC,WAAW,EAAE,kBAAkB,EAAE,CAAC;gBAIrB,mBAAmB,EAAE,kBAAkB,EAAE;IAGhE,OAAO,IAAI,kBAAkB,EAAE;CAOlC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.MethodArgsResolverProvider = void 0;
16
+ const core_1 = require("@celljs/core");
17
+ const resolver_protocol_1 = require("./resolver-protocol");
18
+ let MethodArgsResolverProvider = class MethodArgsResolverProvider {
19
+ constructor(methodArgsResolvers) {
20
+ this.methodArgsResolvers = methodArgsResolvers;
21
+ }
22
+ provide() {
23
+ if (!this.prioritized) {
24
+ this.prioritized = core_1.Prioritizeable.prioritizeAllSync(this.methodArgsResolvers).map(c => c.value);
25
+ }
26
+ return this.prioritized;
27
+ }
28
+ };
29
+ MethodArgsResolverProvider = __decorate([
30
+ (0, core_1.Component)(),
31
+ __param(0, (0, core_1.Autowired)(resolver_protocol_1.MethodArgsResolver)),
32
+ __metadata("design:paramtypes", [Array])
33
+ ], MethodArgsResolverProvider);
34
+ exports.MethodArgsResolverProvider = MethodArgsResolverProvider;
35
+ //# sourceMappingURL=method-args-resolver-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-args-resolver-provider.js","sourceRoot":"","sources":["../../../src/node/resolver/method-args-resolver-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAAoE;AACpE,2DAAyD;AAGlD,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAInC,YAEuB,mBAAyC;QAAzC,wBAAmB,GAAnB,mBAAmB,CAAsB;IAC5D,CAAC;IAEL,OAAO;QACH,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB,IAAI,CAAC,WAAW,GAAG,qBAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SACnG;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CAEJ,CAAA;AAhBY,0BAA0B;IADtC,IAAA,gBAAS,GAAE;IAMH,WAAA,IAAA,gBAAS,EAAC,sCAAkB,CAAC,CAAA;;GALzB,0BAA0B,CAgBtC;AAhBY,gEAA0B"}
@@ -0,0 +1,35 @@
1
+ import { MethodArgsResolver } from './resolver-protocol';
2
+ import { RouteMetadata } from '../handler';
3
+ export declare class BodyMethodArgsResolver implements MethodArgsResolver {
4
+ readonly priority = 100;
5
+ resolve(metadata: any, args: any[]): Promise<void>;
6
+ }
7
+ export declare class HeaderMethodArgsResolver implements MethodArgsResolver {
8
+ readonly priority = 200;
9
+ resolve(metadata: any, args: any[]): Promise<void>;
10
+ }
11
+ export declare class ParamMethodArgsResolver implements MethodArgsResolver {
12
+ readonly priority = 300;
13
+ resolve(metadata: any, args: any[]): Promise<void>;
14
+ }
15
+ export declare class QueryMethodArgsResolver implements MethodArgsResolver {
16
+ readonly priority = 400;
17
+ resolve(metadata: any, args: any[]): Promise<void>;
18
+ }
19
+ export declare class CookieMethodArgsResolver implements MethodArgsResolver {
20
+ readonly priority = 500;
21
+ resolve(metadata: any, args: any[]): Promise<void>;
22
+ }
23
+ export declare class SessionMethodArgsResolver implements MethodArgsResolver {
24
+ readonly priority = 600;
25
+ resolve(metadata: any, args: any[]): Promise<void>;
26
+ }
27
+ export declare class RequestMethodArgsResolver implements MethodArgsResolver {
28
+ readonly priority = 700;
29
+ resolve(metadata: RouteMetadata, args: any[]): Promise<void>;
30
+ }
31
+ export declare class ResponseMethodArgsResolver implements MethodArgsResolver {
32
+ readonly priority = 800;
33
+ resolve(metadata: RouteMetadata, args: any[]): Promise<void>;
34
+ }
35
+ //# sourceMappingURL=method-args-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-args-resolver.d.ts","sourceRoot":"","sources":["../../../src/node/resolver/method-args-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAWzD,OAAO,EAAmB,aAAa,EAAC,MAAM,YAAY,CAAC;AAE3D,qBACa,sBAAuB,YAAW,kBAAkB;IAC7D,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS3D;AAED,qBACa,wBAAyB,YAAW,kBAAkB;IAC/D,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS3D;AAED,qBACa,uBAAwB,YAAW,kBAAkB;IAC9D,QAAQ,CAAC,QAAQ,OAAO;IAElB,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS3D;AAED,qBACa,uBAAwB,YAAW,kBAAkB;IAC9D,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS3D;AAED,qBACa,wBAAyB,YAAW,kBAAkB;IAC/D,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS3D;AAED,qBACa,yBAA0B,YAAW,kBAAkB;IAChE,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS3D;AAED,qBACa,yBAA0B,YAAW,kBAAkB;IAChE,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAMrE;AAED,qBACa,0BAA2B,YAAW,kBAAkB;IACjE,QAAQ,CAAC,QAAQ,OAAO;IAClB,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAMrE"}