nestia 3.0.5 → 3.0.8-dev.20220708
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/lib/NestiaApplication.js +102 -288
- package/lib/NestiaApplication.js.map +1 -1
- package/lib/analyses/ControllerAnalyzer.js +43 -126
- package/lib/analyses/ControllerAnalyzer.js.map +1 -1
- package/lib/analyses/GenericAnalyzer.js +21 -57
- package/lib/analyses/GenericAnalyzer.js.map +1 -1
- package/lib/analyses/ImportAnalyzer.js +16 -20
- package/lib/analyses/ImportAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectAnalyzer.js +61 -185
- package/lib/analyses/ReflectAnalyzer.js.map +1 -1
- package/lib/analyses/SourceFinder.js +30 -197
- package/lib/analyses/SourceFinder.js.map +1 -1
- package/lib/executable/internal/CompilerOptions.js +18 -82
- package/lib/executable/internal/CompilerOptions.js.map +1 -1
- package/lib/executable/internal/NestiaCommand.js +58 -179
- package/lib/executable/internal/NestiaCommand.js.map +1 -1
- package/lib/executable/internal/NestiaConfig.js +450 -446
- package/lib/executable/internal/NestiaConfig.js.map +1 -1
- package/lib/executable/internal/nestia.config.getter.js +6 -42
- package/lib/executable/internal/nestia.config.getter.js.map +1 -1
- package/lib/executable/nestia.js +18 -84
- package/lib/executable/nestia.js.map +1 -1
- package/lib/generates/FileGenerator.js +80 -255
- package/lib/generates/FileGenerator.js.map +1 -1
- package/lib/generates/FunctionGenerator.js +65 -118
- package/lib/generates/FunctionGenerator.js.map +1 -1
- package/lib/generates/SdkGenerator.js +22 -103
- package/lib/generates/SdkGenerator.js.map +1 -1
- package/lib/generates/SwaggerGenerator.js +122 -261
- package/lib/generates/SwaggerGenerator.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/structures/TypeEntry.js +8 -9
- package/lib/structures/TypeEntry.js.map +1 -1
- package/lib/utils/ArrayUtil.js +13 -118
- package/lib/utils/ArrayUtil.js.map +1 -1
- package/lib/utils/DirectoryUtil.js +27 -132
- package/lib/utils/DirectoryUtil.js.map +1 -1
- package/lib/utils/ImportDictionary.js +24 -47
- package/lib/utils/ImportDictionary.js.map +1 -1
- package/lib/utils/MapUtil.js +2 -2
- package/lib/utils/MapUtil.js.map +1 -1
- package/lib/utils/StringUtil.js +2 -2
- package/lib/utils/StringUtil.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,52 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
-
if (ar || !(i in from)) {
|
|
21
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
-
ar[i] = from[i];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
|
-
};
|
|
27
|
-
var __values = (this && this.__values) || function(o) {
|
|
28
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
29
|
-
if (m) return m.call(o);
|
|
30
|
-
if (o && typeof o.length === "number") return {
|
|
31
|
-
next: function () {
|
|
32
|
-
if (o && i >= o.length) o = void 0;
|
|
33
|
-
return { value: o && o[i++], done: !o };
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
37
|
-
};
|
|
38
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
3
|
exports.FunctionGenerator = void 0;
|
|
40
|
-
|
|
41
|
-
|
|
4
|
+
const Pair_1 = require("tstl/utility/Pair");
|
|
5
|
+
const Vector_1 = require("tstl/container/Vector");
|
|
42
6
|
var FunctionGenerator;
|
|
43
7
|
(function (FunctionGenerator) {
|
|
44
8
|
function generate(config, route) {
|
|
45
|
-
|
|
46
|
-
|
|
9
|
+
const query = route.parameters.find((param) => param.category === "query");
|
|
10
|
+
const input = route.parameters.find((param) => param.category === "body");
|
|
47
11
|
return [head, body, tail]
|
|
48
|
-
.map(
|
|
49
|
-
.filter(
|
|
12
|
+
.map((closure) => closure(route, query, input, config))
|
|
13
|
+
.filter((str) => !!str)
|
|
50
14
|
.join("\n");
|
|
51
15
|
}
|
|
52
16
|
FunctionGenerator.generate = generate;
|
|
@@ -55,23 +19,21 @@ var FunctionGenerator;
|
|
|
55
19
|
--------------------------------------------------------- */
|
|
56
20
|
function body(route, query, input, config) {
|
|
57
21
|
// FETCH ARGUMENTS WITH REQUST BODY
|
|
58
|
-
|
|
59
|
-
|
|
22
|
+
const parameters = filter_parameters(route, query);
|
|
23
|
+
const fetchArguments = [
|
|
60
24
|
"connection",
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
25
|
+
`${route.name}.ENCRYPTED`,
|
|
26
|
+
`${route.name}.METHOD`,
|
|
27
|
+
`${route.name}.path(${parameters.map((p) => p.name).join(", ")})`,
|
|
64
28
|
];
|
|
65
29
|
if (input !== undefined) {
|
|
66
30
|
fetchArguments.push(input.name);
|
|
67
31
|
if (config.json === true)
|
|
68
|
-
fetchArguments.push(
|
|
32
|
+
fetchArguments.push(`${route.name}.stringify`);
|
|
69
33
|
}
|
|
70
|
-
|
|
34
|
+
const assertions = config.assert === true && route.parameters.length !== 0
|
|
71
35
|
? route.parameters
|
|
72
|
-
.map(
|
|
73
|
-
return " TSON.assertType<typeof ".concat(param.name, ">(").concat(param.name, ");");
|
|
74
|
-
})
|
|
36
|
+
.map((param) => ` TSON.assertType<typeof ${param.name}>(${param.name});`)
|
|
75
37
|
.join("\n") + "\n\n"
|
|
76
38
|
: "";
|
|
77
39
|
// RETURNS WITH FINALIZATION
|
|
@@ -79,13 +41,13 @@ var FunctionGenerator;
|
|
|
79
41
|
assertions +
|
|
80
42
|
" return Fetcher.fetch\n" +
|
|
81
43
|
" (\n" +
|
|
82
|
-
fetchArguments.map(
|
|
44
|
+
fetchArguments.map((param) => ` ${param}`).join(",\n") +
|
|
83
45
|
"\n" +
|
|
84
46
|
" );\n" +
|
|
85
47
|
"}");
|
|
86
48
|
}
|
|
87
49
|
function filter_parameters(route, query) {
|
|
88
|
-
|
|
50
|
+
const parameters = route.parameters.filter((param) => param.category === "param");
|
|
89
51
|
if (query)
|
|
90
52
|
parameters.push(query);
|
|
91
53
|
return parameters;
|
|
@@ -98,20 +60,20 @@ var FunctionGenerator;
|
|
|
98
60
|
// CONSTRUCT COMMENT
|
|
99
61
|
//----
|
|
100
62
|
// MAIN DESCRIPTION
|
|
101
|
-
|
|
102
|
-
.map(
|
|
103
|
-
.map(
|
|
63
|
+
const comments = route.comments
|
|
64
|
+
.map((part) => `${part.kind === "linkText" ? " " : ""}${part.text}`)
|
|
65
|
+
.map((str) => str.split("\r\n").join("\n"))
|
|
104
66
|
.join("")
|
|
105
67
|
.split("\n")
|
|
106
|
-
.filter(
|
|
68
|
+
.filter((str, i, array) => str !== "" || i !== array.length - 1);
|
|
107
69
|
if (comments.length)
|
|
108
70
|
comments.push("");
|
|
109
71
|
// FILTER TAGS (VULNERABLE PARAMETERS WOULD BE REMOVED)
|
|
110
|
-
|
|
72
|
+
const tagList = route.tags.filter((tag) => tag.text !== undefined);
|
|
111
73
|
if (tagList.length !== 0) {
|
|
112
|
-
|
|
74
|
+
const index = tagList.findIndex((t) => t.name === "param");
|
|
113
75
|
if (index !== -1) {
|
|
114
|
-
|
|
76
|
+
const capsule = Vector_1.Vector.wrap(tagList);
|
|
115
77
|
capsule.insert(capsule.nth(index), {
|
|
116
78
|
name: "param",
|
|
117
79
|
text: [
|
|
@@ -130,42 +92,41 @@ var FunctionGenerator;
|
|
|
130
92
|
],
|
|
131
93
|
});
|
|
132
94
|
}
|
|
133
|
-
comments.push
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
.join(""));
|
|
137
|
-
})), false), [""], false));
|
|
95
|
+
comments.push(...tagList.map((tag) => `@${tag.name} ${tag
|
|
96
|
+
.text.map((elem) => elem.text)
|
|
97
|
+
.join("")}`), "");
|
|
138
98
|
}
|
|
139
99
|
// COMPLETE THE COMMENT
|
|
140
|
-
comments.push(
|
|
100
|
+
comments.push(`@controller ${route.symbol}`, `@path ${route.method} ${route.path}`, `@nestia Generated by Nestia - https://github.com/samchon/nestia`);
|
|
141
101
|
//----
|
|
142
102
|
// FINALIZATION
|
|
143
103
|
//----
|
|
144
104
|
// REFORM PARAMETERS TEXT
|
|
145
|
-
|
|
146
|
-
"connection: IConnection"
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
105
|
+
const parameters = [
|
|
106
|
+
"connection: IConnection",
|
|
107
|
+
...route.parameters.map((param) => {
|
|
108
|
+
const type = param === query || param === input
|
|
109
|
+
? `Primitive<${route.name}.${param === query ? "Query" : "Input"}>`
|
|
110
|
+
: param.type.name;
|
|
111
|
+
return `${param.name}: ${type}`;
|
|
112
|
+
}),
|
|
113
|
+
];
|
|
153
114
|
// OUTPUT TYPE
|
|
154
|
-
|
|
115
|
+
const output = route.output.name === "void" ? "void" : `${route.name}.Output`;
|
|
155
116
|
// RETURNS WITH CONSTRUCTION
|
|
156
117
|
return ("" +
|
|
157
118
|
"/**\n" +
|
|
158
|
-
comments.map(
|
|
119
|
+
comments.map((str) => ` * ${str}`).join("\n") +
|
|
159
120
|
"\n" +
|
|
160
121
|
" */\n" +
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
122
|
+
`export function ${route.name}\n` +
|
|
123
|
+
` (\n` +
|
|
124
|
+
`${parameters.map((str) => ` ${str}`).join(",\n")}\n` +
|
|
125
|
+
` ): Promise<${output}>`);
|
|
165
126
|
}
|
|
166
127
|
function tail(route, query, input, config) {
|
|
167
128
|
// LIST UP TYPES
|
|
168
|
-
|
|
129
|
+
const types = [];
|
|
169
130
|
if (query !== undefined)
|
|
170
131
|
types.push(new Pair_1.Pair("Query", query.type.name));
|
|
171
132
|
if (input !== undefined)
|
|
@@ -173,58 +134,44 @@ var FunctionGenerator;
|
|
|
173
134
|
if (route.output.name !== "void")
|
|
174
135
|
types.push(new Pair_1.Pair("Output", route.output.name));
|
|
175
136
|
// PATH WITH PARAMETERS
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
return (
|
|
137
|
+
const parameters = filter_parameters(route, query);
|
|
138
|
+
const path = compute_path(query, parameters, route.path);
|
|
139
|
+
return (`export namespace ${route.name}\n` +
|
|
179
140
|
"{\n" +
|
|
180
141
|
(types.length !== 0
|
|
181
142
|
? types
|
|
182
|
-
.map(
|
|
183
|
-
return " export type ".concat(tuple.first, " = Primitive<").concat(tuple.second, ">;");
|
|
184
|
-
})
|
|
143
|
+
.map((tuple) => ` export type ${tuple.first} = Primitive<${tuple.second}>;`)
|
|
185
144
|
.join("\n") + "\n"
|
|
186
145
|
: "") +
|
|
187
146
|
"\n" +
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
147
|
+
` export const METHOD = "${route.method}" as const;\n` +
|
|
148
|
+
` export const PATH: string = "${route.path}";\n` +
|
|
149
|
+
` export const ENCRYPTED: Fetcher.IEncrypted = {\n` +
|
|
150
|
+
` request: ${input !== undefined && input.encrypted},\n` +
|
|
151
|
+
` response: ${route.encrypted},\n` +
|
|
152
|
+
` };\n` +
|
|
194
153
|
"\n" +
|
|
195
|
-
|
|
196
|
-
.map(
|
|
197
|
-
.join(", ")
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
154
|
+
` export function path(${parameters
|
|
155
|
+
.map((param) => `${param.name}: ${param.type.name}`)
|
|
156
|
+
.join(", ")}): string\n` +
|
|
157
|
+
` {\n` +
|
|
158
|
+
` return ${path};\n` +
|
|
159
|
+
` }\n` +
|
|
201
160
|
(config.json === true &&
|
|
202
161
|
(route.method === "POST" ||
|
|
203
162
|
route.method === "PUT" ||
|
|
204
163
|
route.method === "PATCH")
|
|
205
|
-
?
|
|
164
|
+
? ` export const stringify = (input: Input) => TSON.stringify(input);\n`
|
|
206
165
|
: "") +
|
|
207
166
|
"}");
|
|
208
167
|
}
|
|
209
168
|
function compute_path(query, parameters, path) {
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
var param = parameters_1_1.value;
|
|
214
|
-
if (param.category === "param")
|
|
215
|
-
path = path.replace(":".concat(param.field), "${".concat(param.name, "}"));
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
219
|
-
finally {
|
|
220
|
-
try {
|
|
221
|
-
if (parameters_1_1 && !parameters_1_1.done && (_a = parameters_1.return)) _a.call(parameters_1);
|
|
222
|
-
}
|
|
223
|
-
finally { if (e_1) throw e_1.error; }
|
|
224
|
-
}
|
|
169
|
+
for (const param of parameters)
|
|
170
|
+
if (param.category === "param")
|
|
171
|
+
path = path.replace(`:${param.field}`, `\${${param.name}}`);
|
|
225
172
|
return query !== undefined
|
|
226
|
-
?
|
|
227
|
-
:
|
|
173
|
+
? `\`${path}?\${new URLSearchParams(${query.name} as any).toString()}\``
|
|
174
|
+
: `\`${path}\``;
|
|
228
175
|
}
|
|
229
176
|
})(FunctionGenerator = exports.FunctionGenerator || (exports.FunctionGenerator = {}));
|
|
230
177
|
//# sourceMappingURL=FunctionGenerator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionGenerator.js","sourceRoot":"","sources":["../../src/generates/FunctionGenerator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FunctionGenerator.js","sourceRoot":"","sources":["../../src/generates/FunctionGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,118 +8,37 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
var __values = (this && this.__values) || function(o) {
|
|
39
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
40
|
-
if (m) return m.call(o);
|
|
41
|
-
if (o && typeof o.length === "number") return {
|
|
42
|
-
next: function () {
|
|
43
|
-
if (o && i >= o.length) o = void 0;
|
|
44
|
-
return { value: o && o[i++], done: !o };
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
48
|
-
};
|
|
49
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
13
|
};
|
|
52
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
15
|
exports.SdkGenerator = void 0;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
16
|
+
const fs_1 = __importDefault(require("fs"));
|
|
17
|
+
const path_1 = __importDefault(require("path"));
|
|
18
|
+
const DirectoryUtil_1 = require("../utils/DirectoryUtil");
|
|
19
|
+
const FileGenerator_1 = require("./FileGenerator");
|
|
58
20
|
var SdkGenerator;
|
|
59
21
|
(function (SdkGenerator) {
|
|
60
22
|
function generate(_checker, config, routeList) {
|
|
61
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
case 3: return [4 /*yield*/, fs_1.default.promises.readdir(SdkGenerator.BUNDLE_PATH)];
|
|
76
|
-
case 4:
|
|
77
|
-
bundle = _c.sent();
|
|
78
|
-
_c.label = 5;
|
|
79
|
-
case 5:
|
|
80
|
-
_c.trys.push([5, 12, 13, 14]);
|
|
81
|
-
bundle_1 = __values(bundle), bundle_1_1 = bundle_1.next();
|
|
82
|
-
_c.label = 6;
|
|
83
|
-
case 6:
|
|
84
|
-
if (!!bundle_1_1.done) return [3 /*break*/, 11];
|
|
85
|
-
file = bundle_1_1.value;
|
|
86
|
-
current = "".concat(SdkGenerator.BUNDLE_PATH, "/").concat(file);
|
|
87
|
-
return [4 /*yield*/, fs_1.default.promises.stat(current)];
|
|
88
|
-
case 7:
|
|
89
|
-
stats = _c.sent();
|
|
90
|
-
if (!(stats.isFile() === true)) return [3 /*break*/, 10];
|
|
91
|
-
return [4 /*yield*/, fs_1.default.promises.readFile(current, "utf8")];
|
|
92
|
-
case 8:
|
|
93
|
-
content = _c.sent();
|
|
94
|
-
return [4 /*yield*/, fs_1.default.promises.writeFile("".concat(config.output, "/").concat(file), content, "utf8")];
|
|
95
|
-
case 9:
|
|
96
|
-
_c.sent();
|
|
97
|
-
_c.label = 10;
|
|
98
|
-
case 10:
|
|
99
|
-
bundle_1_1 = bundle_1.next();
|
|
100
|
-
return [3 /*break*/, 6];
|
|
101
|
-
case 11: return [3 /*break*/, 14];
|
|
102
|
-
case 12:
|
|
103
|
-
e_1_1 = _c.sent();
|
|
104
|
-
e_1 = { error: e_1_1 };
|
|
105
|
-
return [3 /*break*/, 14];
|
|
106
|
-
case 13:
|
|
107
|
-
try {
|
|
108
|
-
if (bundle_1_1 && !bundle_1_1.done && (_b = bundle_1.return)) _b.call(bundle_1);
|
|
109
|
-
}
|
|
110
|
-
finally { if (e_1) throw e_1.error; }
|
|
111
|
-
return [7 /*endfinally*/];
|
|
112
|
-
case 14: return [4 /*yield*/, DirectoryUtil_1.DirectoryUtil.copy(SdkGenerator.BUNDLE_PATH + "/__internal", config.output + "/__internal")];
|
|
113
|
-
case 15:
|
|
114
|
-
_c.sent();
|
|
115
|
-
// FUNCTIONAL
|
|
116
|
-
return [4 /*yield*/, FileGenerator_1.FileGenerator.generate(config, routeList)];
|
|
117
|
-
case 16:
|
|
118
|
-
// FUNCTIONAL
|
|
119
|
-
_c.sent();
|
|
120
|
-
return [2 /*return*/];
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
// PREPARE NEW DIRECTORIES
|
|
25
|
+
try {
|
|
26
|
+
yield fs_1.default.promises.mkdir(config.output);
|
|
27
|
+
}
|
|
28
|
+
catch (_a) { }
|
|
29
|
+
// BUNDLING
|
|
30
|
+
const bundle = yield fs_1.default.promises.readdir(SdkGenerator.BUNDLE_PATH);
|
|
31
|
+
for (const file of bundle) {
|
|
32
|
+
const current = `${SdkGenerator.BUNDLE_PATH}/${file}`;
|
|
33
|
+
const stats = yield fs_1.default.promises.stat(current);
|
|
34
|
+
if (stats.isFile() === true) {
|
|
35
|
+
const content = yield fs_1.default.promises.readFile(current, "utf8");
|
|
36
|
+
yield fs_1.default.promises.writeFile(`${config.output}/${file}`, content, "utf8");
|
|
121
37
|
}
|
|
122
|
-
}
|
|
38
|
+
}
|
|
39
|
+
yield DirectoryUtil_1.DirectoryUtil.copy(SdkGenerator.BUNDLE_PATH + "/__internal", config.output + "/__internal");
|
|
40
|
+
// FUNCTIONAL
|
|
41
|
+
yield FileGenerator_1.FileGenerator.generate(config, routeList);
|
|
123
42
|
});
|
|
124
43
|
}
|
|
125
44
|
SdkGenerator.generate = generate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkGenerator.js","sourceRoot":"","sources":["../../src/generates/SdkGenerator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SdkGenerator.js","sourceRoot":"","sources":["../../src/generates/SdkGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AAEpB,gDAA4B;AAC5B,0DAAuD;AAGvD,mDAAgD;AAGhD,IAAiB,YAAY,CAuC5B;AAvCD,WAAiB,YAAY;IACzB,SAAsB,QAAQ,CAC1B,QAAwB,EACxB,MAAsB,EACtB,SAAmB;;YAEnB,0BAA0B;YAC1B,IAAI;gBACA,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAO,CAAC,CAAC;aAC3C;YAAC,WAAM,GAAE;YAEV,WAAW;YACX,MAAM,MAAM,GAAa,MAAM,YAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAA,WAAW,CAAC,CAAC;YAChE,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE;gBACvB,MAAM,OAAO,GAAW,GAAG,aAAA,WAAW,IAAI,IAAI,EAAE,CAAC;gBACjD,MAAM,KAAK,GAAa,MAAM,YAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAExD,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;oBACzB,MAAM,OAAO,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAC9C,OAAO,EACP,MAAM,CACT,CAAC;oBACF,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACvB,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,EAC1B,OAAO,EACP,MAAM,CACT,CAAC;iBACL;aACJ;YACD,MAAM,6BAAa,CAAC,IAAI,CACpB,aAAA,WAAW,GAAG,aAAa,EAC3B,MAAM,CAAC,MAAM,GAAG,aAAa,CAChC,CAAC;YAEF,aAAa;YACb,MAAM,6BAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACpD,CAAC;KAAA;IAnCqB,qBAAQ,WAmC7B,CAAA;IAEY,wBAAW,GAAG,cAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC9E,CAAC,EAvCgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAuC5B"}
|