@tsoa-next/cli 7.1.0 → 7.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.MD +8 -2
  2. package/dist/cli.d.ts +4 -1
  3. package/dist/cli.js +91 -21
  4. package/dist/cli.js.map +1 -1
  5. package/dist/metadataGeneration/controllerGenerator.js +7 -7
  6. package/dist/metadataGeneration/controllerGenerator.js.map +1 -1
  7. package/dist/metadataGeneration/exceptions.js +8 -2
  8. package/dist/metadataGeneration/exceptions.js.map +1 -1
  9. package/dist/metadataGeneration/extension.js +25 -1
  10. package/dist/metadataGeneration/extension.js.map +1 -1
  11. package/dist/metadataGeneration/initializer-value.d.ts +8 -2
  12. package/dist/metadataGeneration/initializer-value.js +18 -9
  13. package/dist/metadataGeneration/initializer-value.js.map +1 -1
  14. package/dist/metadataGeneration/metadataGenerator.js +1 -1
  15. package/dist/metadataGeneration/metadataGenerator.js.map +1 -1
  16. package/dist/metadataGeneration/methodGenerator.d.ts +2 -0
  17. package/dist/metadataGeneration/methodGenerator.js +60 -21
  18. package/dist/metadataGeneration/methodGenerator.js.map +1 -1
  19. package/dist/metadataGeneration/parameterGenerator.js +46 -26
  20. package/dist/metadataGeneration/parameterGenerator.js.map +1 -1
  21. package/dist/metadataGeneration/transformer/propertyTransformer.js +2 -1
  22. package/dist/metadataGeneration/transformer/propertyTransformer.js.map +1 -1
  23. package/dist/metadataGeneration/transformer/referenceTransformer.js +4 -2
  24. package/dist/metadataGeneration/transformer/referenceTransformer.js.map +1 -1
  25. package/dist/metadataGeneration/typeResolver.d.ts +2 -2
  26. package/dist/metadataGeneration/typeResolver.js +27 -24
  27. package/dist/metadataGeneration/typeResolver.js.map +1 -1
  28. package/dist/module/generate-routes.js +1 -1
  29. package/dist/module/generate-routes.js.map +1 -1
  30. package/dist/routeGeneration/defaultRouteGenerator.js.map +1 -1
  31. package/dist/swagger/specGenerator.d.ts +3 -0
  32. package/dist/swagger/specGenerator.js +61 -3
  33. package/dist/swagger/specGenerator.js.map +1 -1
  34. package/dist/swagger/specGenerator2.d.ts +5 -1
  35. package/dist/swagger/specGenerator2.js +105 -61
  36. package/dist/swagger/specGenerator2.js.map +1 -1
  37. package/dist/swagger/specGenerator3.d.ts +7 -7
  38. package/dist/swagger/specGenerator3.js +55 -38
  39. package/dist/swagger/specGenerator3.js.map +1 -1
  40. package/dist/swagger/specGenerator31.d.ts +1 -0
  41. package/dist/swagger/specGenerator31.js +3 -0
  42. package/dist/swagger/specGenerator31.js.map +1 -1
  43. package/dist/utils/decoratorUtils.d.ts +9 -6
  44. package/dist/utils/decoratorUtils.js +162 -21
  45. package/dist/utils/decoratorUtils.js.map +1 -1
  46. package/dist/utils/jsDocUtils.js +6 -3
  47. package/dist/utils/jsDocUtils.js.map +1 -1
  48. package/dist/utils/jsonUtils.d.ts +1 -1
  49. package/dist/utils/pathUtils.js +32 -5
  50. package/dist/utils/pathUtils.js.map +1 -1
  51. package/dist/utils/validatorUtils.js +15 -8
  52. package/dist/utils/validatorUtils.js.map +1 -1
  53. package/package.json +4 -4
@@ -55,7 +55,7 @@ class MetadataGenerator {
55
55
  }
56
56
  }
