@trapi/metadata 0.4.1 → 1.0.0-alpha.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.
Files changed (301) hide show
  1. package/README.md +36 -72
  2. package/dist/cache/driver.d.ts +6 -6
  3. package/dist/cache/driver.d.ts.map +1 -1
  4. package/dist/cache/driver.js +27 -45
  5. package/dist/cache/driver.js.map +1 -1
  6. package/dist/cache/type.d.ts +31 -32
  7. package/dist/cache/type.d.ts.map +1 -1
  8. package/dist/cache/utils.d.ts +3 -3
  9. package/dist/cache/utils.d.ts.map +1 -1
  10. package/dist/cache/utils.js +29 -24
  11. package/dist/cache/utils.js.map +1 -1
  12. package/dist/config/index.d.ts +1 -1
  13. package/dist/config/index.js +1 -1
  14. package/dist/config/type.d.ts +37 -0
  15. package/dist/config/type.d.ts.map +1 -0
  16. package/dist/config/type.js +9 -0
  17. package/dist/config/type.js.map +1 -0
  18. package/dist/decorator/constants.d.ts +40 -0
  19. package/dist/decorator/constants.d.ts.map +1 -0
  20. package/dist/decorator/constants.js +52 -0
  21. package/dist/decorator/constants.js.map +1 -0
  22. package/dist/decorator/index.d.ts +7 -0
  23. package/dist/decorator/index.d.ts.map +1 -0
  24. package/dist/decorator/index.js +29 -0
  25. package/dist/decorator/index.js.map +1 -0
  26. package/dist/decorator/preset/index.d.ts +3 -0
  27. package/dist/decorator/preset/index.d.ts.map +1 -0
  28. package/dist/decorator/preset/index.js +25 -0
  29. package/dist/decorator/preset/index.js.map +1 -0
  30. package/dist/decorator/preset/type.d.ts +6 -0
  31. package/dist/decorator/preset/type.d.ts.map +1 -0
  32. package/dist/decorator/preset/type.js +9 -0
  33. package/dist/decorator/preset/type.js.map +1 -0
  34. package/dist/decorator/preset/utils/check.d.ts +3 -0
  35. package/dist/decorator/preset/utils/check.d.ts.map +1 -0
  36. package/dist/decorator/preset/utils/check.js +18 -0
  37. package/dist/decorator/preset/utils/check.js.map +1 -0
  38. package/dist/decorator/preset/utils/index.d.ts +4 -0
  39. package/dist/decorator/preset/utils/index.d.ts.map +1 -0
  40. package/dist/decorator/preset/utils/index.js +26 -0
  41. package/dist/decorator/preset/utils/index.js.map +1 -0
  42. package/dist/decorator/preset/utils/load.d.ts +3 -0
  43. package/dist/decorator/preset/utils/load.d.ts.map +1 -0
  44. package/dist/decorator/preset/utils/load.js +48 -0
  45. package/dist/decorator/preset/utils/load.js.map +1 -0
  46. package/dist/decorator/preset/utils/normalize.d.ts +2 -0
  47. package/dist/decorator/preset/utils/normalize.d.ts.map +1 -0
  48. package/dist/decorator/preset/utils/normalize.js +27 -0
  49. package/dist/decorator/preset/utils/normalize.js.map +1 -0
  50. package/dist/decorator/property-manager/index.d.ts +3 -0
  51. package/dist/decorator/property-manager/index.d.ts.map +1 -0
  52. package/dist/decorator/property-manager/index.js +25 -0
  53. package/dist/decorator/property-manager/index.js.map +1 -0
  54. package/dist/decorator/property-manager/module.d.ts +19 -0
  55. package/dist/decorator/property-manager/module.d.ts.map +1 -0
  56. package/dist/decorator/property-manager/module.js +65 -0
  57. package/dist/decorator/property-manager/module.js.map +1 -0
  58. package/dist/decorator/property-manager/utils.d.ts +7 -0
  59. package/dist/decorator/property-manager/utils.d.ts.map +1 -0
  60. package/dist/decorator/property-manager/utils.js +121 -0
  61. package/dist/decorator/property-manager/utils.js.map +1 -0
  62. package/dist/decorator/resolver/index.d.ts +3 -0
  63. package/dist/decorator/resolver/index.d.ts.map +1 -0
  64. package/dist/decorator/resolver/index.js +25 -0
  65. package/dist/decorator/resolver/index.js.map +1 -0
  66. package/dist/decorator/resolver/module.d.ts +27 -0
  67. package/dist/decorator/resolver/module.d.ts.map +1 -0
  68. package/dist/decorator/resolver/module.js +72 -0
  69. package/dist/decorator/resolver/module.js.map +1 -0
  70. package/dist/decorator/resolver/type.d.ts +10 -0
  71. package/dist/decorator/resolver/type.d.ts.map +1 -0
  72. package/dist/decorator/resolver/type.js +3 -0
  73. package/dist/decorator/resolver/type.js.map +1 -0
  74. package/dist/decorator/sets/class.d.ts +7 -0
  75. package/dist/decorator/sets/class.d.ts.map +1 -0
  76. package/dist/decorator/sets/class.js +9 -0
  77. package/dist/decorator/sets/class.js.map +1 -0
  78. package/dist/decorator/sets/index.d.ts +8 -0
  79. package/dist/decorator/sets/index.d.ts.map +1 -0
  80. package/dist/decorator/sets/index.js +29 -0
  81. package/dist/decorator/sets/index.js.map +1 -0
  82. package/dist/decorator/sets/method.d.ts +14 -0
  83. package/dist/decorator/sets/method.d.ts.map +1 -0
  84. package/dist/decorator/sets/method.js +9 -0
  85. package/dist/decorator/sets/method.js.map +1 -0
  86. package/dist/decorator/sets/mixed.d.ts +8 -0
  87. package/dist/decorator/sets/mixed.d.ts.map +1 -0
  88. package/dist/decorator/sets/mixed.js +9 -0
  89. package/dist/decorator/sets/mixed.js.map +1 -0
  90. package/dist/decorator/sets/parameter.d.ts +21 -0
  91. package/dist/decorator/sets/parameter.d.ts.map +1 -0
  92. package/dist/decorator/sets/parameter.js +9 -0
  93. package/dist/decorator/sets/parameter.js.map +1 -0
  94. package/dist/decorator/sets/request.d.ts +6 -0
  95. package/dist/decorator/sets/request.d.ts.map +1 -0
  96. package/dist/decorator/sets/request.js +9 -0
  97. package/dist/decorator/sets/request.js.map +1 -0
  98. package/dist/decorator/sets/response.d.ts +16 -0
  99. package/dist/decorator/sets/response.d.ts.map +1 -0
  100. package/dist/decorator/sets/response.js +9 -0
  101. package/dist/decorator/sets/response.js.map +1 -0
  102. package/dist/decorator/sets/type.d.ts +4 -0
  103. package/dist/decorator/sets/type.d.ts.map +1 -0
  104. package/dist/decorator/sets/type.js +3 -0
  105. package/dist/decorator/sets/type.js.map +1 -0
  106. package/dist/decorator/type.d.ts +39 -0
  107. package/dist/decorator/type.d.ts.map +1 -0
  108. package/dist/decorator/type.js +9 -0
  109. package/dist/decorator/type.js.map +1 -0
  110. package/dist/error/base.d.ts +3 -0
  111. package/dist/error/base.d.ts.map +1 -0
  112. package/dist/error/base.js +13 -0
  113. package/dist/error/base.js.map +1 -0
  114. package/dist/error/index.d.ts +3 -0
  115. package/dist/error/index.d.ts.map +1 -0
  116. package/dist/{errors → error}/index.js +1 -0
  117. package/dist/error/index.js.map +1 -0
  118. package/dist/error/parameter-invalid.d.ts +4 -0
  119. package/dist/error/parameter-invalid.d.ts.map +1 -0
  120. package/dist/{errors → error}/parameter-invalid.js +2 -1
  121. package/dist/error/parameter-invalid.js.map +1 -0
  122. package/dist/generator/{endpoint.d.ts → abstract.d.ts} +9 -8
  123. package/dist/generator/abstract.d.ts.map +1 -0
  124. package/dist/generator/{endpoint.js → abstract.js} +26 -25
  125. package/dist/generator/abstract.js.map +1 -0
  126. package/dist/generator/controller/index.d.ts +3 -0
  127. package/dist/generator/controller/index.d.ts.map +1 -0
  128. package/dist/generator/controller/index.js +25 -0
  129. package/dist/generator/controller/index.js.map +1 -0
  130. package/dist/generator/controller/module.d.ts +13 -0
  131. package/dist/generator/controller/module.d.ts.map +1 -0
  132. package/dist/generator/{controller.js → controller/module.js} +7 -6
  133. package/dist/generator/controller/module.js.map +1 -0
  134. package/dist/generator/controller/type.d.ts +42 -0
  135. package/dist/generator/controller/type.d.ts.map +1 -0
  136. package/dist/generator/controller/type.js +3 -0
  137. package/dist/generator/controller/type.js.map +1 -0
  138. package/dist/generator/index.d.ts +3 -3
  139. package/dist/generator/index.d.ts.map +1 -1
  140. package/dist/generator/index.js +3 -3
  141. package/dist/generator/index.js.map +1 -1
  142. package/dist/generator/metadata/index.d.ts +3 -0
  143. package/dist/generator/metadata/index.d.ts.map +1 -0
  144. package/dist/generator/metadata/index.js +25 -0
  145. package/dist/generator/metadata/index.js.map +1 -0
  146. package/dist/generator/{module.d.ts → metadata/module.d.ts} +10 -9
  147. package/dist/generator/metadata/module.d.ts.map +1 -0
  148. package/dist/generator/{module.js → metadata/module.js} +22 -39
  149. package/dist/generator/metadata/module.js.map +1 -0
  150. package/dist/generator/metadata/type.d.ts +25 -0
  151. package/dist/generator/metadata/type.d.ts.map +1 -0
  152. package/dist/generator/metadata/type.js +3 -0
  153. package/dist/generator/metadata/type.js.map +1 -0
  154. package/dist/generator/method/constants.d.ts +11 -0
  155. package/dist/generator/method/constants.d.ts.map +1 -0
  156. package/dist/generator/method/constants.js +21 -0
  157. package/dist/generator/method/constants.js.map +1 -0
  158. package/dist/generator/method/index.d.ts +4 -0
  159. package/dist/generator/method/index.d.ts.map +1 -0
  160. package/dist/generator/method/index.js +26 -0
  161. package/dist/generator/method/index.js.map +1 -0
  162. package/dist/generator/{method.d.ts → method/module.d.ts} +6 -6
  163. package/dist/generator/method/module.d.ts.map +1 -0
  164. package/dist/generator/{method.js → method/module.js} +37 -33
  165. package/dist/generator/method/module.js.map +1 -0
  166. package/dist/generator/method/type.d.ts +30 -0
  167. package/dist/generator/method/type.d.ts.map +1 -0
  168. package/dist/generator/method/type.js +9 -0
  169. package/dist/generator/method/type.js.map +1 -0
  170. package/dist/generator/parameter/index.d.ts +4 -0
  171. package/dist/generator/parameter/index.d.ts.map +1 -0
  172. package/dist/generator/parameter/index.js +26 -0
  173. package/dist/generator/parameter/index.js.map +1 -0
  174. package/dist/generator/{parameter.d.ts → parameter/module.d.ts} +4 -4
  175. package/dist/generator/parameter/module.d.ts.map +1 -0
  176. package/dist/generator/{parameter.js → parameter/module.js} +70 -63
  177. package/dist/generator/parameter/module.js.map +1 -0
  178. package/dist/generator/parameter/type.d.ts +22 -0
  179. package/dist/generator/parameter/type.d.ts.map +1 -0
  180. package/dist/generator/parameter/type.js +9 -0
  181. package/dist/generator/parameter/type.js.map +1 -0
  182. package/dist/generator/parameter/validator.d.ts +4 -0
  183. package/dist/generator/parameter/validator.d.ts.map +1 -0
  184. package/dist/generator/parameter/validator.js +130 -0
  185. package/dist/generator/parameter/validator.js.map +1 -0
  186. package/dist/generator/type.d.ts +16 -0
  187. package/dist/generator/type.d.ts.map +1 -0
  188. package/dist/generator/type.js +9 -0
  189. package/dist/generator/type.js.map +1 -0
  190. package/dist/index.d.ts +5 -2
  191. package/dist/index.d.ts.map +1 -1
  192. package/dist/index.js +5 -2
  193. package/dist/index.js.map +1 -1
  194. package/dist/module.d.ts +4 -3
  195. package/dist/module.d.ts.map +1 -1
  196. package/dist/module.js +20 -2
  197. package/dist/module.js.map +1 -1
  198. package/dist/resolver/error.d.ts +8 -0
  199. package/dist/resolver/error.d.ts.map +1 -0
  200. package/dist/resolver/error.js +41 -0
  201. package/dist/resolver/error.js.map +1 -0
  202. package/dist/resolver/index.d.ts +4 -0
  203. package/dist/resolver/index.d.ts.map +1 -0
  204. package/dist/resolver/index.js +26 -0
  205. package/dist/resolver/index.js.map +1 -0
  206. package/dist/resolver/module.d.ts +51 -0
  207. package/dist/resolver/module.d.ts.map +1 -0
  208. package/dist/resolver/module.js +1092 -0
  209. package/dist/resolver/module.js.map +1 -0
  210. package/dist/resolver/type.d.ts +126 -0
  211. package/dist/resolver/type.d.ts.map +1 -0
  212. package/dist/resolver/type.js +54 -0
  213. package/dist/resolver/type.js.map +1 -0
  214. package/dist/type.d.ts +0 -149
  215. package/dist/type.d.ts.map +1 -1
  216. package/dist/type.js +0 -6
  217. package/dist/type.js.map +1 -1
  218. package/dist/utils/index.d.ts +6 -2
  219. package/dist/utils/index.d.ts.map +1 -1
  220. package/dist/utils/index.js +6 -2
  221. package/dist/utils/index.js.map +1 -1
  222. package/dist/utils/initializer.d.ts +5 -0
  223. package/dist/utils/initializer.d.ts.map +1 -0
  224. package/dist/utils/initializer.js +131 -0
  225. package/dist/utils/initializer.js.map +1 -0
  226. package/dist/utils/js-doc/constants.d.ts +19 -0
  227. package/dist/utils/js-doc/constants.d.ts.map +1 -0
  228. package/dist/utils/js-doc/constants.js +30 -0
  229. package/dist/utils/js-doc/constants.js.map +1 -0
  230. package/dist/utils/js-doc/index.d.ts +3 -0
  231. package/dist/utils/js-doc/index.d.ts.map +1 -0
  232. package/dist/utils/js-doc/index.js +25 -0
  233. package/dist/utils/js-doc/index.js.map +1 -0
  234. package/dist/utils/js-doc/module.d.ts +9 -0
  235. package/dist/utils/js-doc/module.d.ts.map +1 -0
  236. package/dist/utils/js-doc/module.js +103 -0
  237. package/dist/utils/js-doc/module.js.map +1 -0
  238. package/dist/utils/node/index.d.ts +3 -0
  239. package/dist/utils/node/index.d.ts.map +1 -0
  240. package/dist/utils/node/index.js +25 -0
  241. package/dist/utils/node/index.js.map +1 -0
  242. package/dist/utils/node/module.d.ts +10 -0
  243. package/dist/utils/node/module.d.ts.map +1 -0
  244. package/dist/utils/node/module.js +52 -0
  245. package/dist/utils/node/module.js.map +1 -0
  246. package/dist/utils/node/type.d.ts +6 -0
  247. package/dist/utils/node/type.d.ts.map +1 -0
  248. package/dist/utils/node/type.js +9 -0
  249. package/dist/utils/node/type.js.map +1 -0
  250. package/dist/utils/{path.d.ts → path-normalize.d.ts} +1 -1
  251. package/dist/utils/path-normalize.d.ts.map +1 -0
  252. package/dist/utils/{path.js → path-normalize.js} +1 -1
  253. package/dist/utils/path-normalize.js.map +1 -0
  254. package/dist/utils/source-files.d.ts +3 -0
  255. package/dist/utils/source-files.d.ts.map +1 -0
  256. package/dist/utils/source-files.js +32 -0
  257. package/dist/utils/source-files.js.map +1 -0
  258. package/dist/utils/tsconfig/index.d.ts +3 -0
  259. package/dist/utils/tsconfig/index.d.ts.map +1 -0
  260. package/dist/utils/tsconfig/index.js +25 -0
  261. package/dist/utils/tsconfig/index.js.map +1 -0
  262. package/dist/utils/tsconfig/module.d.ts +4 -0
  263. package/dist/utils/tsconfig/module.d.ts.map +1 -0
  264. package/dist/utils/tsconfig/module.js +54 -0
  265. package/dist/utils/tsconfig/module.js.map +1 -0
  266. package/dist/utils/tsconfig/type.d.ts +10 -0
  267. package/dist/utils/tsconfig/type.d.ts.map +1 -0
  268. package/dist/utils/tsconfig/type.js +9 -0
  269. package/dist/utils/tsconfig/type.js.map +1 -0
  270. package/package.json +11 -12
  271. package/dist/config/path.d.ts +0 -3
  272. package/dist/config/path.d.ts.map +0 -1
  273. package/dist/config/path.js +0 -32
  274. package/dist/config/path.js.map +0 -1
  275. package/dist/errors/index.d.ts +0 -2
  276. package/dist/errors/index.d.ts.map +0 -1
  277. package/dist/errors/index.js.map +0 -1
  278. package/dist/errors/parameter-invalid.d.ts +0 -3
  279. package/dist/errors/parameter-invalid.d.ts.map +0 -1
  280. package/dist/errors/parameter-invalid.js.map +0 -1
  281. package/dist/generator/controller.d.ts +0 -13
  282. package/dist/generator/controller.d.ts.map +0 -1
  283. package/dist/generator/controller.js.map +0 -1
  284. package/dist/generator/endpoint.d.ts.map +0 -1
  285. package/dist/generator/endpoint.js.map +0 -1
  286. package/dist/generator/method.d.ts.map +0 -1
  287. package/dist/generator/method.js.map +0 -1
  288. package/dist/generator/module.d.ts.map +0 -1
  289. package/dist/generator/module.js.map +0 -1
  290. package/dist/generator/parameter.d.ts.map +0 -1
  291. package/dist/generator/parameter.js.map +0 -1
  292. package/dist/generator/utils.d.ts +0 -5
  293. package/dist/generator/utils.d.ts.map +0 -1
  294. package/dist/generator/utils.js +0 -18
  295. package/dist/generator/utils.js.map +0 -1
  296. package/dist/utils/path.d.ts.map +0 -1
  297. package/dist/utils/path.js.map +0 -1
  298. package/dist/utils/typescript.d.ts +0 -8
  299. package/dist/utils/typescript.d.ts.map +0 -1
  300. package/dist/utils/typescript.js +0 -41
  301. package/dist/utils/typescript.js.map +0 -1
