@trapi/metadata 1.0.0-alpha.1 → 1.0.0-alpha.3

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 (117) hide show
  1. package/dist/cache/driver.js.map +1 -1
  2. package/dist/decorator/constants.d.ts +13 -12
  3. package/dist/decorator/constants.d.ts.map +1 -1
  4. package/dist/decorator/constants.js +13 -12
  5. package/dist/decorator/constants.js.map +1 -1
  6. package/dist/decorator/preset/utils/load.d.ts.map +1 -1
  7. package/dist/decorator/preset/utils/load.js +1 -4
  8. package/dist/decorator/preset/utils/load.js.map +1 -1
  9. package/dist/decorator/property-manager/module.d.ts +6 -8
  10. package/dist/decorator/property-manager/module.d.ts.map +1 -1
  11. package/dist/decorator/property-manager/module.js +14 -20
  12. package/dist/decorator/property-manager/module.js.map +1 -1
  13. package/dist/decorator/property-manager/utils.d.ts +4 -5
  14. package/dist/decorator/property-manager/utils.d.ts.map +1 -1
  15. package/dist/decorator/property-manager/utils.js +55 -84
  16. package/dist/decorator/property-manager/utils.js.map +1 -1
  17. package/dist/decorator/sets/class.d.ts +2 -2
  18. package/dist/decorator/sets/class.d.ts.map +1 -1
  19. package/dist/decorator/sets/method.d.ts +2 -2
  20. package/dist/decorator/sets/method.d.ts.map +1 -1
  21. package/dist/decorator/sets/mixed.d.ts +6 -2
  22. package/dist/decorator/sets/mixed.d.ts.map +1 -1
  23. package/dist/decorator/sets/parameter.d.ts +2 -2
  24. package/dist/decorator/sets/parameter.d.ts.map +1 -1
  25. package/dist/decorator/sets/request.d.ts +2 -2
  26. package/dist/decorator/sets/request.d.ts.map +1 -1
  27. package/dist/decorator/sets/response.d.ts +3 -2
  28. package/dist/decorator/sets/response.d.ts.map +1 -1
  29. package/dist/decorator/type.d.ts +8 -15
  30. package/dist/decorator/type.d.ts.map +1 -1
  31. package/dist/error/index.d.ts +0 -1
  32. package/dist/error/index.d.ts.map +1 -1
  33. package/dist/error/index.js +0 -1
  34. package/dist/error/index.js.map +1 -1
  35. package/dist/generator/abstract.d.ts +6 -13
  36. package/dist/generator/abstract.d.ts.map +1 -1
  37. package/dist/generator/abstract.js +49 -57
  38. package/dist/generator/abstract.js.map +1 -1
  39. package/dist/generator/controller/module.d.ts +2 -2
  40. package/dist/generator/controller/module.d.ts.map +1 -1
  41. package/dist/generator/controller/module.js +24 -19
  42. package/dist/generator/controller/module.js.map +1 -1
  43. package/dist/generator/controller/type.d.ts +12 -7
  44. package/dist/generator/controller/type.d.ts.map +1 -1
  45. package/dist/generator/metadata/index.d.ts +1 -0
  46. package/dist/generator/metadata/index.d.ts.map +1 -1
  47. package/dist/generator/metadata/index.js +1 -0
  48. package/dist/generator/metadata/index.js.map +1 -1
  49. package/dist/generator/metadata/module.d.ts +0 -2
  50. package/dist/generator/metadata/module.d.ts.map +1 -1
  51. package/dist/generator/metadata/module.js +13 -33
  52. package/dist/generator/metadata/module.js.map +1 -1
  53. package/dist/generator/metadata/utils.d.ts +3 -0
  54. package/dist/generator/metadata/utils.d.ts.map +1 -0
  55. package/dist/generator/metadata/utils.js +19 -0
  56. package/dist/generator/metadata/utils.js.map +1 -0
  57. package/dist/generator/method/module.d.ts +8 -9
  58. package/dist/generator/method/module.d.ts.map +1 -1
  59. package/dist/generator/method/module.js +54 -73
  60. package/dist/generator/method/module.js.map +1 -1
  61. package/dist/generator/parameter/constants.d.ts +19 -0
  62. package/dist/generator/parameter/constants.d.ts.map +1 -0
  63. package/dist/generator/parameter/constants.js +30 -0
  64. package/dist/generator/parameter/constants.js.map +1 -0
  65. package/dist/generator/parameter/error.d.ts +35 -0
  66. package/dist/generator/parameter/error.d.ts.map +1 -0
  67. package/dist/generator/parameter/error.js +68 -0
  68. package/dist/generator/parameter/error.js.map +1 -0
  69. package/dist/generator/parameter/index.d.ts +2 -0
  70. package/dist/generator/parameter/index.d.ts.map +1 -1
  71. package/dist/generator/parameter/index.js +2 -0
  72. package/dist/generator/parameter/index.js.map +1 -1
  73. package/dist/generator/parameter/module.d.ts +7 -6
  74. package/dist/generator/parameter/module.d.ts.map +1 -1
  75. package/dist/generator/parameter/module.js +363 -197
  76. package/dist/generator/parameter/module.js.map +1 -1
  77. package/dist/generator/parameter/type.d.ts +8 -5
  78. package/dist/generator/parameter/type.d.ts.map +1 -1
  79. package/dist/generator/parameter/validator.d.ts.map +1 -1
  80. package/dist/generator/parameter/validator.js +15 -9
  81. package/dist/generator/parameter/validator.js.map +1 -1
  82. package/dist/generator/type.d.ts +8 -5
  83. package/dist/generator/type.d.ts.map +1 -1
  84. package/dist/module.d.ts.map +1 -1
  85. package/dist/module.js +10 -3
  86. package/dist/module.js.map +1 -1
  87. package/dist/resolver/module.d.ts +1 -1
  88. package/dist/resolver/module.d.ts.map +1 -1
  89. package/dist/resolver/module.js +47 -36
  90. package/dist/resolver/module.js.map +1 -1
  91. package/dist/utils/js-doc/constants.d.ts +19 -0
  92. package/dist/utils/js-doc/constants.d.ts.map +1 -0
  93. package/dist/utils/js-doc/constants.js +30 -0
  94. package/dist/utils/js-doc/constants.js.map +1 -0
  95. package/dist/utils/js-doc/index.d.ts +4 -0
  96. package/dist/utils/js-doc/index.d.ts.map +1 -0
  97. package/dist/utils/js-doc/index.js +26 -0
  98. package/dist/utils/js-doc/index.js.map +1 -0
  99. package/dist/utils/js-doc/module.d.ts +9 -0
  100. package/dist/utils/js-doc/module.d.ts.map +1 -0
  101. package/dist/utils/{js-doc.js → js-doc/module.js} +11 -14
  102. package/dist/utils/js-doc/module.js.map +1 -0
  103. package/dist/utils/js-doc/utils.d.ts +3 -0
  104. package/dist/utils/js-doc/utils.d.ts.map +1 -0
  105. package/dist/utils/js-doc/utils.js +29 -0
  106. package/dist/utils/js-doc/utils.js.map +1 -0
  107. package/dist/utils/object.d.ts.map +1 -1
  108. package/dist/utils/object.js +1 -0
  109. package/dist/utils/object.js.map +1 -1
  110. package/package.json +5 -4
  111. package/dist/error/parameter-invalid.d.ts +0 -4
  112. package/dist/error/parameter-invalid.d.ts.map +0 -1
  113. package/dist/error/parameter-invalid.js +0 -14
  114. package/dist/error/parameter-invalid.js.map +0 -1
  115. package/dist/utils/js-doc.d.ts +0 -8
  116. package/dist/utils/js-doc.d.ts.map +0 -1
  117. package/dist/utils/js-doc.js.map +0 -1
