@trapi/metadata 0.4.1 → 1.0.0-alpha.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.
- package/README.md +36 -72
- package/dist/cache/driver.d.ts +6 -6
- package/dist/cache/driver.d.ts.map +1 -1
- package/dist/cache/driver.js +27 -45
- package/dist/cache/driver.js.map +1 -1
- package/dist/cache/type.d.ts +31 -32
- package/dist/cache/type.d.ts.map +1 -1
- package/dist/cache/utils.d.ts +3 -3
- package/dist/cache/utils.d.ts.map +1 -1
- package/dist/cache/utils.js +29 -24
- package/dist/cache/utils.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/type.d.ts +37 -0
- package/dist/config/type.d.ts.map +1 -0
- package/dist/config/type.js +9 -0
- package/dist/config/type.js.map +1 -0
- package/dist/decorator/constants.d.ts +40 -0
- package/dist/decorator/constants.d.ts.map +1 -0
- package/dist/decorator/constants.js +52 -0
- package/dist/decorator/constants.js.map +1 -0
- package/dist/decorator/index.d.ts +7 -0
- package/dist/decorator/index.d.ts.map +1 -0
- package/dist/decorator/index.js +29 -0
- package/dist/decorator/index.js.map +1 -0
- package/dist/decorator/preset/index.d.ts +3 -0
- package/dist/decorator/preset/index.d.ts.map +1 -0
- package/dist/decorator/preset/index.js +25 -0
- package/dist/decorator/preset/index.js.map +1 -0
- package/dist/decorator/preset/type.d.ts +6 -0
- package/dist/decorator/preset/type.d.ts.map +1 -0
- package/dist/decorator/preset/type.js +9 -0
- package/dist/decorator/preset/type.js.map +1 -0
- package/dist/decorator/preset/utils/check.d.ts +3 -0
- package/dist/decorator/preset/utils/check.d.ts.map +1 -0
- package/dist/decorator/preset/utils/check.js +18 -0
- package/dist/decorator/preset/utils/check.js.map +1 -0
- package/dist/decorator/preset/utils/index.d.ts +4 -0
- package/dist/decorator/preset/utils/index.d.ts.map +1 -0
- package/dist/decorator/preset/utils/index.js +26 -0
- package/dist/decorator/preset/utils/index.js.map +1 -0
- package/dist/decorator/preset/utils/load.d.ts +3 -0
- package/dist/decorator/preset/utils/load.d.ts.map +1 -0
- package/dist/decorator/preset/utils/load.js +48 -0
- package/dist/decorator/preset/utils/load.js.map +1 -0
- package/dist/decorator/preset/utils/normalize.d.ts +2 -0
- package/dist/decorator/preset/utils/normalize.d.ts.map +1 -0
- package/dist/decorator/preset/utils/normalize.js +27 -0
- package/dist/decorator/preset/utils/normalize.js.map +1 -0
- package/dist/decorator/property-manager/index.d.ts +3 -0
- package/dist/decorator/property-manager/index.d.ts.map +1 -0
- package/dist/decorator/property-manager/index.js +25 -0
- package/dist/decorator/property-manager/index.js.map +1 -0
- package/dist/decorator/property-manager/module.d.ts +19 -0
- package/dist/decorator/property-manager/module.d.ts.map +1 -0
- package/dist/decorator/property-manager/module.js +65 -0
- package/dist/decorator/property-manager/module.js.map +1 -0
- package/dist/decorator/property-manager/utils.d.ts +7 -0
- package/dist/decorator/property-manager/utils.d.ts.map +1 -0
- package/dist/decorator/property-manager/utils.js +121 -0
- package/dist/decorator/property-manager/utils.js.map +1 -0
- package/dist/decorator/resolver/index.d.ts +3 -0
- package/dist/decorator/resolver/index.d.ts.map +1 -0
- package/dist/decorator/resolver/index.js +25 -0
- package/dist/decorator/resolver/index.js.map +1 -0
- package/dist/decorator/resolver/module.d.ts +27 -0
- package/dist/decorator/resolver/module.d.ts.map +1 -0
- package/dist/decorator/resolver/module.js +72 -0
- package/dist/decorator/resolver/module.js.map +1 -0
- package/dist/decorator/resolver/type.d.ts +10 -0
- package/dist/decorator/resolver/type.d.ts.map +1 -0
- package/dist/decorator/resolver/type.js +3 -0
- package/dist/decorator/resolver/type.js.map +1 -0
- package/dist/decorator/sets/class.d.ts +7 -0
- package/dist/decorator/sets/class.d.ts.map +1 -0
- package/dist/decorator/sets/class.js +9 -0
- package/dist/decorator/sets/class.js.map +1 -0
- package/dist/decorator/sets/index.d.ts +8 -0
- package/dist/decorator/sets/index.d.ts.map +1 -0
- package/dist/decorator/sets/index.js +29 -0
- package/dist/decorator/sets/index.js.map +1 -0
- package/dist/decorator/sets/method.d.ts +14 -0
- package/dist/decorator/sets/method.d.ts.map +1 -0
- package/dist/decorator/sets/method.js +9 -0
- package/dist/decorator/sets/method.js.map +1 -0
- package/dist/decorator/sets/mixed.d.ts +8 -0
- package/dist/decorator/sets/mixed.d.ts.map +1 -0
- package/dist/decorator/sets/mixed.js +9 -0
- package/dist/decorator/sets/mixed.js.map +1 -0
- package/dist/decorator/sets/parameter.d.ts +21 -0
- package/dist/decorator/sets/parameter.d.ts.map +1 -0
- package/dist/decorator/sets/parameter.js +9 -0
- package/dist/decorator/sets/parameter.js.map +1 -0
- package/dist/decorator/sets/request.d.ts +6 -0
- package/dist/decorator/sets/request.d.ts.map +1 -0
- package/dist/decorator/sets/request.js +9 -0
- package/dist/decorator/sets/request.js.map +1 -0
- package/dist/decorator/sets/response.d.ts +16 -0
- package/dist/decorator/sets/response.d.ts.map +1 -0
- package/dist/decorator/sets/response.js +9 -0
- package/dist/decorator/sets/response.js.map +1 -0
- package/dist/decorator/sets/type.d.ts +4 -0
- package/dist/decorator/sets/type.d.ts.map +1 -0
- package/dist/decorator/sets/type.js +3 -0
- package/dist/decorator/sets/type.js.map +1 -0
- package/dist/decorator/type.d.ts +39 -0
- package/dist/decorator/type.d.ts.map +1 -0
- package/dist/decorator/type.js +9 -0
- package/dist/decorator/type.js.map +1 -0
- package/dist/error/base.d.ts +3 -0
- package/dist/error/base.d.ts.map +1 -0
- package/dist/error/base.js +13 -0
- package/dist/error/base.js.map +1 -0
- package/dist/error/index.d.ts +3 -0
- package/dist/error/index.d.ts.map +1 -0
- package/dist/{errors → error}/index.js +1 -0
- package/dist/error/index.js.map +1 -0
- package/dist/error/parameter-invalid.d.ts +4 -0
- package/dist/error/parameter-invalid.d.ts.map +1 -0
- package/dist/{errors → error}/parameter-invalid.js +2 -1
- package/dist/error/parameter-invalid.js.map +1 -0
- package/dist/generator/{endpoint.d.ts → abstract.d.ts} +9 -8
- package/dist/generator/abstract.d.ts.map +1 -0
- package/dist/generator/{endpoint.js → abstract.js} +26 -25
- package/dist/generator/abstract.js.map +1 -0
- package/dist/generator/controller/index.d.ts +3 -0
- package/dist/generator/controller/index.d.ts.map +1 -0
- package/dist/generator/controller/index.js +25 -0
- package/dist/generator/controller/index.js.map +1 -0
- package/dist/generator/controller/module.d.ts +13 -0
- package/dist/generator/controller/module.d.ts.map +1 -0
- package/dist/generator/{controller.js → controller/module.js} +7 -6
- package/dist/generator/controller/module.js.map +1 -0
- package/dist/generator/controller/type.d.ts +42 -0
- package/dist/generator/controller/type.d.ts.map +1 -0
- package/dist/generator/controller/type.js +3 -0
- package/dist/generator/controller/type.js.map +1 -0
- package/dist/generator/index.d.ts +3 -3
- package/dist/generator/index.d.ts.map +1 -1
- package/dist/generator/index.js +3 -3
- package/dist/generator/index.js.map +1 -1
- package/dist/generator/metadata/index.d.ts +3 -0
- package/dist/generator/metadata/index.d.ts.map +1 -0
- package/dist/generator/metadata/index.js +25 -0
- package/dist/generator/metadata/index.js.map +1 -0
- package/dist/generator/{module.d.ts → metadata/module.d.ts} +10 -9
- package/dist/generator/metadata/module.d.ts.map +1 -0
- package/dist/generator/{module.js → metadata/module.js} +22 -39
- package/dist/generator/metadata/module.js.map +1 -0
- package/dist/generator/metadata/type.d.ts +25 -0
- package/dist/generator/metadata/type.d.ts.map +1 -0
- package/dist/generator/metadata/type.js +3 -0
- package/dist/generator/metadata/type.js.map +1 -0
- package/dist/generator/method/constants.d.ts +11 -0
- package/dist/generator/method/constants.d.ts.map +1 -0
- package/dist/generator/method/constants.js +21 -0
- package/dist/generator/method/constants.js.map +1 -0
- package/dist/generator/method/index.d.ts +4 -0
- package/dist/generator/method/index.d.ts.map +1 -0
- package/dist/generator/method/index.js +26 -0
- package/dist/generator/method/index.js.map +1 -0
- package/dist/generator/{method.d.ts → method/module.d.ts} +6 -6
- package/dist/generator/method/module.d.ts.map +1 -0
- package/dist/generator/{method.js → method/module.js} +37 -33
- package/dist/generator/method/module.js.map +1 -0
- package/dist/generator/method/type.d.ts +30 -0
- package/dist/generator/method/type.d.ts.map +1 -0
- package/dist/generator/method/type.js +9 -0
- package/dist/generator/method/type.js.map +1 -0
- package/dist/generator/parameter/index.d.ts +4 -0
- package/dist/generator/parameter/index.d.ts.map +1 -0
- package/dist/generator/parameter/index.js +26 -0
- package/dist/generator/parameter/index.js.map +1 -0
- package/dist/generator/{parameter.d.ts → parameter/module.d.ts} +4 -4
- package/dist/generator/parameter/module.d.ts.map +1 -0
- package/dist/generator/{parameter.js → parameter/module.js} +70 -63
- package/dist/generator/parameter/module.js.map +1 -0
- package/dist/generator/parameter/type.d.ts +22 -0
- package/dist/generator/parameter/type.d.ts.map +1 -0
- package/dist/generator/parameter/type.js +9 -0
- package/dist/generator/parameter/type.js.map +1 -0
- package/dist/generator/parameter/validator.d.ts +4 -0
- package/dist/generator/parameter/validator.d.ts.map +1 -0
- package/dist/generator/parameter/validator.js +130 -0
- package/dist/generator/parameter/validator.js.map +1 -0
- package/dist/generator/type.d.ts +16 -0
- package/dist/generator/type.d.ts.map +1 -0
- package/dist/generator/type.js +9 -0
- package/dist/generator/type.js.map +1 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/module.d.ts +4 -3
- package/dist/module.d.ts.map +1 -1
- package/dist/module.js +20 -2
- package/dist/module.js.map +1 -1
- package/dist/resolver/error.d.ts +8 -0
- package/dist/resolver/error.d.ts.map +1 -0
- package/dist/resolver/error.js +41 -0
- package/dist/resolver/error.js.map +1 -0
- package/dist/resolver/index.d.ts +4 -0
- package/dist/resolver/index.d.ts.map +1 -0
- package/dist/resolver/index.js +26 -0
- package/dist/resolver/index.js.map +1 -0
- package/dist/resolver/module.d.ts +51 -0
- package/dist/resolver/module.d.ts.map +1 -0
- package/dist/resolver/module.js +1081 -0
- package/dist/resolver/module.js.map +1 -0
- package/dist/resolver/type.d.ts +126 -0
- package/dist/resolver/type.d.ts.map +1 -0
- package/dist/resolver/type.js +54 -0
- package/dist/resolver/type.js.map +1 -0
- package/dist/type.d.ts +0 -149
- package/dist/type.d.ts.map +1 -1
- package/dist/type.js +0 -6
- package/dist/type.js.map +1 -1
- package/dist/utils/index.d.ts +6 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +6 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/initializer.d.ts +5 -0
- package/dist/utils/initializer.d.ts.map +1 -0
- package/dist/utils/initializer.js +131 -0
- package/dist/utils/initializer.js.map +1 -0
- package/dist/utils/js-doc.d.ts +8 -0
- package/dist/utils/js-doc.d.ts.map +1 -0
- package/dist/utils/js-doc.js +101 -0
- package/dist/utils/js-doc.js.map +1 -0
- package/dist/utils/node/index.d.ts +3 -0
- package/dist/utils/node/index.d.ts.map +1 -0
- package/dist/utils/node/index.js +25 -0
- package/dist/utils/node/index.js.map +1 -0
- package/dist/utils/node/module.d.ts +10 -0
- package/dist/utils/node/module.d.ts.map +1 -0
- package/dist/utils/node/module.js +52 -0
- package/dist/utils/node/module.js.map +1 -0
- package/dist/utils/node/type.d.ts +6 -0
- package/dist/utils/node/type.d.ts.map +1 -0
- package/dist/utils/node/type.js +9 -0
- package/dist/utils/node/type.js.map +1 -0
- package/dist/utils/{path.d.ts → path-normalize.d.ts} +1 -1
- package/dist/utils/path-normalize.d.ts.map +1 -0
- package/dist/utils/{path.js → path-normalize.js} +1 -1
- package/dist/utils/path-normalize.js.map +1 -0
- package/dist/utils/source-files.d.ts +3 -0
- package/dist/utils/source-files.d.ts.map +1 -0
- package/dist/utils/source-files.js +32 -0
- package/dist/utils/source-files.js.map +1 -0
- package/dist/utils/tsconfig/index.d.ts +3 -0
- package/dist/utils/tsconfig/index.d.ts.map +1 -0
- package/dist/utils/tsconfig/index.js +25 -0
- package/dist/utils/tsconfig/index.js.map +1 -0
- package/dist/utils/tsconfig/module.d.ts +4 -0
- package/dist/utils/tsconfig/module.d.ts.map +1 -0
- package/dist/utils/tsconfig/module.js +54 -0
- package/dist/utils/tsconfig/module.js.map +1 -0
- package/dist/utils/tsconfig/type.d.ts +10 -0
- package/dist/utils/tsconfig/type.d.ts.map +1 -0
- package/dist/utils/tsconfig/type.js +9 -0
- package/dist/utils/tsconfig/type.js.map +1 -0
- package/package.json +11 -12
- package/dist/config/path.d.ts +0 -3
- package/dist/config/path.d.ts.map +0 -1
- package/dist/config/path.js +0 -32
- package/dist/config/path.js.map +0 -1
- package/dist/errors/index.d.ts +0 -2
- package/dist/errors/index.d.ts.map +0 -1
- package/dist/errors/index.js.map +0 -1
- package/dist/errors/parameter-invalid.d.ts +0 -3
- package/dist/errors/parameter-invalid.d.ts.map +0 -1
- package/dist/errors/parameter-invalid.js.map +0 -1
- package/dist/generator/controller.d.ts +0 -13
- package/dist/generator/controller.d.ts.map +0 -1
- package/dist/generator/controller.js.map +0 -1
- package/dist/generator/endpoint.d.ts.map +0 -1
- package/dist/generator/endpoint.js.map +0 -1
- package/dist/generator/method.d.ts.map +0 -1
- package/dist/generator/method.js.map +0 -1
- package/dist/generator/module.d.ts.map +0 -1
- package/dist/generator/module.js.map +0 -1
- package/dist/generator/parameter.d.ts.map +0 -1
- package/dist/generator/parameter.js.map +0 -1
- package/dist/generator/utils.d.ts +0 -5
- package/dist/generator/utils.d.ts.map +0 -1
- package/dist/generator/utils.js +0 -18
- package/dist/generator/utils.js.map +0 -1
- package/dist/utils/path.d.ts.map +0 -1
- package/dist/utils/path.js.map +0 -1
- package/dist/utils/typescript.d.ts +0 -8
- package/dist/utils/typescript.d.ts.map +0 -1
- package/dist/utils/typescript.js +0 -41
- 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.
|
|
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
|
|
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.
|
|
23
|
+
const representation = this.current.decoratorResolver.match(key, this.node);
|
|
23
24
|
if (typeof representation !== 'undefined') {
|
|
24
|
-
const value = representation.getPropertyValue('
|
|
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,
|
|
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,
|
|
80
|
+
example[p.name.text] = (0, utils_1.getInitializerValue)(p.initializer, this.current.typeChecker);
|
|
80
81
|
});
|
|
81
82
|
}
|
|
82
83
|
else {
|
|
83
|
-
example = (0,
|
|
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.
|
|
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('
|
|
96
|
-
const status = representation.getPropertyValue('
|
|
97
|
-
const examples = representation.getPropertyValue('
|
|
98
|
-
const type = representation.getPropertyValue('
|
|
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
|
|
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.
|
|
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('
|
|
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.
|
|
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('
|
|
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.
|
|
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('
|
|
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.
|
|
149
|
+
return typeof this.current.decoratorResolver.match(decorator_1.DecoratorID.HIDDEN, node) !== 'undefined';
|
|
149
150
|
}
|
|
150
151
|
isDeprecated(node) {
|
|
151
|
-
if ((0,
|
|
152
|
+
if ((0, utils_1.isExistJSDocTag)(node, (tag) => tag.tagName.text === 'deprecated')) {
|
|
152
153
|
return true;
|
|
153
154
|
}
|
|
154
|
-
return typeof this.current.
|
|
155
|
+
return typeof this.current.decoratorResolver.match(decorator_1.DecoratorID.DEPRECATED, node) !== 'undefined';
|
|
155
156
|
}
|
|
156
157
|
}
|
|
157
|
-
exports.
|
|
158
|
-
//# sourceMappingURL=
|
|
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":"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"}
|
|
@@ -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
|
|
12
|
-
const
|
|
13
|
-
|
|
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(
|
|
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=
|
|
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 @@
|
|
|
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 './
|
|
4
|
+
export * from './metadata';
|
|
5
5
|
export * from './parameter';
|
|
6
|
-
export * from './
|
|
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,
|
|
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"}
|
package/dist/generator/index.js
CHANGED
|
@@ -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("./
|
|
26
|
+
__exportStar(require("./metadata"), exports);
|
|
27
27
|
__exportStar(require("./parameter"), exports);
|
|
28
|
-
__exportStar(require("./
|
|
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,
|
|
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 @@
|
|
|
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 {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
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
|
|
8
|
-
readonly 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(
|
|
15
|
-
generate():
|
|
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
|
|
18
|
-
const
|
|
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(
|
|
21
|
+
constructor(context) {
|
|
22
22
|
this.referenceTypes = {};
|
|
23
23
|
this.circularDependencyResolvers = new Array();
|
|
24
24
|
this.nodes = [];
|
|
25
|
-
this.config =
|
|
26
|
-
this.cache = new cache_1.CacheDriver(
|
|
27
|
-
this.
|
|
28
|
-
|
|
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.
|
|
153
|
+
const isHidden = this.decoratorResolver.match(decorator_1.DecoratorID.HIDDEN, node);
|
|
171
154
|
return typeof isHidden === 'undefined';
|
|
172
155
|
})
|
|
173
|
-
.filter((node) => typeof this.
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/generator/metadata/type.ts"],"names":[],"mappings":""}
|
|
@@ -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"}
|