@@ -6,11 +6,12 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.EndpointGenerator = void 0;
10
- const decorators_1 = require("@trapi/decorators");
9
+ exports.AbstractGenerator = void 0;
11
10
  const typescript_1 = require("typescript");
11
+ const decorator_1 = require("../decorator");
12
+ const resolver_1 = require("../resolver");
12
13
  const utils_1 = require("../utils");
13
- class EndpointGenerator {
14
+ class AbstractGenerator {
14
15
  // -------------------------------------------
15
16
  constructor(node, current) {
16
17
  this.current = current;
@@ -19,9 +20,9 @@ class EndpointGenerator {
19
20
  // --------------------------------------------------------------------
20
21
  generatePath(key) {
21
22
  const values = [];
22
- const representation = this.current.decoratorMapper.match(key, this.node);
23
+ const representation = this.current.decoratorResolver.match(key, this.node);
23
24
  if (typeof representation !== 'undefined') {
24
- const value = representation.getPropertyValue('DEFAULT');
25
+ const value = representation.getPropertyValue('value');
25
26
  if (typeof value !== 'undefined') {
26
27
  values.push(value);
27
28
  }
@@ -30,7 +31,7 @@ class EndpointGenerator {
30
31
  }
31
32
  // --------------------------------------------------------------------
32
33
  getDecoratorValues(decoratorName, acceptMultiple = false) {
33
- const decorators = (0, decorators_1.getNodeDecorators)(this.node, (decorator) => decorator.text === decoratorName);
34
+ const decorators = (0, utils_1.getNodeDecorators)(this.node, (decorator) => decorator.text === decoratorName);
34
35
  if (!decorators || !decorators.length) {
35
36
  return [];
36
37
  }
@@ -76,30 +77,30 @@ class EndpointGenerator {
76
77
  }
77
78
  if (argument.properties) {
78
79
  argument.properties.forEach((p) => {
79
- example[p.name.text] = (0, decorators_1.getInitializerValue)(p.initializer, this.current.typeChecker);
80
+ example[p.name.text] = (0, utils_1.getInitializerValue)(p.initializer, this.current.typeChecker);
80
81
  });
81
82
  }
82
83
  else {
83
- example = (0, decorators_1.getInitializerValue)(argument, this.current.typeChecker);
84
+ example = (0, utils_1.getInitializerValue)(argument, this.current.typeChecker);
84
85
  }
85
86
  return example;
86
87
  }
87
88
  // -------------------------------------------
88
89
  getResponses() {
89
- const representation = this.current.decoratorMapper.match('RESPONSE_DESCRIPTION', this.node);
90
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.RESPONSE_DESCRIPTION, this.node);
90
91
  if (typeof representation === 'undefined') {
91
92
  return [];
92
93
  }
93
94
  const responses = [];
94
95
  for (let i = 0; i < representation.decorators.length; i++) {
95
- const description = representation.getPropertyValue('DESCRIPTION', i) || 'Ok';
96
- const status = representation.getPropertyValue('STATUS_CODE', i) || '200';
97
- const examples = representation.getPropertyValue('PAYLOAD', i);
98
- const type = representation.getPropertyValue('TYPE');
96
+ const description = representation.getPropertyValue('description', i) || 'Ok';
97
+ const status = representation.getPropertyValue('statusCode', i) || '200';
98
+ const examples = representation.getPropertyValue('payload', i);
99
+ const type = representation.getPropertyValue('type');
99
100
  const response = {
100
101
  description,
101
102
  examples,
102
- schema: type ? new decorators_1.TypeNodeResolver(type, this.current).resolve() : undefined,
103
+ schema: type ? new resolver_1.TypeNodeResolver(type, this.current).resolve() : undefined,
103
104
  status: status,
104
105
  name: status,
105
106
  };
@@ -109,22 +110,22 @@ class EndpointGenerator {
109
110
  }
110
111
  // -------------------------------------------
111
112
  getProduces() {
112
- const representation = this.current.decoratorMapper.match('RESPONSE_PRODUCES', this.node);
113
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.RESPONSE_PRODUCES, this.node);
113
114
  if (typeof representation === 'undefined') {
114
115
  return [];
115
116
  }
116
- const value = representation.getPropertyValue('DEFAULT');
117
+ const value = representation.getPropertyValue('value');
117
118
  if (typeof value === 'undefined') {
118
119
  return [];
119
120
  }
120
121
  return Array.isArray(value) ? value : [value];
121
122
  }
122
123
  getConsumes() {
123
- const representation = this.current.decoratorMapper.match('REQUEST_CONSUMES', this.node);
124
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.REQUEST_CONSUMES, this.node);
124
125
  if (typeof representation === 'undefined') {
125
126
  return [];
126
127
  }
127
- let value = representation.getPropertyValue('DEFAULT');
128
+ let value = representation.getPropertyValue('value');
128
129
  if (typeof value === 'undefined') {
129
130
  return [];
130
131
  }
@@ -132,11 +133,11 @@ class EndpointGenerator {
132
133
  return value;
133
134
  }
134
135
  getTags() {
135
- const representation = this.current.decoratorMapper.match('SWAGGER_TAGS', this.node);
136
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.SWAGGER_TAGS, this.node);
136
137
  if (typeof representation === 'undefined') {
137
138
  return [];
138
139
  }
139
- let value = representation.getPropertyValue('DEFAULT');
140
+ let value = representation.getPropertyValue('value');
140
141
  if (typeof value === 'undefined') {
141
142
  return [];
142
143
  }
@@ -145,14 +146,14 @@ class EndpointGenerator {
145
146
  }
146
147
  // -------------------------------------------
147
148
  isHidden(node) {
148
- return typeof this.current.decoratorMapper.match('HIDDEN', node) !== 'undefined';
149
+ return typeof this.current.decoratorResolver.match(decorator_1.DecoratorID.HIDDEN, node) !== 'undefined';
149
150
  }
150
151
  isDeprecated(node) {
151
- if ((0, decorators_1.isExistJSDocTag)(node, (tag) => tag.tagName.text === 'deprecated')) {
152
+ if ((0, utils_1.hasJSDocTag)(node, utils_1.JSDocTagName.DEPRECATED)) {
152
153
  return true;
153
154
  }
154
- return typeof this.current.decoratorMapper.match('DEPRECATED', node) !== 'undefined';
155
+ return typeof this.current.decoratorResolver.match(decorator_1.DecoratorID.DEPRECATED, node) !== 'undefined';
155
156
  }
156
157
  }
157
- exports.EndpointGenerator = EndpointGenerator;
158
- //# sourceMappingURL=endpoint.js.map
158
+ exports.AbstractGenerator = AbstractGenerator;
159
+ //# sourceMappingURL=abstract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../src/generator/abstract.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,2CAAsD;AACtD,4CAA2C;AAC3C,0CAA+C;AAG/C,oCAEkB;AAGlB,MAAsB,iBAAiB;IAKnC,8CAA8C;IAE9C,YAAsB,IAAO,EAAY,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;QAC/D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,uEAAuE;IAE7D,YAAY,CAClB,GAA+D;QAE/D,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACvC,MAAM,KAAK,GAAG,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACvD,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;gBAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACtB;SACJ;QAED,IAAI,CAAC,IAAI,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,uEAAuE;IAE7D,kBAAkB,CAAC,aAAqB,EAAE,cAAc,GAAG,KAAK;QACtE,MAAM,UAAU,GAAG,IAAA,yBAAiB,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAEjG,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAAE,OAAO,EAAE,CAAC;SAAE;QAErD,IAAI,CAAC,cAAc,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1C,MAAM,IAAI,KAAK,CAAC,YAAY,aAAa,yBAAyB,IAAI,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;SACnG;QAED,IAAI,MAAa,CAAC;QAElB,IAAI,cAAc,EAAE;YAChB,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;SAC/C;aAAM;YACH,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC;SACxB;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,8CAA8C;IAEpC,WAAW;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAAE,OAAO,SAAS,CAAC;SAAE;QAE5D,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC/B,MAAM,UAAU,GAAc,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAEpF,OAAO;gBACH,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC3C,MAAM,EAAE,UAAU;aACrB,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAES,gBAAgB,CAAC,QAAgC;QACvD,IAAI,IAAA,qCAAwB,EAAC,QAAQ,CAAC,EAAE;YACpC,OAAO,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;iBACnD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACrG;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,8CAA8C;IAEpC,gBAAgB,CAAC,QAAa;QACpC,IAAI,OAAO,GAAQ,EAAE,CAAC;QAEtB,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;YACjC,OAAO,OAAO,CAAC;SAClB;QAED,IAAI,QAAQ,CAAC,UAAU,EAAE;YACrB,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;gBACnC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAA,2BAAmB,EAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;SACN;aAAM;YACH,OAAO,GAAG,IAAA,2BAAmB,EAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SACrE;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,8CAA8C;IAEpC,YAAY;QAClB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,uBAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACzG,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACvC,OAAO,EAAE,CAAC;SACb;QAED,MAAM,SAAS,GAAgB,EAAE,CAAC;QAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvD,MAAM,WAAW,GAAG,cAAc,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;YAC9E,MAAM,MAAM,GAAG,cAAc,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC;YACzE,MAAM,QAAQ,GAAyB,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAErF,MAAM,IAAI,GAAG,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAErD,MAAM,QAAQ,GAAc;gBACxB,WAAW;gBACX,QAAQ;gBACR,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,2BAAgB,CAAC,IAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;gBACzF,MAAM,EAAE,MAAgB;gBACxB,IAAI,EAAE,MAAgB;aACzB,CAAC;YAEF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC5B;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,8CAA8C;IAEvC,WAAW;QACd,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,uBAAW,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACtG,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACvC,OAAO,EAAE,CAAC;SACb;QAED,MAAM,KAAK,GAAc,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAC9B,OAAO,EAAE,CAAC;SACb;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAEM,WAAW;QACd,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,uBAAW,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACrG,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACvC,OAAO,EAAE,CAAC;SACb;QAED,IAAI,KAAK,GAAc,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAC9B,OAAO,EAAE,CAAC;SACb;QAED,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAE/C,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,OAAO;QACV,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,uBAAW,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACjG,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACvC,OAAO,EAAE,CAAC;SACb;QAED,IAAI,KAAK,GAAc,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAC9B,OAAO,EAAE,CAAC;SACb;QAED,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAE/C,OAAO,KAAK,CAAC;IACjB,CAAC;IAMD,8CAA8C;IAEvC,QAAQ,CAAC,IAAU;QACtB,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,uBAAW,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,WAAW,CAAC;IACjG,CAAC;IAEM,YAAY,CAAC,IAAU;QAC1B,IAAI,IAAA,mBAAW,EAAC,IAAI,EAAE,oBAAY,CAAC,UAAU,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC;SACf;QAED,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,uBAAW,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,WAAW,CAAC;IACrG,CAAC;CACJ;AAhMD,8CAgMC"}
@@ -0,0 +1,3 @@
1
+ export * from './module';
2
+ export * from './type';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generator/controller/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2023.
4
+ * Author Peter Placzek (tada5hi)
5
+ * For the full copyright and license information,
6
+ * view the LICENSE file that was distributed with this source code.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./module"), exports);
24
+ __exportStar(require("./type"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/controller/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,yCAAuB"}
@@ -0,0 +1,13 @@
1
+ import type { ClassDeclaration } from 'typescript';
2
+ import { AbstractGenerator } from '../abstract';
3
+ import type { MetadataGenerator } from '../metadata';
4
+ import type { Controller } from './type';
5
+ export declare class ControllerGenerator extends AbstractGenerator<ClassDeclaration> {
6
+ private genMethods;
7
+ constructor(node: ClassDeclaration, current: MetadataGenerator);
8
+ isValid(): boolean;
9
+ generate(): Controller;
10
+ protected getCurrentLocation(): string;
11
+ private buildMethods;
12
+ }
13
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/generator/controller/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAqB,MAAM,YAAY,CAAC;AAGtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzC,qBAAa,mBAAoB,SAAQ,iBAAiB,CAAC,gBAAgB,CAAC;IACxE,OAAO,CAAC,UAAU,CAAkC;gBAIxC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,iBAAiB;IAMvD,OAAO;IAIP,QAAQ,IAAI,UAAU;IAmB7B,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAItC,OAAO,CAAC,YAAY;CAcvB"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /*
3
- * Copyright (c) 2021.
3
+ * Copyright (c) 2021-2023.
4
4
  * Author Peter Placzek (tada5hi)
5
5
  * For the full copyright and license information,
6
6
  * view the LICENSE file that was distributed with this source code.
@@ -8,14 +8,15 @@
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.ControllerGenerator = void 0;
10
10
  const typescript_1 = require("typescript");
11
- const endpoint_1 = require("./endpoint");
12
- const method_1 = require("./method");
13
- class ControllerGenerator extends endpoint_1.EndpointGenerator {
11
+ const decorator_1 = require("../../decorator");
12
+ const abstract_1 = require("../abstract");
13
+ const method_1 = require("../method");
14
+ class ControllerGenerator extends abstract_1.AbstractGenerator {
14
15
  // --------------------------------------------------------------------
15
16
  constructor(node, current) {
16
17
  super(node, current);
17
18
  this.genMethods = new Set();
18
- this.generatePath('CLASS_PATH');
19
+ this.generatePath(decorator_1.DecoratorID.CLASS_PATH);
19
20
  }
20
21
  isValid() {
21
22
  return !!this.path || this.path === '';
@@ -59,4 +60,4 @@ class ControllerGenerator extends endpoint_1.EndpointGenerator {
59
60
  }
60
61
  }
61
62
  exports.ControllerGenerator = ControllerGenerator;
62
- //# sourceMappingURL=controller.js.map
63
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/generator/controller/module.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,2CAAwC;AACxC,+CAA8C;AAC9C,0CAAgD;AAEhD,sCAA4C;AAI5C,MAAa,mBAAoB,SAAQ,4BAAmC;IAGxE,uEAAuE;IAEvE,YAAY,IAAsB,EAAE,OAA0B;QAC1D,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QALjB,eAAU,GAAgB,IAAI,GAAG,EAAU,CAAC;QAOhD,IAAI,CAAC,YAAY,CAAC,uBAAW,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAEM,OAAO;QACV,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;IAC3C,CAAC;IAEM,QAAQ;QACX,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;SAAE;QACxG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;SAAE;QAExF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QAEpD,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE;YAC5B,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;YACrB,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE;YAC9B,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACvB,CAAC;IACN,CAAC;IAES,kBAAkB;QACxB,OAAQ,IAAI,CAAC,IAAyB,CAAC,IAAI,CAAC,IAAI,CAAC;IACrD,CAAC;IAEO,YAAY;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO;aACnB,MAAM,CAAC,CAAC,MAA0B,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,uBAAU,CAAC,iBAAiB,CAAC,CAAC;aACtF,MAAM,CAAC,CAAC,MAAyB,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aAC7D,GAAG,CAAC,CAAC,MAAyB,EAAE,EAAE,CAAC,IAAI,wBAAe,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;aAC9F,MAAM,CAAC,CAAC,SAA0B,EAAE,EAAE;YACnC,IAAI,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,EAAE;gBACxE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC/C,OAAO,IAAI,CAAC;aACf;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,SAA0B,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;CACJ;AApDD,kDAoDC"}
@@ -0,0 +1,42 @@
1
+ import type { Response, Security } from '../type';
2
+ import type { Method } from '../method';
3
+ export interface Controller {
4
+ /**
5
+ * File Location of the Controller.
6
+ */
7
+ location: string;
8
+ /**
9
+ * Array of found method ( class functions )
10
+ * for a specific controller (class)
11
+ */
12
+ methods: Method[];
13
+ name: string;
14
+ /**
15
+ * The relative URL Path, i.e /users
16
+ */
17
+ path: string;
18
+ /**
19
+ * Allowed Content-Types to pass
20
+ * data according the definition.
21
+ *
22
+ * i.e. ['application/json']
23
+ */
24
+ consumes: string[];
25
+ /**
26
+ * Possible Content-Types to receive
27
+ * data according the definition.
28
+ *
29
+ * i.e. ['application/json']
30
+ */
31
+ produces: string[];
32
+ responses: Response[];
33
+ /**
34
+ * Tags can be used to group controllers
35
+ * by a name together.
36
+ *
37
+ * i.e. ['auth']
38
+ */
39
+ tags: string[];
40
+ security?: Security[];
41
+ }
42
+ //# sourceMappingURL=type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/generator/controller/type.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,WAAW,UAAU;IACvB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB;;;;;OAKG;IACH,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACzB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/generator/controller/type.ts"],"names":[],"mappings":""}
@@ -1,7 +1,7 @@
1
+ export * from './abstract';
1
2
  export * from './controller';
2
- export * from './endpoint';
3
3
  export * from './method';
4
- export * from './module';
4
+ export * from './metadata';
5
5
  export * from './parameter';
6
- export * from './utils';
6
+ export * from './type';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAOA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAOA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC"}
@@ -20,10 +20,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
20
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./abstract"), exports);
23
24
  __exportStar(require("./controller"), exports);
24
- __exportStar(require("./endpoint"), exports);
25
25
  __exportStar(require("./method"), exports);
26
- __exportStar(require("./module"), exports);
26
+ __exportStar(require("./metadata"), exports);
27
27
  __exportStar(require("./parameter"), exports);
28
- __exportStar(require("./utils"), exports);
28
+ __exportStar(require("./type"), exports);
29
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,+CAA6B;AAC7B,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,8CAA4B;AAC5B,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,6CAA2B;AAC3B,+CAA6B;AAC7B,2CAAyB;AACzB,6CAA2B;AAC3B,8CAA4B;AAC5B,yCAAuB"}
@@ -0,0 +1,3 @@
1
+ export * from './module';
2
+ export * from './type';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generator/metadata/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2023.
4
+ * Author Peter Placzek (tada5hi)
5
+ * For the full copyright and license information,
6
+ * view the LICENSE file that was distributed with this source code.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./module"), exports);
24
+ __exportStar(require("./type"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/metadata/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,yCAAuB"}
@@ -1,18 +1,20 @@
1
- import { DependencyResolver, Mapper, MetadataGeneratorInterface, ReferenceType } from '@trapi/decorators';
2
- import { CompilerOptions, Node, TypeChecker } from 'typescript';
3
- import { Config, GeneratorOutput } from '../type';
4
- export declare class MetadataGenerator implements MetadataGeneratorInterface {
1
+ import type { Node, TypeChecker } from 'typescript';
2
+ import type { Options } from '../../config';
3
+ import { DecoratorResolver } from '../../decorator';
4
+ import type { DependencyResolver, ReferenceType } from '../../resolver';
5
+ import type { Metadata, MetadataGeneratorContext } from './type';
6
+ export declare class MetadataGenerator {
5
7
  readonly nodes: Node[];
6
8
  readonly typeChecker: TypeChecker;
7
- readonly decoratorMapper: Mapper;
8
- readonly config: Config;
9
+ readonly decoratorResolver: DecoratorResolver;
10
+ readonly config: Options;
9
11
  private readonly program;
10
12
  private cache;
11
13
  private controllers;
12
14
  private referenceTypes;
13
15
  private circularDependencyResolvers;
14
- constructor(config: Config, compilerOptions: CompilerOptions);
15
- generate(): GeneratorOutput;
16
+ constructor(context: MetadataGeneratorContext);
17
+ generate(): Promise<Metadata>;
16
18
  protected buildNodesFromSourceFiles(): number;
17
19
  /**
18
20
  * Check if the source file path is in the ignored path list.
@@ -34,7 +36,6 @@ export declare class MetadataGenerator implements MetadataGeneratorInterface {
34
36
  registerDependencyResolver(callback: DependencyResolver): void;
35
37
  getClassDeclaration(className: string): Node;
36
38
  getInterfaceDeclaration(className: string): Node;
37
- private scanSourceFiles;
38
39
  private buildControllers;
39
40
  }
40
41
  //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/generator/metadata/module.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAGR,IAAI,EAGJ,WAAW,EACd,MAAM,YAAY,CAAC;AASpB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAe,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAIxF,OAAO,KAAK,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC;AAEjE,qBAAa,iBAAiB;IAC1B,SAAgB,KAAK,EAAG,IAAI,EAAE,CAAC;IAE/B,SAAgB,WAAW,EAAE,WAAW,CAAC;IAEzC,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC;IAErD,SAAgB,MAAM,EAAE,OAAO,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC,OAAO,CAAC,KAAK,CAAe;IAE5B,OAAO,CAAC,WAAW,CAAe;IAElC,OAAO,CAAC,cAAc,CAAsB;IAE5C,OAAO,CAAC,2BAA2B,CAAmC;gBAI1D,OAAO,EAAE,wBAAwB;IAkBvC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IAiCnC,SAAS,CAAC,yBAAyB,IAAK,MAAM;IAuC9C;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAI,OAAO;IAQnD;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM;IAUjC,cAAc,CAAC,IAAI,EAAE,IAAI;IAMzB,gBAAgB,CAAC,aAAa,EAAE,aAAa;IAQ7C,gBAAgB,CAAC,OAAO,EAAE,MAAM;IAIhC,0BAA0B,CAAC,QAAQ,EAAE,kBAAkB;IAIvD,mBAAmB,CAAC,SAAS,EAAE,MAAM;IAYrC,uBAAuB,CAAC,SAAS,EAAE,MAAM;IAYhD,OAAO,CAAC,gBAAgB;CAa3B"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /*
3
- * Copyright (c) 2022.
3
+ * Copyright (c) 2022-2023.
4
4
  * Author Peter Placzek (tada5hi)
5
5
  * For the full copyright and license information,
6
6
  * view the LICENSE file that was distributed with this source code.
@@ -10,31 +10,36 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.MetadataGenerator = void 0;
13
- const decorators_1 = require("@trapi/decorators");
14
13
  const minimatch_1 = __importDefault(require("minimatch"));
15
- const glob_1 = require("glob");
16
14
  const typescript_1 = require("typescript");
17
- const controller_1 = require("./controller");
18
- const cache_1 = require("../cache");
15
+ const decorator_1 = require("../../decorator");
16
+ const resolver_1 = require("../../resolver");
17
+ const controller_1 = require("../controller");
18
+ const cache_1 = require("../../cache");
19
19
  class MetadataGenerator {
20
20
  // -------------------------------------------------------------------------
21
- constructor(config, compilerOptions) {
21
+ constructor(context) {
22
22
  this.referenceTypes = {};
23
23
  this.circularDependencyResolvers = new Array();
24
24
  this.nodes = [];
25
- this.config = config;
26
- this.cache = new cache_1.CacheDriver(config.cache);
27
- this.decoratorMapper = new decorators_1.Mapper(config.decorator);
28
- decorators_1.TypeNodeResolver.clearCache();
29
- const sourceFiles = this.scanSourceFiles(config.entryPoint);
30
- this.program = (0, typescript_1.createProgram)(sourceFiles, compilerOptions);
25
+ this.config = context.options;
26
+ this.cache = new cache_1.CacheDriver(context.options.cache);
27
+ this.decoratorResolver = new decorator_1.DecoratorResolver();
28
+ this.program = (0, typescript_1.createProgram)(context.sourceFiles, context.compilerOptions || {});
31
29
  this.typeChecker = this.program.getTypeChecker();
30
+ resolver_1.TypeNodeResolver.clearCache();
32
31
  }
33
32
  // -------------------------------------------------------------------------
34
- generate() {
33
+ async generate() {
35
34
  const sourceFileSize = this.buildNodesFromSourceFiles();
36
- let cache = this.cache.get(sourceFileSize);
35
+ let cache = await this.cache.get(sourceFileSize);
37
36
  if (!cache) {
37
+ if (this.config.decorators) {
38
+ this.decoratorResolver.apply(this.config.decorators);
39
+ }
40
+ if (this.config.preset) {
41
+ await this.decoratorResolver.applyPreset(this.config.preset);
42
+ }
38
43
  this.buildControllers();
39
44
  this.circularDependencyResolvers.forEach((resolve) => resolve(this.referenceTypes));
40
45
  cache = {
@@ -42,7 +47,7 @@ class MetadataGenerator {
42
47
  referenceTypes: this.referenceTypes,
43
48
  sourceFilesSize: sourceFileSize,
44
49
  };
45
- this.cache.save(cache);
50
+ await this.cache.save(cache);
46
51
  }
47
52
  return {
48
53
  controllers: cache.controllers,
@@ -141,36 +146,14 @@ class MetadataGenerator {
141
146
  }
142
147
  return undefined;
143
148
  }
144
- scanSourceFiles(input) {
145
- const sources = Array.isArray(input) ? input : [input];
146
- const result = new Set();
147
- const options = {
148
- nodir: true,
149
- absolute: true,
150
- };
151
- for (let i = 0; i < sources.length; i++) {
152
- const source = sources[i];
153
- let matches;
154
- if (typeof source === 'string') {
155
- matches = (0, glob_1.sync)(source, Object.assign({}, options));
156
- }
157
- else {
158
- matches = (0, glob_1.sync)(source.pattern, Object.assign(Object.assign({}, options), { cwd: source.cwd }));
159
- }
160
- for (let j = 0; j < matches.length; j++) {
161
- result.add(matches[j]);
162
- }
163
- }
164
- return Array.from(result);
165
- }
166
149
  buildControllers() {
167
150
  this.controllers = this.nodes
168
151
  .filter((node) => node.kind === typescript_1.SyntaxKind.ClassDeclaration)
169
152
  .filter((node) => {
170
- const isHidden = this.decoratorMapper.match('HIDDEN', node);
153
+ const isHidden = this.decoratorResolver.match(decorator_1.DecoratorID.HIDDEN, node);
171
154
  return typeof isHidden === 'undefined';
172
155
  })
173
- .filter((node) => typeof this.decoratorMapper.match('CLASS_PATH', node) !== 'undefined')
156
+ .filter((node) => typeof this.decoratorResolver.match(decorator_1.DecoratorID.CLASS_PATH, node) !== 'undefined')
174
157
  .map((classDeclaration) => new controller_1.ControllerGenerator(classDeclaration, this))
175
158
  .filter((generator) => generator.isValid())
176
159
  .map((generator) => generator.generate());
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/generator/metadata/module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { CompilerOptions } from 'typescript';
2
+ import type { Options } from '../../config';
3
+ import type { ReferenceTypes } from '../../resolver';
4
+ import type { Controller } from '../controller';
5
+ export type MetadataGeneratorContext = {
6
+ options: Options;
7
+ sourceFiles: string[];
8
+ compilerOptions?: CompilerOptions;
9
+ };
10
+ /**
11
+ * The output specification for metadata generation.
12
+ */
13
+ export interface Metadata {
14
+ /**
15
+ * A Controller is a collection of grouped methods (GET, POST, ...)
16
+ * for a common URL path (i.e /users) or an more explicit URL path (i.e. /users/:id).
17
+ */
18
+ controllers: Controller[];
19
+ /**
20
+ * ReferenceTypes is an object of found types (interfaces, type, ...),
21
+ * and classes which were detected during code analysis.
22
+ */
23
+ referenceTypes: ReferenceTypes;
24
+ }
25
+ //# sourceMappingURL=type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/generator/metadata/type.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,eAAe,CAAA;CACpC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB;;;OAGG;IACH,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC;CAClC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/generator/metadata/type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ export declare enum MethodName {
2
+ ALL = "ALL",
3
+ GET = "GET",
4
+ POST = "POST",
5
+ PUT = "PUT",
6
+ DELETE = "DELETE",
7
+ PATCH = "PATCH",
8
+ OPTIONS = "OPTIONS",
9
+ HEAD = "HEAD"
10
+ }
11
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/generator/method/constants.ts"],"names":[],"mappings":"AAOA,oBAAY,UAAU;IAClB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,IAAI,SAAS;CAChB"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2023.
4
+ * Author Peter Placzek (tada5hi)
5
+ * For the full copyright and license information,
6
+ * view the LICENSE file that was distributed with this source code.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.MethodName = void 0;
10
+ var MethodName;
11
+ (function (MethodName) {
12
+ MethodName["ALL"] = "ALL";
13
+ MethodName["GET"] = "GET";
14
+ MethodName["POST"] = "POST";
15
+ MethodName["PUT"] = "PUT";
16
+ MethodName["DELETE"] = "DELETE";
17
+ MethodName["PATCH"] = "PATCH";
18
+ MethodName["OPTIONS"] = "OPTIONS";
19
+ MethodName["HEAD"] = "HEAD";
20
+ })(MethodName = exports.MethodName || (exports.MethodName = {}));
21
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/generator/method/constants.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,IAAY,UASX;AATD,WAAY,UAAU;IAClB,yBAAW,CAAA;IACX,yBAAW,CAAA;IACX,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,iCAAmB,CAAA;IACnB,2BAAa,CAAA;AACjB,CAAC,EATW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QASrB"}
@@ -0,0 +1,4 @@
1
+ export * from './constants';
2
+ export * from './module';
3
+ export * from './type';
4
+ //# sourceMappingURL=index.d.ts.map