57
57
  (0, typescript_1.forEachChild)(sf, node => {
58
- if ((0, typescript_1.isClassDeclaration)(node) && (0, decoratorUtils_1.getDecorators)(node, identifier => identifier.text === 'Route').length) {
58
+ if ((0, typescript_1.isClassDeclaration)(node) && (0, decoratorUtils_1.getDecorators)(node, (_identifier, canonicalName) => canonicalName === 'Route', this.typeChecker).length) {
59
59
  this.controllerNodes.push(node);
60
60
  }
61
61
  });
@@ -1 +1 @@
1
- {"version":3,"file":"metadataGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/metadataGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadataGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/metadataGenerator.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,8 @@ export declare class MethodGenerator {
40
40
  private getSecurity;
41
41
  private getIsHidden;
42
42
  private getDecoratorsByIdentifier;
43
+ private getDecoratorName;
43
44
  private getProducesAdapter;
45
+ private getProducesValue;
44
46
  }
45
47
  export {};
@@ -44,6 +44,23 @@ const exceptions_1 = require("./exceptions");
44
44
  const parameterGenerator_1 = require("./parameterGenerator");
45
45
  const typeResolver_1 = require("./typeResolver");
46
46
  const headerTypeHelpers_1 = require("../utils/headerTypeHelpers");
47
+ const toExampleLabel = (value) => (typeof value === 'string' ? value : undefined);
48
+ const isResponseName = (value) => typeof value === 'string' || typeof value === 'number';
49
+ const isExampleValue = (value, allowUndefined = false) => {
50
+ if (value === null || value instanceof Date) {
51
+ return true;
52
+ }
53
+ if (value === undefined) {
54
+ return allowUndefined;
55
+ }
56
+ if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
57
+ return true;
58
+ }
59
+ if (Array.isArray(value)) {
60
+ return value.every(item => isExampleValue(item, true));
61
+ }
62
+ return Object.values(value).every(item => isExampleValue(item, true));
63
+ };
47
64
  class MethodGenerator {
48
65
  node;
49
66
  current;
@@ -168,7 +185,7 @@ class MethodGenerator {
168
185
  return `${controllerId.text}.${methodId.text}`;
169
186
  }
170
187
  processMethodDecorators() {
171
- const pathDecorators = (0, decoratorUtils_1.getDecorators)(this.node, identifier => this.supportsPathMethod(identifier.text));
188
+ const pathDecorators = (0, decoratorUtils_1.getDecorators)(this.node, (_identifier, canonicalName) => this.supportsPathMethod(canonicalName), this.current.typeChecker);
172
189
  if (!pathDecorators || !pathDecorators.length) {
173
190
  return;
174
191
  }
@@ -176,7 +193,11 @@ class MethodGenerator {
176
193
  throw new exceptions_1.GenerateMetadataError(`Only one path decorator in '${this.getCurrentLocation()}' method, Found: ${pathDecorators.map(d => d.text).join(', ')}`);
177
194
  }
178
195
  const decorator = pathDecorators[0];
179
- this.method = decorator.text.toLowerCase();
196
+ const decoratorName = this.getDecoratorName(decorator);
197
+ if (!decoratorName) {
198
+ throw new exceptions_1.GenerateMetadataError(`Unsupported path decorator in '${this.getCurrentLocation()}' method.`);
199
+ }
200
+ this.method = decoratorName.toLowerCase();
180
201
  // if you don't pass in a path to the method decorator, we'll just use the base route
181
202
  // todo: what if someone has multiple no argument methods of the same type in a single controller?
182
203
  // we need to throw an error there
@@ -198,7 +219,7 @@ class MethodGenerator {
198
219
  }
199
220
  const [decorator] = consumesDecorators;
200
221
  const [consumes] = (0, decoratorUtils_1.getDecoratorValues)(decorator, this.current.typeChecker);
201
- return consumes;
222
+ return typeof consumes === 'string' ? consumes : undefined;
202
223
  }
203
224
  getMethodResponses() {
204
225
  const responseExamplesByName = {};
@@ -208,14 +229,18 @@ class MethodGenerator {
208
229
  }
209
230
  return decorators.map(decorator => {
210
231
  const [name, description, example, produces] = (0, decoratorUtils_1.getDecoratorValues)(decorator, this.current.typeChecker);
211
- if (example !== undefined) {
212
- responseExamplesByName[name] = responseExamplesByName[name] ? [...responseExamplesByName[name], example] : [example];
232
+ const responseName = isResponseName(name) ? name : '200';
233
+ const responseDescription = typeof description === 'string' ? description : '';
234
+ if (isExampleValue(example) && isResponseName(name)) {
235
+ const responseKey = String(responseName);
236
+ const currentExamples = responseExamplesByName[responseKey] ?? [];
237
+ responseExamplesByName[responseKey] = [...currentExamples, example];
213
238
  }
214
239
  return {
215
- description: description || '',
216
- examples: responseExamplesByName[name] || undefined,
217
- name: name || '200',
218
- produces: this.getProducesAdapter(produces),
240
+ description: responseDescription,
241
+ examples: responseExamplesByName[String(responseName)] || undefined,
242
+ name: responseName,
243
+ produces: this.getProducesAdapter(this.getProducesValue(produces)),
219
244
  schema: this.getSchemaFromDecorator(decorator, 0),
220
245
  headers: this.getHeadersFromDecorator(decorator, 1),
221
246
  };
@@ -229,7 +254,7 @@ class MethodGenerator {
229
254
  return {
230
255
  response: {
231
256
  description: (0, isVoidType_1.isVoidType)(type) ? 'No content' : returnsDescription,
232
- examples: examplesWithLabels?.map(ex => ex.example),
257
+ examples: examplesWithLabels ? examplesWithLabels.map(ex => ex.example) : undefined,
233
258
  exampleLabels: examplesWithLabels?.map(ex => ex.label),
234
259
  name: (0, isVoidType_1.isVoidType)(type) ? '204' : '200',
235
260
  produces: this.produces,
@@ -243,17 +268,19 @@ class MethodGenerator {
243
268
  const [firstDecorator] = decorators;
244
269
  const [name, description, produces] = (0, decoratorUtils_1.getDecoratorValues)(firstDecorator, this.current.typeChecker);
245
270
  const headers = this.getHeadersFromDecorator(firstDecorator, 0);
271
+ const responseName = isResponseName(name) ? name : '200';
272
+ const responseDescription = typeof description === 'string' ? description : '';
246
273
  return {
247
274
  response: {
248
- description: description || '',
249
- examples: examplesWithLabels?.map(ex => ex.example),
275
+ description: responseDescription,
276
+ examples: examplesWithLabels ? examplesWithLabels.map(ex => ex.example) : undefined,
250
277
  exampleLabels: examplesWithLabels?.map(ex => ex.label),
251
- name: name || '200',
252
- produces: this.getProducesAdapter(produces),
278
+ name: responseName,
279
+ produces: this.getProducesAdapter(this.getProducesValue(produces)),
253
280
  schema: type,
254
281
  headers,
255
282
  },
256
- status: name && /^\d+$/.test(name) ? parseInt(name, 10) : undefined,
283
+ status: typeof name === 'number' ? name : typeof name === 'string' && /^\d+$/.test(name) ? parseInt(name, 10) : undefined,
257
284
  };
258
285
  }
259
286
  getHeadersFromDecorator({ parent: expression }, headersIndex) {
@@ -275,12 +302,12 @@ class MethodGenerator {
275
302
  }
276
303
  const examples = exampleDecorators.map(exampleDecorator => {
277
304
  const [example, label] = (0, decoratorUtils_1.getDecoratorValues)(exampleDecorator, this.current.typeChecker);
278
- return { example, label };
279
- });
305
+ return { example, label: toExampleLabel(label) };
306
+ }).filter((entry) => isExampleValue(entry.example));
280
307
  return examples || undefined;
281
308
  }
282
309
  supportsPathMethod(method) {
283
- return ['options', 'get', 'post', 'put', 'patch', 'delete', 'head'].some(m => m === method.toLowerCase());
310
+ return !!method && ['options', 'get', 'post', 'put', 'patch', 'delete', 'head'].some(m => m === method.toLowerCase());
284
311
  }
285
312
  getIsDeprecated() {
286
313
  if ((0, jsDocUtils_1.isExistJSDocTag)(this.node, tag => tag.tagName.text === 'deprecated')) {
@@ -304,7 +331,7 @@ class MethodGenerator {
304
331
  throw new exceptions_1.GenerateMetadataError(`Only one OperationId decorator allowed in '${this.getCurrentLocation()}' method.`);
305
332
  }
306
333
  const values = (0, decoratorUtils_1.getDecoratorValues)(opDecorators[0], this.current.typeChecker);
307
- return values && values[0];
334
+ return typeof values[0] === 'string' ? values[0] : undefined;
308
335
  }
309
336
  getTags() {
310
337
  const tagsDecorators = this.getDecoratorsByIdentifier(this.node, 'Tags');
@@ -318,7 +345,7 @@ class MethodGenerator {
318
345
  if (tags && this.parentTags) {
319
346
  tags.push(...this.parentTags);
320
347
  }
321
- return tags;
348
+ return tags.filter((tag) => typeof tag === 'string');
322
349
  }
323
350
  getSecurity() {
324
351
  const noSecurityDecorators = this.getDecoratorsByIdentifier(this.node, 'NoSecurity');
@@ -351,7 +378,10 @@ class MethodGenerator {
351
378
  return true;
352
379
  }
353
380
  getDecoratorsByIdentifier(node, id) {
354
- return (0, decoratorUtils_1.getDecorators)(node, identifier => identifier.text === id);
381
+ return (0, decoratorUtils_1.getDecorators)(node, (_identifier, canonicalName) => canonicalName === id, this.current.typeChecker);
382
+ }
383
+ getDecoratorName(decorator) {
384
+ return (0, decoratorUtils_1.getCanonicalDecoratorName)(decorator, this.current.typeChecker);
355
385
  }
356
386
  getProducesAdapter(produces) {
357
387
  if (Array.isArray(produces)) {
@@ -362,6 +392,15 @@ class MethodGenerator {
362
392
  }
363
393
  return;
364
394
  }
395
+ getProducesValue(value) {
396
+ if (typeof value === 'string') {
397
+ return value;
398
+ }
399
+ if (Array.isArray(value)) {
400
+ return value.filter((entry) => typeof entry === 'string');
401
+ }
402
+ return undefined;
403
+ }
365
404
  }
366
405
  exports.MethodGenerator = MethodGenerator;
367
406
  //# sourceMappingURL=methodGenerator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"methodGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/methodGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgC;AAChC,2CAA4B;AAC5B,oDAAgD;AAChD,8DAAiH;AACjH,sDAA6F;AAC7F,2CAA2C;AAC3C,6CAAoD;AAEpD,6DAAyD;AAGzD,iDAA6C;AAC7C,kEAA0D;AAI1D,MAAa,eAAe;IAOP;IACA;IACA;IACA;IACA;IACA;IACA;IAZT,MAAM,CAAa;IACnB,IAAI,CAAS;IACf,QAAQ,CAAW;IACnB,QAAQ,CAAS;IAEzB,YACmB,IAA0B,EAC1B,OAA0B,EAC1B,eAAgC,EAChC,UAAmB,EACnB,UAAqB,EACrB,cAAgC,EAChC,cAAwB;QANxB,SAAI,GAAJ,IAAI,CAAsB;QAC1B,YAAO,GAAP,OAAO,CAAmB;QAC1B,oBAAe,GAAf,eAAe,CAAiB;QAChC,eAAU,GAAV,UAAU,CAAS;QACnB,eAAU,GAAV,UAAU,CAAW;QACrB,mBAAc,GAAd,cAAc,CAAkB;QAChC,mBAAc,GAAd,cAAc,CAAU;QAEzC,IAAI,CAAC,uBAAuB,EAAE,CAAA;IAChC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAA;IAC7D,CAAC;IAEM,QAAQ;QACb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACpB,MAAM,IAAI,kCAAqB,CAAC,yCAAyC,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;QAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAA;YAC5C,MAAM,SAAS,GAAG,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACpE,MAAM,YAAY,GAAG,WAAW,CAAC,wBAAwB,CAAC,SAAU,CAAC,CAAA;YACrE,QAAQ,GAAG,WAAW,CAAC,cAAc,CAAC,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAgB,CAAA;QACjH,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,2BAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAA;QACxE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAA;QAChG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACzC,MAAM,mBAAmB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAA0B,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAA;QAC5F,SAAS,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAA;QAEtC,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE;YAChC,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE;YAClC,WAAW,EAAE,IAAA,gCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC;YAC3C,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAG,IAAI,CAAC,IAAI,CAAC,IAAsB,CAAC,IAAI;YAC5C,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE;YAClC,UAAU;YACV,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS;YACT,aAAa;YACb,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,OAAO,EAAE,IAAA,4BAAe,EAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;YAC9C,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;YACpB,IAAI;SACL,CAAA;IACH,CAAC;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACpB,MAAM,IAAI,kCAAqB,CAAC,yCAAyC,CAAC,CAAA;QAC5E,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU;aACpC,GAAG,CAAC,CAAC,CAAC,EAAE;YACP,IAAI,CAAC;gBACH,OAAO,IAAI,uCAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;YAC7E,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAqB,CAAA;gBAChD,MAAM,YAAY,GAAI,IAAI,CAAC,IAAI,CAAC,MAA8B,CAAC,IAAqB,CAAA;gBACpF,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;gBAC1D,MAAM,IAAI,kCAAqB,CAAC,GAAG,OAAO,WAAW,YAAY,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAA;YAC7F,CAAC;QACH,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;QAE/D,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAA;QACvC,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAA;QAExC,OAAO,UAAU,CAAA;IACnB,CAAC;IAEO,sBAAsB,CAAC,UAA4B;QACzD,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC9D,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAA;QAE9D,MAAM,qBAAqB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAA;QACvE,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAA;QAErE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,kCAAqB,CAAC,uCAAuC,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QAC9G,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,kCAAqB,CAAC,+CAA+C,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACtH,CAAC;QACD,IAAI,gBAAgB,IAAI,qBAAqB,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,2FAA2F,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QAClJ,CAAC;IACH,CAAC;IAEO,uBAAuB,CAAC,UAA4B;QAC1D,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAA;QAChE,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;QAEpE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,kCAAqB,CAAC,0CAA0C,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACjH,CAAC;QACD,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,kCAAqB,CAAC,+CAA+C,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACtH,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,MAAM,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QAClF,IAAI,CAAC,mBAAmB,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC;YACxD,OAAO,EAAE,CAAA;QACX,CAAC;QACD,OAAO,IAAA,yBAAa,EAAC,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IACzD,CAAC;IAEO,kBAAkB;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAqB,CAAA;QAChD,MAAM,YAAY,GAAI,IAAI,CAAC,IAAI,CAAC,MAA8B,CAAC,IAAqB,CAAA;QACpF,OAAO,GAAG,YAAY,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAA;IAChD,CAAC;IAEO,uBAAuB;QAC7B,MAAM,cAAc,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QAEvG,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;YAC9C,OAAM;QACR,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,kCAAqB,CAAC,+BAA+B,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC3J,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;QAEnC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,EAAS,CAAA;QACjD,qFAAqF;QACrF,kGAAkG;QAClG,kCAAkC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAA,wBAAO,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACxD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IACpC,CAAC;IAEO,WAAW;QACjB,MAAM,QAAQ,GAAG,IAAA,4BAAW,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACjE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/C,CAAC;IAEO,WAAW;QACjB,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAEhF,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;YACtD,OAAM;QACR,CAAC;QACD,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,kCAAqB,CAAC,mCAAmC,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACnK,CAAC;QAED,MAAM,CAAC,SAAS,CAAC,GAAG,kBAAkB,CAAA;QACtC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,mCAAkB,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC1E,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,kBAAkB;QACxB,MAAM,sBAAsB,GAAwB,EAAE,CAAA;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QACxE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACtC,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAChC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAA,mCAAkB,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YAEtG,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,sBAAsB,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACtH,CAAC;YAED,OAAO;gBACL,WAAW,EAAE,WAAW,IAAI,EAAE;gBAC9B,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,IAAI,SAAS;gBACnD,IAAI,EAAE,IAAI,IAAI,KAAK;gBACnB,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;gBAC3C,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,CAAC,CAAC;gBACjD,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC;aACnC,CAAA;QACpB,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,wBAAwB,CAAC,IAAe;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;QAC/E,MAAM,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAE1D,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACtC,MAAM,kBAAkB,GAAG,IAAA,4BAAe,EAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,CAAA;YACxE,OAAO;gBACL,QAAQ,EAAE;oBACR,WAAW,EAAE,IAAA,uBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB;oBACjE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC;oBACnD,aAAa,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;oBACtD,IAAI,EAAE,IAAA,uBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK;oBACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,MAAM,EAAE,IAAI;iBACb;aACF,CAAA;QACH,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,kCAAqB,CAAC,kDAAkD,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACzH,CAAC;QAED,MAAM,CAAC,cAAc,CAAC,GAAG,UAAU,CAAA;QACnC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,GAAG,IAAA,mCAAkB,EAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAClG,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;QAE/D,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,WAAW,IAAI,EAAE;gBAC9B,QAAQ,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC;gBACnD,aAAa,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;gBACtD,IAAI,EAAE,IAAI,IAAI,KAAK;gBACnB,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;gBAC3C,MAAM,EAAE,IAAI;gBACZ,OAAO;aACR;YACD,MAAM,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;SACpE,CAAA;IACH,CAAC;IAEO,uBAAuB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAiB,EAAE,YAAoB;QACzF,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAA,iCAAa,EAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAC5E,CAAC;IAEO,sBAAsB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAiB,EAAE,WAAmB;QACvF,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;YAC1E,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,2BAAY,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;IACxF,CAAC;IAEO,wBAAwB;QAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QAC9E,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YACpD,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YACxD,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,IAAA,mCAAkB,EAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YACvF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QAC3B,CAAC,CAAC,CAAA;QAEF,OAAO,QAAQ,IAAI,SAAS,CAAA;IAC9B,CAAC;IAEO,kBAAkB,CAAC,MAAc;QACvC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;IAC3G,CAAC;IAEO,eAAe;QACrB,IAAI,IAAA,4BAAe,EAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;YACzE,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;QAC7E,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,kCAAqB,CAAC,6CAA6C,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACpH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,cAAc;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QAC7E,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC1C,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,kCAAqB,CAAC,8CAA8C,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACrH,CAAC;QAED,MAAM,MAAM,GAAG,IAAA,mCAAkB,EAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC5E,OAAO,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAEO,OAAO;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACxE,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,UAAU,CAAA;QACxB,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,kCAAqB,CAAC,uCAAuC,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QAC9G,CAAC;QAED,MAAM,IAAI,GAAG,IAAA,mCAAkB,EAAC,cAAc,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC5E,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/B,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,WAAW;QACjB,MAAM,oBAAoB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;QACpF,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAEhF,IAAI,oBAAoB,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,kCAAqB,CAAC,6CAA6C,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACpH,CAAC;QAED,IAAI,oBAAoB,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,EAAE,CAAC;YAC/D,MAAM,IAAI,kCAAqB,CAAC,kFAAkF,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QACzJ,CAAC;QAED,IAAI,oBAAoB,EAAE,MAAM,EAAE,CAAC;YACjC,OAAO,EAAE,CAAA;QACX,CAAC;QAED,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC,cAAc,IAAI,EAAE,CAAA;QAClC,CAAC;QAED,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,6BAAY,EAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAA;IAC/E,CAAC;IAEO,WAAW;QACjB,MAAM,gBAAgB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QAC5E,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAClD,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAA;QAC9B,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,IAAI,kCAAqB,CAAC,sCAAsC,IAAI,CAAC,kBAAkB,EAAE,2CAA2C,CAAC,CAAA;QAC7I,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,kCAAqB,CAAC,yCAAyC,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QAChH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,yBAAyB,CAAC,IAAa,EAAE,EAAU;QACzD,OAAO,IAAA,8BAAa,EAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;IAClE,CAAC;IAEO,kBAAkB,CAAC,QAA4B;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,QAAQ,CAAA;QACjB,CAAC;aAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACnB,CAAC;QACD,OAAM;IACR,CAAC;CACF;AA9WD,0CA8WC"}
1
+ {"version":3,"file":"methodGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/methodGenerator.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,26 @@ const exceptions_1 = require("./exceptions");
42
42
  const initializer_value_1 = require("./initializer-value");
43
43
  const typeResolver_1 = require("./typeResolver");
44
44
  const headerTypeHelpers_1 = require("../utils/headerTypeHelpers");
45
+ const getDecoratorStringValue = (value, fallback) => (typeof value === 'string' ? value : fallback);
46
+ const isExampleValue = (value, allowUndefined = false) => {
47
+ if (value === null || value instanceof Date) {
48
+ return true;
49
+ }
50
+ if (value === undefined) {
51
+ return allowUndefined;
52
+ }
53
+ if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
54
+ return true;
55
+ }
56
+ if (Array.isArray(value)) {
57
+ return value.every(item => isExampleValue(item, true));
58
+ }
59
+ if (typeof value === 'object') {
60
+ return Object.values(value).every(item => isExampleValue(item, true));
61
+ }
62
+ return false;
63
+ };
64
+ const toParameterExamples = (values) => values?.filter(value => isExampleValue(value));
45
65
  class ParameterGenerator {
46
66
  parameter;
47
67
  method;
@@ -54,7 +74,7 @@ class ParameterGenerator {
54
74
  this.current = current;
55
75
  }
56
76
  Generate() {
57
- const decoratorName = (0, decoratorUtils_1.getNodeFirstDecoratorName)(this.parameter, identifier => this.supportParameterDecorator(identifier.text));
77
+ const decoratorName = (0, decoratorUtils_1.getNodeFirstDecoratorName)(this.parameter, (_identifier, canonicalName) => this.supportParameterDecorator(canonicalName), this.current.typeChecker);
58
78
  switch (decoratorName) {
59
79
  case 'Request':
60
80
  return [this.getRequestParameter(this.parameter)];
@@ -106,10 +126,10 @@ class ParameterGenerator {
106
126
  return {
107
127
  default: (0, initializer_value_1.getInitializerValue)(parameter.initializer, this.current.typeChecker, type),
108
128
  description: this.getParameterDescription(parameter),
109
- example,
129
+ example: toParameterExamples(example),
110
130
  exampleLabels,
111
131
  in: 'request-prop',
112
- name: (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'ParameterProp') || parameterName,
132
+ name: getDecoratorStringValue((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'RequestProp'), parameterName),
113
133
  parameterName,
114
134
  required: !parameter.questionToken && !parameter.initializer,
115
135
  type,
@@ -136,7 +156,7 @@ class ParameterGenerator {
136
156
  }
137
157
  getResParameters(parameter) {
138
158
  const parameterName = parameter.name.text;
139
- const decorator = (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'Res') || parameterName;
159
+ const decorator = (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'Res') || parameterName;
140
160
  if (!decorator) {
141
161
  throw new exceptions_1.GenerateMetadataError('Could not find Decorator', parameter);
142
162
  }
@@ -153,7 +173,6 @@ class ParameterGenerator {
153
173
  const statusArguments = ts.isUnionTypeNode(statusArgument) ? [...statusArgument.types] : [statusArgument];
154
174
  const statusArgumentTypes = statusArguments.map(a => this.current.typeChecker.getTypeAtLocation(a));
155
175
  const isNumberLiteralType = (tsType) => {
156
- // eslint-disable-next-line no-bitwise
157
176
  return (tsType.getFlags() & ts.TypeFlags.NumberLiteral) !== 0;
158
177
  };
159
178
  const headers = (0, headerTypeHelpers_1.getHeaderType)(typeNode.typeArguments, 2, this.current);
@@ -170,7 +189,7 @@ class ParameterGenerator {
170
189
  name: status,
171
190
  produces: headers ? this.getProducesFromResHeaders(headers) : undefined,
172
191
  parameterName,
173
- examples,
192
+ examples: toParameterExamples(examples),
174
193
  required: true,
175
194
  type,
176
195
  exampleLabels,
@@ -200,10 +219,10 @@ class ParameterGenerator {
200
219
  return {
201
220
  default: (0, initializer_value_1.getInitializerValue)(parameter.initializer, this.current.typeChecker, type),
202
221
  description: this.getParameterDescription(parameter),
203
- example,
222
+ example: toParameterExamples(example),
204
223
  exampleLabels,
205
224
  in: 'body-prop',
206
- name: (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'BodyProp') || parameterName,
225
+ name: getDecoratorStringValue((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'BodyProp'), parameterName),
207
226
  parameterName,
208
227
  required: !parameter.questionToken && !parameter.initializer,
209
228
  type,
@@ -222,7 +241,7 @@ class ParameterGenerator {
222
241
  description: this.getParameterDescription(parameter),
223
242
  in: 'body',
224
243
  name: parameterName,
225
- example,
244
+ example: toParameterExamples(example),
226
245
  exampleLabels,
227
246
  parameterName,
228
247
  required: !parameter.questionToken && !parameter.initializer,
@@ -241,10 +260,10 @@ class ParameterGenerator {
241
260
  return {
242
261
  default: (0, initializer_value_1.getInitializerValue)(parameter.initializer, this.current.typeChecker, type),
243
262
  description: this.getParameterDescription(parameter),
244
- example,
263
+ example: toParameterExamples(example),
245
264
  exampleLabels,
246
265
  in: 'header',
247
- name: (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'Header') || parameterName,
266
+ name: getDecoratorStringValue((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'Header'), parameterName),
248
267
  parameterName,
249
268
  required: !parameter.questionToken && !parameter.initializer,
250
269
  type,
@@ -268,12 +287,12 @@ class ParameterGenerator {
268
287
  return {
269
288
  description: this.getParameterDescription(parameter),
270
289
  in: 'formData',
271
- name: (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => {
290
+ name: getDecoratorStringValue((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => {
272
291
  if (isArray) {
273
- return ident.text === 'UploadedFiles';
292
+ return canonicalName === 'UploadedFiles';
274
293
  }
275
- return ident.text === 'UploadedFile';
276
- }) ?? parameterName,
294
+ return canonicalName === 'UploadedFile';
295
+ }), parameterName),
277
296
  required: !parameter.questionToken && !parameter.initializer,
278
297
  type,
279
298
  parameterName,
@@ -290,7 +309,7 @@ class ParameterGenerator {
290
309
  return {
291
310
  description: this.getParameterDescription(parameter),
292
311
  in: 'formData',
293
- name: (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'FormField') ?? parameterName,
312
+ name: getDecoratorStringValue((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'FormField'), parameterName),
294
313
  required: !parameter.questionToken && !parameter.initializer,
295
314
  type,
296
315
  parameterName,
@@ -328,7 +347,7 @@ class ParameterGenerator {
328
347
  description: this.getParameterDescription(parameter),
329
348
  in: 'queries',
330
349
  name: parameterName,
331
- example,
350
+ example: toParameterExamples(example),
332
351
  exampleLabels,
333
352
  parameterName,
334
353
  required: !parameter.questionToken && !parameter.initializer,
@@ -355,7 +374,7 @@ class ParameterGenerator {
355
374
  description: this.getParameterDescription(parameter),
356
375
  in: 'queries',
357
376
  name: parameterName,
358
- example,
377
+ example: toParameterExamples(example),
359
378
  exampleLabels,
360
379
  parameterName,
361
380
  required: !parameter.questionToken && !parameter.initializer,
@@ -400,10 +419,10 @@ class ParameterGenerator {
400
419
  const commonProperties = {
401
420
  default: (0, initializer_value_1.getInitializerValue)(parameter.initializer, this.current.typeChecker, type),
402
421
  description: this.getParameterDescription(parameter),
403
- example,
422
+ example: toParameterExamples(example),
404
423
  exampleLabels,
405
424
  in: 'query',
406
- name: (0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'Query') || parameterName,
425
+ name: getDecoratorStringValue((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'Query'), parameterName),
407
426
  parameterName,
408
427
  required: !parameter.questionToken && !parameter.initializer,
409
428
  validators: (0, validatorUtils_1.getParameterValidators)(this.parameter, parameterName),
@@ -441,7 +460,7 @@ class ParameterGenerator {
441
460
  getPathParameter(parameter) {
442
461
  const parameterName = parameter.name.text;
443
462
  const type = this.getValidatedType(parameter);
444
- const pathName = String((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, ident => ident.text === 'Path') || parameterName);
463
+ const pathName = String((0, decoratorUtils_1.getNodeFirstDecoratorValue)(this.parameter, this.current.typeChecker, (_ident, canonicalName) => canonicalName === 'Path') || parameterName);
445
464
  if (!this.supportPathDataType(type)) {
446
465
  throw new exceptions_1.GenerateMetadataError(`@Path('${parameterName}') Can't support '${type.dataType}' type.`);
447
466
  }
@@ -452,7 +471,7 @@ class ParameterGenerator {
452
471
  return {
453
472
  default: (0, initializer_value_1.getInitializerValue)(parameter.initializer, this.current.typeChecker, type),
454
473
  description: this.getParameterDescription(parameter),
455
- example: examples,
474
+ example: toParameterExamples(examples),
456
475
  exampleLabels,
457
476
  in: 'path',
458
477
  name: pathName,
@@ -475,7 +494,7 @@ class ParameterGenerator {
475
494
  return undefined;
476
495
  }
477
496
  getParameterDeprecation(node) {
478
- return (0, jsDocUtils_1.isExistJSDocTag)(node, tag => tag.tagName.text === 'deprecated') || (0, decoratorUtils_1.isDecorator)(node, identifier => identifier.text === 'Deprecated');
497
+ return (0, jsDocUtils_1.isExistJSDocTag)(node, tag => tag.tagName.text === 'deprecated') || (0, decoratorUtils_1.isDecorator)(node, (_identifier, canonicalName) => canonicalName === 'Deprecated', this.current.typeChecker);
479
498
  }
480
499
  getParameterExample(node, parameterName) {
481
500
  const exampleLabels = [];
@@ -497,8 +516,9 @@ class ParameterGenerator {
497
516
  }
498
517
  else {
499
518
  try {
519
+ const parsedExamples = examples.map(example => JSON.parse(example));
500
520
  return {
501
- examples: examples.map(example => JSON.parse(example)),
521
+ examples: parsedExamples,
502
522
  exampleLabels,
503
523
  };
504
524
  }
@@ -512,7 +532,7 @@ class ParameterGenerator {
512
532
  return ['post', 'put', 'patch', 'delete'].some(m => m === method.toLowerCase());
513
533
  }
514
534
  supportParameterDecorator(decoratorName) {
515
- return ['header', 'query', 'queries', 'path', 'body', 'bodyprop', 'request', 'requestprop', 'res', 'inject', 'uploadedfile', 'uploadedfiles', 'formfield'].some(d => d === decoratorName.toLocaleLowerCase());
535
+ return !!decoratorName && ['header', 'query', 'queries', 'path', 'body', 'bodyprop', 'request', 'requestprop', 'res', 'inject', 'uploadedfile', 'uploadedfiles', 'formfield'].some(d => d === decoratorName.toLocaleLowerCase());
516
536
  }
517
537
  supportPathDataType(parameterType) {
518
538
  const supportedPathDataTypes = ['string', 'integer', 'long', 'float', 'double', 'date', 'datetime', 'buffer', 'boolean', 'enum', 'refEnum', 'file', 'any'];
@@ -537,7 +557,7 @@ class ParameterGenerator {
537
557
  return new typeResolver_1.TypeResolver(typeNode, this.current, parameter).resolve();
538
558
  }
539
559
  getQueryParameterIsHidden(parameter) {
540
- const hiddenDecorators = (0, decoratorUtils_1.getDecorators)(parameter, identifier => identifier.text === 'Hidden');
560
+ const hiddenDecorators = (0, decoratorUtils_1.getDecorators)(parameter, (_identifier, canonicalName) => canonicalName === 'Hidden', this.current.typeChecker);
541
561
  if (!hiddenDecorators || !hiddenDecorators.length) {
542
562
  return false;
543
563
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parameterGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/parameterGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parameterGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/parameterGenerator.ts"],"names":[],"mappings":"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"}