@@ -1,35 +1,28 @@
1
1
  import type { DecoratorID } from './constants';
2
2
  import type { DecoratorClassSetID, DecoratorClassSetProperties, DecoratorMethodSetID, DecoratorMethodSetProperties, DecoratorMixedSetID, DecoratorMixedSetProperties, DecoratorParameterSetID, DecoratorParameterSetProperties, DecoratorRequestSetID, DecoratorRequestSetProperties, DecoratorResponseSetID, DecoratorResponseSetProperties } from './sets';
3
3
  export type DecoratorProperties<T extends `${DecoratorID}`> = T extends DecoratorClassSetID ? DecoratorClassSetProperties<T> : T extends DecoratorMethodSetID ? DecoratorMethodSetProperties<T> : T extends DecoratorMixedSetID ? DecoratorMixedSetProperties<T> : T extends DecoratorParameterSetID ? DecoratorParameterSetProperties<T> : T extends DecoratorRequestSetID ? DecoratorRequestSetProperties<T> : T extends DecoratorResponseSetID ? DecoratorResponseSetProperties<T> : never;
4
- export type DecoratorPropertyStrategy = 'merge' | 'none' | ((...items: unknown[] | unknown[][]) => unknown | unknown[]);
4
+ export type DecoratorPropertyStrategy = 'merge' | ((...items: any[]) => any);
5
5
  export type DecoratorPropertyConfig = {
6
- /**
7
- * Default: 'element'
8
- */
9
- type?: 'element' | 'array';
10
6
  /**
11
7
  * Default: false
12
8
  */
13
- isType?: boolean;
14
- /**
15
- * Default: 'argument'
16
- */
17
- srcArgumentType?: 'argument' | 'typeArgument';
9
+ isType: boolean;
18
10
  /**
19
11
  * Default: 0
20
12
  */
21
- srcPosition?: number;
13
+ index: number;
22
14
  /**
23
15
  * Default: undefined
24
16
  */
25
- srcAmount?: number;
17
+ amount?: number;
26
18
  /**
27
- * Default: 'none'
19
+ * Default: undefined
28
20
  */
29
- srcStrategy?: DecoratorPropertyStrategy;
21
+ strategy?: DecoratorPropertyStrategy;
30
22
  };
