@nestia/migrate 0.8.0-dev.20240217-2 → 0.8.0-dev.20240217-4
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/MigrateApplication.js +2 -0
- package/lib/MigrateApplication.js.map +1 -1
- package/lib/programmers/MigrateApiStartProgrammer.d.ts +5 -0
- package/lib/programmers/MigrateApiStartProgrammer.js +74 -0
- package/lib/programmers/MigrateApiStartProgrammer.js.map +1 -0
- package/lib/programmers/MigrateE2eFileProgrammer.d.ts +1 -0
- package/lib/programmers/MigrateE2eFileProgrammer.js +2 -2
- package/lib/programmers/MigrateE2eFileProgrammer.js.map +1 -1
- package/package.json +1 -1
- package/src/MigrateApplication.ts +2 -0
- package/src/programmers/MigrateApiStartProgrammer.ts +194 -0
- package/src/programmers/MigrateE2eFileProgrammer.ts +1 -1
@@ -9,6 +9,7 @@ const MigrateAnalyzer_1 = require("./analyzers/MigrateAnalyzer");
|
|
9
9
|
const NEST_TEMPLATE_1 = require("./bundles/NEST_TEMPLATE");
|
10
10
|
const SDK_TEMPLATE_1 = require("./bundles/SDK_TEMPLATE");
|
11
11
|
const MigrateApiProgrammer_1 = require("./programmers/MigrateApiProgrammer");
|
12
|
+
const MigrateApiStartProgrammer_1 = require("./programmers/MigrateApiStartProgrammer");
|
12
13
|
const MigrateE2eProgrammer_1 = require("./programmers/MigrateE2eProgrammer");
|
13
14
|
const MigrateNestProgrammer_1 = require("./programmers/MigrateNestProgrammer");
|
14
15
|
class MigrateApplication {
|
@@ -1487,6 +1488,7 @@ class MigrateApplication {
|
|
1487
1488
|
files: [
|
1488
1489
|
...SDK_TEMPLATE_1.SDK_TEMPLATE,
|
1489
1490
|
...MigrateApiProgrammer_1.MigrateApiProgrammer.write(program),
|
1491
|
+
MigrateApiStartProgrammer_1.MigrateApiStartProgrammer.write(program),
|
1490
1492
|
...(config.e2e ? MigrateE2eProgrammer_1.MigrateE2eProgrammer.write(program) : []),
|
1491
1493
|
],
|
1492
1494
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"MigrateApplication.js","sourceRoot":"","sources":["../src/MigrateApplication.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"MigrateApplication.js","sourceRoot":"","sources":["../src/MigrateApplication.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,74 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.MigrateApiStartProgrammer = void 0;
|
7
|
+
const typescript_1 = __importDefault(require("typescript"));
|
8
|
+
const IdentifierFactory_1 = require("typia/lib/factories/IdentifierFactory");
|
9
|
+
const StatementFactory_1 = require("typia/lib/factories/StatementFactory");
|
10
|
+
const FilePrinter_1 = require("../utils/FilePrinter");
|
11
|
+
const MigrateE2eFileProgrammer_1 = require("./MigrateE2eFileProgrammer");
|
12
|
+
const MigrateImportProgrammer_1 = require("./MigrateImportProgrammer");
|
13
|
+
var MigrateApiStartProgrammer;
|
14
|
+
(function (MigrateApiStartProgrammer) {
|
15
|
+
MigrateApiStartProgrammer.write = (program) => {
|
16
|
+
const importer = new MigrateImportProgrammer_1.MigrateImportProgrammer();
|
17
|
+
const main = writeMain(program)(program.swagger)(importer)(pick(program.controllers.map((c) => c.routes).flat()));
|
18
|
+
const statements = [
|
19
|
+
...importer.toStatements((name) => `@ORGANIZATION/PROJECT-api/lib/structures/${name}`),
|
20
|
+
FilePrinter_1.FilePrinter.newLine(),
|
21
|
+
typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, undefined, typescript_1.default.factory.createNamedImports([
|
22
|
+
typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier("TestGlobal")),
|
23
|
+
])), typescript_1.default.factory.createStringLiteral("./TestGlobal"), undefined),
|
24
|
+
FilePrinter_1.FilePrinter.newLine(),
|
25
|
+
main,
|
26
|
+
typescript_1.default.factory.createExpressionStatement(writeStarter()),
|
27
|
+
];
|
28
|
+
return {
|
29
|
+
location: `test`,
|
30
|
+
file: "start.ts",
|
31
|
+
content: FilePrinter_1.FilePrinter.write({ statements }),
|
32
|
+
};
|
33
|
+
};
|
34
|
+
const writeMain = (config) => (swagger) => (importer) => (route) => StatementFactory_1.StatementFactory.constant("main", typescript_1.default.factory.createArrowFunction([typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.AsyncKeyword)], undefined, [], undefined, undefined, typescript_1.default.factory.createBlock([
|
35
|
+
writeConnection(config)(swagger)(importer),
|
36
|
+
...MigrateE2eFileProgrammer_1.MigrateE2eFunctionProgrammer.writeBody(swagger.components)(importer)(route),
|
37
|
+
], true)));
|
38
|
+
const writeConnection = (config) => (swagger) => (importer) => {
|
39
|
+
var _a, _b;
|
40
|
+
return typescript_1.default.factory.createVariableStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([
|
41
|
+
typescript_1.default.factory.createVariableDeclaration("connection", undefined, typescript_1.default.factory.createTypeReferenceNode(typescript_1.default.factory.createQualifiedName(typescript_1.default.factory.createIdentifier(importer.external({
|
42
|
+
type: "default",
|
43
|
+
library: "@ORGANIZATION/PROJECT-api",
|
44
|
+
name: "api",
|
45
|
+
})), typescript_1.default.factory.createIdentifier("IConnection"))), typescript_1.default.factory.createObjectLiteralExpression([
|
46
|
+
typescript_1.default.factory.createSpreadAssignment(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier("TestGlobal"), "connection"), undefined, undefined)),
|
47
|
+
...(((_b = (_a = swagger.servers[0]) === null || _a === void 0 ? void 0 : _a.url) === null || _b === void 0 ? void 0 : _b.length)
|
48
|
+
? [
|
49
|
+
typescript_1.default.factory.createPropertyAssignment("host", typescript_1.default.factory.createStringLiteral(swagger.servers[0].url)),
|
50
|
+
]
|
51
|
+
: []),
|
52
|
+
...(config.simulate === true
|
53
|
+
? [
|
54
|
+
typescript_1.default.factory.createPropertyAssignment("simulate", typescript_1.default.factory.createTrue()),
|
55
|
+
]
|
56
|
+
: []),
|
57
|
+
], true)),
|
58
|
+
], typescript_1.default.NodeFlags.Const));
|
59
|
+
};
|
60
|
+
const writeStarter = () => typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("main"), undefined, undefined), "catch"), undefined, [
|
61
|
+
typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("exp")], undefined, undefined, typescript_1.default.factory.createBlock([
|
62
|
+
typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier("console"), "log"), undefined, [typescript_1.default.factory.createIdentifier("exp")])),
|
63
|
+
typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier("process"), "exit"), undefined, [
|
64
|
+
typescript_1.default.factory.createPrefixMinus(typescript_1.default.factory.createNumericLiteral("1")),
|
65
|
+
])),
|
66
|
+
], true)),
|
67
|
+
]);
|
68
|
+
})(MigrateApiStartProgrammer || (exports.MigrateApiStartProgrammer = MigrateApiStartProgrammer = {}));
|
69
|
+
const pick = (array) => {
|
70
|
+
const rand = Math.random() * array.length;
|
71
|
+
const index = Math.min(array.length - 1, Math.floor(rand));
|
72
|
+
return array[index];
|
73
|
+
};
|
74
|
+
//# sourceMappingURL=MigrateApiStartProgrammer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MigrateApiStartProgrammer.js","sourceRoot":"","sources":["../../src/programmers/MigrateApiStartProgrammer.ts"],"names":[],"mappings":"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"}
|
@@ -4,4 +4,5 @@ import { IMigrateRoute } from "../structures/IMigrateRoute";
|
|
4
4
|
import { MigrateImportProgrammer } from "./MigrateImportProgrammer";
|
5
5
|
export declare namespace MigrateE2eFunctionProgrammer {
|
6
6
|
const write: (components: ISwaggerComponents) => (importer: MigrateImportProgrammer) => (route: IMigrateRoute) => ts.FunctionDeclaration;
|
7
|
+
const writeBody: (components: ISwaggerComponents) => (importer: MigrateImportProgrammer) => (route: IMigrateRoute) => ts.Statement[];
|
7
8
|
}
|
@@ -18,8 +18,8 @@ var MigrateE2eFunctionProgrammer;
|
|
18
18
|
library: "@ORGANIZATION/PROJECT-api",
|
19
19
|
name: "api",
|
20
20
|
})), typescript_1.default.factory.createIdentifier("IConnection")))),
|
21
|
-
], undefined, typescript_1.default.factory.createBlock(writeBody(components)(importer)(route), true));
|
22
|
-
|
21
|
+
], undefined, typescript_1.default.factory.createBlock(MigrateE2eFunctionProgrammer.writeBody(components)(importer)(route), true));
|
22
|
+
MigrateE2eFunctionProgrammer.writeBody = (components) => (importer) => (route) => [
|
23
23
|
typescript_1.default.factory.createVariableStatement([], typescript_1.default.factory.createVariableDeclarationList([
|
24
24
|
typescript_1.default.factory.createVariableDeclaration("output", undefined, route.success
|
25
25
|
? MigrateSchemaProgrammer_1.MigrateSchemaProgrammer.write(components)(importer)(route.success.schema)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"MigrateE2eFileProgrammer.js","sourceRoot":"","sources":["../../src/programmers/MigrateE2eFileProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAC5B,6EAA0E;AAK1E,uEAAoE;AAEpE,IAAiB,4BAA4B,CA4G5C;AA5GD,WAAiB,4BAA4B;IAC9B,kCAAK,GAChB,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,QAAiC,EAAE,EAAE,CACtC,CAAC,KAAoB,EAA0B,EAAE,CAC/C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC;QACE,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACtD,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC;KACtD,EACD,SAAS,EACT,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAC5C,SAAS,EACT;QACE,qCAAiB,CAAC,SAAS,CACzB,YAAY,EACZ,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,QAAQ,CAAC,QAAQ,CAAC;YAChB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,2BAA2B;YACpC,IAAI,EAAE,KAAK;SACZ,CAAC,CACH,EACD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAC3C,CACF,CACF;KACF,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CACrE,CAAC;
|
1
|
+
{"version":3,"file":"MigrateE2eFileProgrammer.js","sourceRoot":"","sources":["../../src/programmers/MigrateE2eFileProgrammer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -5,6 +5,7 @@ import { NEST_TEMPLATE } from "./bundles/NEST_TEMPLATE";
|
|
5
5
|
import { SDK_TEMPLATE } from "./bundles/SDK_TEMPLATE";
|
6
6
|
import { IMigrateProgram } from "./module";
|
7
7
|
import { MigrateApiProgrammer } from "./programmers/MigrateApiProgrammer";
|
8
|
+
import { MigrateApiStartProgrammer } from "./programmers/MigrateApiStartProgrammer";
|
8
9
|
import { MigrateE2eProgrammer } from "./programmers/MigrateE2eProgrammer";
|
9
10
|
import { MigrateNestProgrammer } from "./programmers/MigrateNestProgrammer";
|
10
11
|
import { IMigrateFile } from "./structures/IMigrateFile";
|
@@ -49,6 +50,7 @@ export class MigrateApplication {
|
|
49
50
|
files: [
|
50
51
|
...SDK_TEMPLATE,
|
51
52
|
...MigrateApiProgrammer.write(program),
|
53
|
+
MigrateApiStartProgrammer.write(program),
|
52
54
|
...(config.e2e ? MigrateE2eProgrammer.write(program) : []),
|
53
55
|
],
|
54
56
|
};
|
@@ -0,0 +1,194 @@
|
|
1
|
+
import ts from "typescript";
|
2
|
+
import { IdentifierFactory } from "typia/lib/factories/IdentifierFactory";
|
3
|
+
import { StatementFactory } from "typia/lib/factories/StatementFactory";
|
4
|
+
|
5
|
+
import { IMigrateFile } from "../structures/IMigrateFile";
|
6
|
+
import { IMigrateProgram } from "../structures/IMigrateProgram";
|
7
|
+
import { IMigrateRoute } from "../structures/IMigrateRoute";
|
8
|
+
import { ISwagger } from "../structures/ISwagger";
|
9
|
+
import { FilePrinter } from "../utils/FilePrinter";
|
10
|
+
import { MigrateE2eFunctionProgrammer } from "./MigrateE2eFileProgrammer";
|
11
|
+
import { MigrateImportProgrammer } from "./MigrateImportProgrammer";
|
12
|
+
|
13
|
+
export namespace MigrateApiStartProgrammer {
|
14
|
+
export const write = (program: IMigrateProgram): IMigrateFile => {
|
15
|
+
const importer: MigrateImportProgrammer = new MigrateImportProgrammer();
|
16
|
+
const main: ts.VariableStatement = writeMain(program)(program.swagger)(
|
17
|
+
importer,
|
18
|
+
)(pick(program.controllers.map((c) => c.routes).flat()));
|
19
|
+
const statements: ts.Statement[] = [
|
20
|
+
...importer.toStatements(
|
21
|
+
(name) => `@ORGANIZATION/PROJECT-api/lib/structures/${name}`,
|
22
|
+
),
|
23
|
+
FilePrinter.newLine(),
|
24
|
+
ts.factory.createImportDeclaration(
|
25
|
+
undefined,
|
26
|
+
ts.factory.createImportClause(
|
27
|
+
false,
|
28
|
+
undefined,
|
29
|
+
ts.factory.createNamedImports([
|
30
|
+
ts.factory.createImportSpecifier(
|
31
|
+
false,
|
32
|
+
undefined,
|
33
|
+
ts.factory.createIdentifier("TestGlobal"),
|
34
|
+
),
|
35
|
+
]),
|
36
|
+
),
|
37
|
+
ts.factory.createStringLiteral("./TestGlobal"),
|
38
|
+
undefined,
|
39
|
+
),
|
40
|
+
FilePrinter.newLine(),
|
41
|
+
main,
|
42
|
+
ts.factory.createExpressionStatement(writeStarter()),
|
43
|
+
];
|
44
|
+
return {
|
45
|
+
location: `test`,
|
46
|
+
file: "start.ts",
|
47
|
+
content: FilePrinter.write({ statements }),
|
48
|
+
};
|
49
|
+
};
|
50
|
+
|
51
|
+
const writeMain =
|
52
|
+
(config: IMigrateProgram.IConfig) =>
|
53
|
+
(swagger: ISwagger) =>
|
54
|
+
(importer: MigrateImportProgrammer) =>
|
55
|
+
(route: IMigrateRoute): ts.VariableStatement =>
|
56
|
+
StatementFactory.constant(
|
57
|
+
"main",
|
58
|
+
ts.factory.createArrowFunction(
|
59
|
+
[ts.factory.createToken(ts.SyntaxKind.AsyncKeyword)],
|
60
|
+
undefined,
|
61
|
+
[],
|
62
|
+
undefined,
|
63
|
+
undefined,
|
64
|
+
ts.factory.createBlock(
|
65
|
+
[
|
66
|
+
writeConnection(config)(swagger)(importer),
|
67
|
+
...MigrateE2eFunctionProgrammer.writeBody(swagger.components)(
|
68
|
+
importer,
|
69
|
+
)(route),
|
70
|
+
],
|
71
|
+
true,
|
72
|
+
),
|
73
|
+
),
|
74
|
+
);
|
75
|
+
|
76
|
+
const writeConnection =
|
77
|
+
(config: IMigrateProgram.IConfig) =>
|
78
|
+
(swagger: ISwagger) =>
|
79
|
+
(importer: MigrateImportProgrammer): ts.VariableStatement =>
|
80
|
+
ts.factory.createVariableStatement(
|
81
|
+
undefined,
|
82
|
+
ts.factory.createVariableDeclarationList(
|
83
|
+
[
|
84
|
+
ts.factory.createVariableDeclaration(
|
85
|
+
"connection",
|
86
|
+
undefined,
|
87
|
+
ts.factory.createTypeReferenceNode(
|
88
|
+
ts.factory.createQualifiedName(
|
89
|
+
ts.factory.createIdentifier(
|
90
|
+
importer.external({
|
91
|
+
type: "default",
|
92
|
+
library: "@ORGANIZATION/PROJECT-api",
|
93
|
+
name: "api",
|
94
|
+
}),
|
95
|
+
),
|
96
|
+
ts.factory.createIdentifier("IConnection"),
|
97
|
+
),
|
98
|
+
),
|
99
|
+
ts.factory.createObjectLiteralExpression(
|
100
|
+
[
|
101
|
+
ts.factory.createSpreadAssignment(
|
102
|
+
ts.factory.createCallExpression(
|
103
|
+
ts.factory.createPropertyAccessExpression(
|
104
|
+
ts.factory.createIdentifier("TestGlobal"),
|
105
|
+
"connection",
|
106
|
+
),
|
107
|
+
undefined,
|
108
|
+
undefined,
|
109
|
+
),
|
110
|
+
),
|
111
|
+
...(swagger.servers[0]?.url?.length
|
112
|
+
? [
|
113
|
+
ts.factory.createPropertyAssignment(
|
114
|
+
"host",
|
115
|
+
ts.factory.createStringLiteral(
|
116
|
+
swagger.servers[0].url,
|
117
|
+
),
|
118
|
+
),
|
119
|
+
]
|
120
|
+
: []),
|
121
|
+
...(config.simulate === true
|
122
|
+
? [
|
123
|
+
ts.factory.createPropertyAssignment(
|
124
|
+
"simulate",
|
125
|
+
ts.factory.createTrue(),
|
126
|
+
),
|
127
|
+
]
|
128
|
+
: []),
|
129
|
+
],
|
130
|
+
true,
|
131
|
+
),
|
132
|
+
),
|
133
|
+
],
|
134
|
+
ts.NodeFlags.Const,
|
135
|
+
),
|
136
|
+
);
|
137
|
+
|
138
|
+
const writeStarter = (): ts.CallExpression =>
|
139
|
+
ts.factory.createCallExpression(
|
140
|
+
ts.factory.createPropertyAccessExpression(
|
141
|
+
ts.factory.createCallExpression(
|
142
|
+
ts.factory.createIdentifier("main"),
|
143
|
+
undefined,
|
144
|
+
undefined,
|
145
|
+
),
|
146
|
+
"catch",
|
147
|
+
),
|
148
|
+
undefined,
|
149
|
+
[
|
150
|
+
ts.factory.createArrowFunction(
|
151
|
+
undefined,
|
152
|
+
undefined,
|
153
|
+
[IdentifierFactory.parameter("exp")],
|
154
|
+
undefined,
|
155
|
+
undefined,
|
156
|
+
ts.factory.createBlock(
|
157
|
+
[
|
158
|
+
ts.factory.createExpressionStatement(
|
159
|
+
ts.factory.createCallExpression(
|
160
|
+
ts.factory.createPropertyAccessExpression(
|
161
|
+
ts.factory.createIdentifier("console"),
|
162
|
+
"log",
|
163
|
+
),
|
164
|
+
undefined,
|
165
|
+
[ts.factory.createIdentifier("exp")],
|
166
|
+
),
|
167
|
+
),
|
168
|
+
ts.factory.createExpressionStatement(
|
169
|
+
ts.factory.createCallExpression(
|
170
|
+
ts.factory.createPropertyAccessExpression(
|
171
|
+
ts.factory.createIdentifier("process"),
|
172
|
+
"exit",
|
173
|
+
),
|
174
|
+
undefined,
|
175
|
+
[
|
176
|
+
ts.factory.createPrefixMinus(
|
177
|
+
ts.factory.createNumericLiteral("1"),
|
178
|
+
),
|
179
|
+
],
|
180
|
+
),
|
181
|
+
),
|
182
|
+
],
|
183
|
+
true,
|
184
|
+
),
|
185
|
+
),
|
186
|
+
],
|
187
|
+
);
|
188
|
+
}
|
189
|
+
|
190
|
+
const pick = <T>(array: T[]): T => {
|
191
|
+
const rand: number = Math.random() * array.length;
|
192
|
+
const index: number = Math.min(array.length - 1, Math.floor(rand));
|
193
|
+
return array[index];
|
194
|
+
};
|
@@ -40,7 +40,7 @@ export namespace MigrateE2eFunctionProgrammer {
|
|
40
40
|
ts.factory.createBlock(writeBody(components)(importer)(route), true),
|
41
41
|
);
|
42
42
|
|
43
|
-
const writeBody =
|
43
|
+
export const writeBody =
|
44
44
|
(components: ISwaggerComponents) =>
|
45
45
|
(importer: MigrateImportProgrammer) =>
|
46
46
|
(route: IMigrateRoute): ts.Statement[] => [
|