23
+ export type DecoratorPropertyConfigInput = Partial<DecoratorPropertyConfig>;
31
24
  export type DecoratorPropertiesConfig<P extends Record<string, any>> = {
32
- [K in keyof P]: DecoratorPropertyConfig;
25
+ [K in keyof P]: DecoratorPropertyConfigInput;
33
26
  };
34
27
  export type DecoratorConfig<T extends `${DecoratorID}` = `${DecoratorID}`> = {
35
28
  id: T;
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/decorator/type.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EACR,mBAAmB,EACnB,2BAA2B,EAC3B,oBAAoB,EACpB,4BAA4B,EAC5B,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EACjC,MAAM,QAAQ,CAAC;AAEhB,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,GAAG,WAAW,EAAE,IACtD,CAAC,SAAS,mBAAmB,GACzB,2BAA2B,CAAC,CAAC,CAAC,GAC9B,CAAC,SAAS,oBAAoB,GAC1B,4BAA4B,CAAC,CAAC,CAAC,GAC/B,CAAC,SAAS,mBAAmB,GACzB,2BAA2B,CAAC,CAAC,CAAC,GAC9B,CAAC,SAAS,uBAAuB,GAC7B,+BAA+B,CAAC,CAAC,CAAC,GAClC,CAAC,SAAS,qBAAqB,GAC3B,6BAA6B,CAAC,CAAC,CAAC,GAChC,CAAC,SAAS,sBAAsB,GAC5B,8BAA8B,CAAC,CAAC,CAAC,GACjC,KAAK,CAAC;AAElC,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,EAAE,KAAK,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC;AAExH,MAAM,MAAM,uBAAuB,GAAG;IAClC;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAE3B;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,GAAG,cAAc,CAAC;IAE9C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,yBAAyB,CAAA;CAC1C,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;KAClE,CAAC,IAAI,MAAM,CAAC,GAAG,uBAAuB;CAC1C,CAAC;AAIF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,GAAG,WAAW,EAAE,GAAG,GAAG,WAAW,EAAE,IAAI;IACzE,EAAE,EAAE,CAAC,CAAC;IACN,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,yBAAyB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;CACjE,CAAC"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/decorator/type.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EACR,mBAAmB,EACnB,2BAA2B,EAC3B,oBAAoB,EACpB,4BAA4B,EAC5B,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EACjC,MAAM,QAAQ,CAAC;AAEhB,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,GAAG,WAAW,EAAE,IACtD,CAAC,SAAS,mBAAmB,GACzB,2BAA2B,CAAC,CAAC,CAAC,GAC9B,CAAC,SAAS,oBAAoB,GAC1B,4BAA4B,CAAC,CAAC,CAAC,GAC/B,CAAC,SAAS,mBAAmB,GACzB,2BAA2B,CAAC,CAAC,CAAC,GAC9B,CAAC,SAAS,uBAAuB,GAC7B,+BAA+B,CAAC,CAAC,CAAC,GAClC,CAAC,SAAS,qBAAqB,GAC3B,6BAA6B,CAAC,CAAC,CAAC,GAChC,CAAC,SAAS,sBAAsB,GAC5B,8BAA8B,CAAC,CAAC,CAAC,GACjC,KAAK,CAAC;AAElC,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAE7E,MAAM,MAAM,uBAAuB,GAAG;IAClC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAA;CACvC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAC5E,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;KAClE,CAAC,IAAI,MAAM,CAAC,GAAG,4BAA4B;CAC/C,CAAC;AAIF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,GAAG,WAAW,EAAE,GAAG,GAAG,WAAW,EAAE,IAAI;IACzE,EAAE,EAAE,CAAC,CAAC;IACN,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,yBAAyB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;CACjE,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export * from './base';
2
- export * from './parameter-invalid';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":"AAOA,cAAc,QAAQ,CAAC;AACvB,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":"AAOA,cAAc,QAAQ,CAAC"}
@@ -21,5 +21,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
23
  __exportStar(require("./base"), exports);
24
- __exportStar(require("./parameter-invalid"), exports);
25
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,yCAAuB;AACvB,sDAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,yCAAuB"}
@@ -1,21 +1,14 @@
1
- import type { ArrayLiteralExpression, Node } from 'typescript';
2
- import { DecoratorID } from '../decorator';
3
- import type { Response } from './type';
1
+ import type { Node } from 'typescript';
2
+ import type { Response, Security } from './type';
4
3
  import type { MetadataGenerator } from './metadata';
5
4
  export declare abstract class AbstractGenerator<T extends Node> {
6
- protected current: MetadataGenerator;
7
- protected path: string | undefined;
8
5
  protected node: T;
6
+ protected current: MetadataGenerator;
9
7
  protected constructor(node: T, current: MetadataGenerator);
10
- protected generatePath(key: `${DecoratorID.CLASS_PATH}` | `${DecoratorID.METHOD_PATH}`): void;
11
- protected getDecoratorValues(decoratorName: string, acceptMultiple?: boolean): any[];
12
- protected getSecurity(): {
13
- name: any;
14
- scopes: string[];
15
- }[];
16
- protected handleRolesArray(argument: ArrayLiteralExpression): string[];
8
+ protected buildPath(): string;
9
+ protected getSecurity(): Security[];
17
10
  protected getExamplesValue(argument: any): unknown[];
18
- protected getResponses(): Response[];
11
+ protected buildResponses(): Response[];
19
12
  getProduces(): string[];
20
13
  getConsumes(): string[];
21
14
  getTags(): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../src/generator/abstract.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAY,MAAM,YAAY,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAIvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,IAAI;IAOnB,SAAS,CAAC,OAAO,EAAE,iBAAiB;IANnE,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAIlB,SAAS,aAAa,IAAI,EAAE,CAAC,EAAY,OAAO,EAAE,iBAAiB;IAMnE,SAAS,CAAC,YAAY,CAClB,GAAG,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,WAAW,CAAC,WAAW,EAAE,GAC/D,IAAI;IAgBR,SAAS,CAAC,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,UAAQ,GAAI,GAAG,EAAE;IAuBnF,SAAS,CAAC,WAAW;;;;IAcrB,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,EAAE;IAUtE,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,GAAI,OAAO,EAAE;IAoBrD,SAAS,CAAC,YAAY,IAAI,QAAQ,EAAE;IA+B7B,WAAW,IAAK,MAAM,EAAE;IAcxB,WAAW,IAAK,MAAM,EAAE;IAgBxB,OAAO,IAAK,MAAM,EAAE;IAkB3B,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,MAAM;IAIxC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAI,OAAO;IAI9B,YAAY,CAAC,IAAI,EAAE,IAAI,GAAI,OAAO;CAO5C"}
1
+ {"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../src/generator/abstract.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,IAAI,EAAY,MAAM,YAAY,CAAC;AAIjD,OAAO,KAAK,EAAW,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,IAAI;IAClD,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAElB,SAAS,CAAC,OAAO,EAAG,iBAAiB,CAAC;IAItC,SAAS,aAAa,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB;IAOzD,SAAS,CAAC,SAAS,IAAK,MAAM;IAc9B,SAAS,CAAC,WAAW,IAAK,QAAQ,EAAE;IAiCpC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,GAAI,OAAO,EAAE;IAoBrD,SAAS,CAAC,cAAc,IAAI,QAAQ,EAAE;IAsC/B,WAAW,IAAK,MAAM,EAAE;IAcxB,WAAW,IAAK,MAAM,EAAE;IAgBxB,OAAO,IAAK,MAAM,EAAE;IAkB3B,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,MAAM;IAIxC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAI,OAAO;IAI9B,YAAY,CAAC,IAAI,EAAE,IAAI,GAAI,OAAO;CAO5C"}
@@ -7,67 +7,53 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.AbstractGenerator = void 0;
10
- const typescript_1 = require("typescript");
10
+ const locter_1 = require("locter");
11
11
  const decorator_1 = require("../decorator");
12
12
  const resolver_1 = require("../resolver");
13
13
  const utils_1 = require("../utils");
14
14
  class AbstractGenerator {
15
15
  // -------------------------------------------
16
16
  constructor(node, current) {
17
- this.current = current;
18
17
  this.node = node;
18
+ this.current = current;
19
19
  }
20
20
  // --------------------------------------------------------------------
21
- generatePath(key) {
22
- const values = [];
23
- const representation = this.current.decoratorResolver.match(key, this.node);
21
+ buildPath() {
22
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.MOUNT, this.node);
24
23
  if (typeof representation !== 'undefined') {
25
- const value = representation.getPropertyValue('value');
26
- if (typeof value !== 'undefined') {
27
- values.push(value);
24
+ const value = representation.get('value');
25
+ if (typeof value === 'string') {
26
+ return (0, utils_1.normalizePath)(value);
28
27
  }
29
28
  }
30
- this.path = (0, utils_1.normalizePath)(values.join('/'));
31
- }
32
- // --------------------------------------------------------------------
33
- getDecoratorValues(decoratorName, acceptMultiple = false) {
34
- const decorators = (0, utils_1.getNodeDecorators)(this.node, (decorator) => decorator.text === decoratorName);
35
- if (!decorators || !decorators.length) {
36
- return [];
37
- }
38
- if (!acceptMultiple && decorators.length > 1) {
39
- throw new Error(`Only one ${decoratorName} decorator allowed in ${this.getCurrentLocation()}.`);
40
- }
41
- let result;
42
- if (acceptMultiple) {
43
- result = decorators.map((d) => d.arguments);
44
- }
45
- else {
46
- const d = decorators[0];
47
- result = d.arguments;
48
- }
49
- return result;
29
+ return '';
50
30
  }
51
31
  // -------------------------------------------
52
32
  getSecurity() {
53
- const securities = this.getDecoratorValues('Security', true);
54
- if (!securities || !securities.length) {
55
- return undefined;
33
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.SECURITY, this.node);
34
+ if (typeof representation === 'undefined') {
35
+ return [];
56
36
  }
57
- return securities.map((security) => {
58
- const rolesArray = security[0] ? this.handleRolesArray(security[0]) : [];
59
- return {
60
- name: security[1] ? security[1] : 'default',
61
- scopes: rolesArray,
62
- };
63
- });
64
- }
65
- handleRolesArray(argument) {
66
- if ((0, typescript_1.isArrayLiteralExpression)(argument)) {
67
- return argument.elements.map((value) => value.getText())
68
- .map((val) => ((val && val.startsWith('\'') && val.endsWith('\'')) ? val.slice(1, -1) : val));
37
+ const securities = [];
38
+ for (let i = 0; i < representation.decorators.length; i++) {
39
+ let name = representation.get('key');
40
+ // todo: check if Record<string, string[]>
41
+ if ((0, locter_1.isObject)(name)) {
42
+ securities.push(name);
43
+ }
44
+ else {
45
+ if (typeof name !== 'string' || !name) {
46
+ name = 'default';
47
+ }
48
+ const scopes = representation.get('value');
49
+ if (Array.isArray(scopes)) {
50
+ securities.push({
51
+ [name]: scopes,
52
+ });
53
+ }
54
+ }
69
55
  }
70
- return argument;
56
+ return securities;
71
57
  }
72
58
  // -------------------------------------------
73
59
  getExamplesValue(argument) {
@@ -86,17 +72,23 @@ class AbstractGenerator {
86
72
  return example;
87
73
  }
88
74
  // -------------------------------------------
89
- getResponses() {
90
- const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.RESPONSE_DESCRIPTION, this.node);
75
+ buildResponses() {
76
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.DESCRIPTION, this.node);
91
77
  if (typeof representation === 'undefined') {
92
78
  return [];
93
79
  }
94
80
  const responses = [];
95
81
  for (let i = 0; i < representation.decorators.length; i++) {
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');
82
+ const description = representation.get('description', i) || 'Ok';
83
+ const status = representation.get('statusCode', i) || '200';
84
+ const payload = representation.get('payload', i);
85
+ const examples = [];
86
+ if (typeof payload !== 'undefined') {
87
+ examples.push({
88
+ value: payload,
89
+ });
90
+ }
91
+ const type = representation.get('type');
100
92
  const response = {
101
93
  description,
102
94
  examples,
@@ -110,22 +102,22 @@ class AbstractGenerator {
110
102
  }
111
103
  // -------------------------------------------
112
104
  getProduces() {
113
- const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.RESPONSE_PRODUCES, this.node);
105
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.PRODUCES, this.node);
114
106
  if (typeof representation === 'undefined') {
115
107
  return [];
116
108
  }
117
- const value = representation.getPropertyValue('value');
109
+ const value = representation.get('value');
118
110
  if (typeof value === 'undefined') {
119
111
  return [];
120
112
  }
121
113
  return Array.isArray(value) ? value : [value];
122
114
  }
123
115
  getConsumes() {
124
- const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.REQUEST_CONSUMES, this.node);
116
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.CONSUMES, this.node);
125
117
  if (typeof representation === 'undefined') {
126
118
  return [];
127
119
  }
128
- let value = representation.getPropertyValue('value');
120
+ let value = representation.get('value');
129
121
  if (typeof value === 'undefined') {
130
122
  return [];
131
123
  }
@@ -133,11 +125,11 @@ class AbstractGenerator {
133
125
  return value;
134
126
  }
135
127
  getTags() {
136
- const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.SWAGGER_TAGS, this.node);
128
+ const representation = this.current.decoratorResolver.match(decorator_1.DecoratorID.TAGS, this.node);
137
129
  if (typeof representation === 'undefined') {
138
130
  return [];
139
131
  }
140
- let value = representation.getPropertyValue('value');
132
+ let value = representation.get('value');
141
133
  if (typeof value === 'undefined') {
142
134
  return [];
143
135
  }
@@ -149,7 +141,7 @@ class AbstractGenerator {
149
141
  return typeof this.current.decoratorResolver.match(decorator_1.DecoratorID.HIDDEN, node) !== 'undefined';
150
142
  }
151
143
  isDeprecated(node) {
152
- if ((0, utils_1.isExistJSDocTag)(node, (tag) => tag.tagName.text === 'deprecated')) {
144
+ if ((0, utils_1.hasJSDocTag)(node, utils_1.JSDocTagName.DEPRECATED)) {
153
145
  return true;
154
146
  }
155
147
  return typeof this.current.decoratorResolver.match(decorator_1.DecoratorID.DEPRECATED, node) !== 'undefined';
@@ -1 +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,uBAAe,EAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE;YACnE,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"}
1
+ {"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../src/generator/abstract.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import type { ClassDeclaration } from 'typescript';
2
2
  import { AbstractGenerator } from '../abstract';
3
+ import type { Method } from '../method';
3
4
  import type { MetadataGenerator } from '../metadata';
4
5
  import type { Controller } from './type';
5
6
  export declare class ControllerGenerator extends AbstractGenerator<ClassDeclaration> {
6
- private genMethods;
7
7
  constructor(node: ClassDeclaration, current: MetadataGenerator);
8
8
  isValid(): boolean;
9
9
  generate(): Controller;
10
10
  protected getCurrentLocation(): string;
11
- private buildMethods;
11
+ protected buildMethods(controllerPath: string): Method[];
12
12
  }
13
13
  //# sourceMappingURL=module.d.ts.map
@@ -1 +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
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/generator/controller/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,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;gBAE5D,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,iBAAiB;IAIvD,OAAO,IAAK,OAAO;IASnB,QAAQ,IAAI,UAAU;IAsB7B,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAItC,SAAS,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,GAAI,MAAM,EAAE;CAwB5D"}
@@ -12,14 +12,13 @@ const decorator_1 = require("../../decorator");
12
12
  const abstract_1 = require("../abstract");
13
13
  const method_1 = require("../method");
14
14
  class ControllerGenerator extends abstract_1.AbstractGenerator {
15
- // --------------------------------------------------------------------
15
+ // eslint-disable-next-line no-useless-constructor,@typescript-eslint/no-useless-constructor
16
16
  constructor(node, current) {
17
17
  super(node, current);
18
- this.genMethods = new Set();
19
- this.generatePath(decorator_1.DecoratorID.CLASS_PATH);
20
18
  }
21
19
  isValid() {
22
- return !!this.path || this.path === '';
20
+ const isController = this.current.decoratorResolver.match(decorator_1.DecoratorID.CONTROLLER, this.node);
21
+ return !!isController;
23
22
  }
24
23
  generate() {
25
24
  if (!this.node.parent) {
@@ -29,34 +28,40 @@ class ControllerGenerator extends abstract_1.AbstractGenerator {
29
28
  throw new Error('Controller node doesn\'t have a valid name.');
30
29
  }
31
30
  const sourceFile = this.node.parent.getSourceFile();
31
+ const path = this.buildPath();
32
32
  return {
33
33
  consumes: this.getConsumes(),
34
+ hidden: this.isHidden(this.node),
34
35
  location: sourceFile.fileName,
35
- methods: this.buildMethods(),
36
36
  name: this.getCurrentLocation(),
37
- path: this.path || '',
37
+ path,
38
38
  produces: this.getProduces(),
39
- responses: this.getResponses(),
39
+ responses: this.buildResponses(),
40
40
  security: this.getSecurity(),
41
41
  tags: this.getTags(),
42
+ methods: this.buildMethods(path),
42
43
  };
43
44
  }
44
45
  getCurrentLocation() {
45
46
  return this.node.name.text;
46
47
  }
47
- buildMethods() {
48
- return this.node.members
49
- .filter((method) => (method.kind === typescript_1.SyntaxKind.MethodDeclaration))
50
- .filter((method) => !this.isHidden(method))
51
- .map((method) => new method_1.MethodGenerator(method, this.current, this.path || ''))
52
- .filter((generator) => {
53
- if (generator.isValid() && !this.genMethods.has(generator.getMethodName())) {
54
- this.genMethods.add(generator.getMethodName());
55
- return true;
48
+ buildMethods(controllerPath) {
49
+ const set = new Set();
50
+ const output = [];
51
+ for (let i = 0; i < this.node.members.length; i++) {
52
+ const node = this.node.members[i];
53
+ if (!(0, typescript_1.isMethodDeclaration)(node) || this.isHidden(node)) {
54
+ continue;
56
55
  }
57
- return false;
58
- })
59
- .map((generator) => generator.generate());
56
+ const generator = new method_1.MethodGenerator(node, this.current);
57
+ const methodName = generator.getMethodName();
58
+ if (set.has(methodName) || !generator.isValid()) {
59
+ continue;
60
+ }
61
+ set.add(methodName);
62
+ output.push(generator.generate(controllerPath));
63
+ }
64
+ return output;
60
65
  }
61
66
  }
62
67
  exports.ControllerGenerator = ControllerGenerator;
@@ -1 +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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/generator/controller/module.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,2CAAiD;AACjD,+CAA8C;AAC9C,0CAAgD;AAEhD,sCAA4C;AAI5C,MAAa,mBAAoB,SAAQ,4BAAmC;IACxE,4FAA4F;IAC5F,YAAY,IAAsB,EAAE,OAA0B;QAC1D,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAEM,OAAO;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CACrD,uBAAW,CAAC,UAAU,EACtB,IAAI,CAAC,IAAI,CACZ,CAAC;QAEF,OAAO,CAAC,CAAC,YAAY,CAAC;IAC1B,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,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE9B,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;YAC/B,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE;YAChC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;YACpB,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;SACnC,CAAC;IACN,CAAC;IAES,kBAAkB;QACxB,OAAQ,IAAI,CAAC,IAAyB,CAAC,IAAI,CAAC,IAAI,CAAC;IACrD,CAAC;IAES,YAAY,CAAC,cAAsB;QACzC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9B,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAElC,IAAI,CAAC,IAAA,gCAAmB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACnD,SAAS;aACZ;YAED,MAAM,SAAS,GAAG,IAAI,wBAAe,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;YAC7C,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE;gBAC7C,SAAS;aACZ;YAED,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAEpB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;SACnD;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAjED,kDAiEC"}
@@ -1,6 +1,18 @@
1
1
  import type { Response, Security } from '../type';
2
2
  import type { Method } from '../method';
3
3
  export interface Controller {
4
+ /**
5
+ * Allowed Content-Types to pass
6
+ * data according the definition.
7
+ *
8
+ * i.e. ['application/json']
9
+ */
10
+ consumes: string[];
11
+ /**
12
+ * Is controller hidden, and should
13
+ * not be used/displayed in some scenarios.
14
+ */
15
+ hidden: boolean;
4
16
  /**
5
17
  * File Location of the Controller.
6
18
  */
@@ -15,13 +27,6 @@ export interface Controller {
15
27
  * The relative URL Path, i.e /users
16
28
  */
17
29
  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
30
  /**
26
31
  * Possible Content-Types to receive
27
32
  * data according the definition.
@@ -1 +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"}
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;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;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;IAEb;;;;;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"}
@@ -1,3 +1,4 @@
1
1
  export * from './module';
2
2
  export * from './type';
3
+ export * from './utils';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generator/metadata/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -22,4 +22,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
23
  __exportStar(require("./module"), exports);
24
24
  __exportStar(require("./type"), exports);
25
+ __exportStar(require("./utils"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/metadata/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/metadata/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB"}
@@ -34,8 +34,6 @@ export declare class MetadataGenerator {
34
34
  addReferenceType(referenceType: ReferenceType): void;
35
35
  getReferenceType(refName: string): ReferenceType;
36
36
  registerDependencyResolver(callback: DependencyResolver): void;
37
- getClassDeclaration(className: string): Node;
38
- getInterfaceDeclaration(className: string): Node;
39
37
  private buildControllers;
40
38
  }
41
39
  //# sourceMappingURL=module.d.ts.map
@@ -1 +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
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/generator/metadata/module.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACR,IAAI,EAAuB,WAAW,EACzC,MAAM,YAAY,CAAC;AAKpB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,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;IAI9D,OAAO,CAAC,gBAAgB;CAiB3B"}
@@ -12,10 +12,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.MetadataGenerator = void 0;
13
13
  const minimatch_1 = __importDefault(require("minimatch"));
14
14
  const typescript_1 = require("typescript");
15
+ const cache_1 = require("../../cache");
15
16
  const decorator_1 = require("../../decorator");
16
17
  const resolver_1 = require("../../resolver");
17
18
  const controller_1 = require("../controller");
18
- const cache_1 = require("../../cache");
19
19
  class MetadataGenerator {
20
20
  // -------------------------------------------------------------------------
21
21
  constructor(context) {
@@ -124,39 +124,19 @@ class MetadataGenerator {
124
124
  registerDependencyResolver(callback) {
125
125
  this.circularDependencyResolvers.push(callback);
126
126
  }
127
- getClassDeclaration(className) {
128
- const found = this.nodes
129
- .filter((node) => {
130
- const classDeclaration = node;
131
- return (node.kind === typescript_1.SyntaxKind.ClassDeclaration && classDeclaration.name && classDeclaration.name.text === className);
132
- });
133
- if (found && found.length) {
134
- return found[0];
135
- }
136
- return undefined;
137
- }
138
- getInterfaceDeclaration(className) {
139
- const found = this.nodes
140
- .filter((node) => {
141
- const interfaceDeclaration = node;
142
- return (node.kind === typescript_1.SyntaxKind.InterfaceDeclaration && interfaceDeclaration.name && interfaceDeclaration.name.text === className);
143
- });
144
- if (found && found.length) {
145
- return found[0];
146
- }
147
- return undefined;
148
- }
149
127
  buildControllers() {
150
- this.controllers = this.nodes
151
- .filter((node) => node.kind === typescript_1.SyntaxKind.ClassDeclaration)
152
- .filter((node) => {
153
- const isHidden = this.decoratorResolver.match(decorator_1.DecoratorID.HIDDEN, node);
154
- return typeof isHidden === 'undefined';
155
- })
156
- .filter((node) => typeof this.decoratorResolver.match(decorator_1.DecoratorID.CLASS_PATH, node) !== 'undefined')
157
- .map((classDeclaration) => new controller_1.ControllerGenerator(classDeclaration, this))
158
- .filter((generator) => generator.isValid())
159
- .map((generator) => generator.generate());
128
+ this.controllers = [];
129
+ for (let i = 0; i < this.nodes.length; i++) {
130
+ const node = this.nodes[i];
131
+ if (!(0, typescript_1.isClassDeclaration)(node)) {
132
+ continue;
133
+ }
134
+ const generator = new controller_1.ControllerGenerator(node, this);
135
+ if (!generator.isValid()) {
136
+ continue;
137
+ }
138
+ this.controllers.push(generator.generate());
139
+ }
160
140
  }
161
141
  }
162
142
  exports.MetadataGenerator = MetadataGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/generator/metadata/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/generator/metadata/module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Metadata } from './type';
2
+ export declare function isMetadata(input: unknown): input is Metadata;
3
+ //# sourceMappingURL=utils.d.ts.map