@nestia/migrate 0.2.1 → 0.2.2
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/bundles/TEMPLATE.js +1 -1
- package/lib/programmers/ControllerProgrammer.js +5 -4
- package/lib/programmers/ControllerProgrammer.js.map +1 -1
- package/lib/programmers/RouteProgrammer.js +1 -1
- package/lib/programmers/RouteProgrammer.js.map +1 -1
- package/lib/utils/StringUtil.d.ts +1 -1
- package/lib/utils/StringUtil.js +6 -4
- package/lib/utils/StringUtil.js.map +1 -1
- package/package.json +4 -4
- package/src/bundles/TEMPLATE.ts +1 -1
- package/src/programmers/ControllerProgrammer.ts +7 -4
- package/src/programmers/RouteProgrammer.ts +3 -1
- package/src/utils/StringUtil.ts +6 -4
package/lib/bundles/TEMPLATE.js
CHANGED
@@ -60,7 +60,7 @@ exports.TEMPLATE = [
|
|
60
60
|
{
|
61
61
|
"location": "/packages/api",
|
62
62
|
"file": "package.json",
|
63
|
-
"content": "{\r\n \"name\": \"@ORGANIZATION/PROJECT-api\",\r\n \"version\": \"0.0.0\",\r\n \"description\": \"API for PROJECT\",\r\n \"main\": \"lib/index.js\",\r\n \"typings\": \"lib/index.d.ts\",\r\n \"repository\": {\r\n \"type\": \"git\",\r\n \"url\": \"https://github.com/samchon/nestia-template\"\r\n },\r\n \"author\": \"AUTHOR\",\r\n \"license\": \"MIT\",\r\n \"bugs\": {\r\n \"url\": \"https://github.com/samchon/nestia-template/issues\"\r\n },\r\n \"homepage\": \"https://github.com/samchon/nestia-template#readme\",\r\n \"dependencies\": {\r\n \"@nestia/fetcher\": \"^1.5.
|
63
|
+
"content": "{\r\n \"name\": \"@ORGANIZATION/PROJECT-api\",\r\n \"version\": \"0.0.0\",\r\n \"description\": \"API for PROJECT\",\r\n \"main\": \"lib/index.js\",\r\n \"typings\": \"lib/index.d.ts\",\r\n \"repository\": {\r\n \"type\": \"git\",\r\n \"url\": \"https://github.com/samchon/nestia-template\"\r\n },\r\n \"author\": \"AUTHOR\",\r\n \"license\": \"MIT\",\r\n \"bugs\": {\r\n \"url\": \"https://github.com/samchon/nestia-template/issues\"\r\n },\r\n \"homepage\": \"https://github.com/samchon/nestia-template#readme\",\r\n \"dependencies\": {\r\n \"@nestia/fetcher\": \"^1.5.3\",\r\n \"typia\": \"^4.1.14\"\r\n }\r\n}\r\n"
|
64
64
|
},
|
65
65
|
{
|
66
66
|
"location": "/packages/api",
|
@@ -12,7 +12,7 @@ var ControllerProgrammer;
|
|
12
12
|
// GATHER ROUTES
|
13
13
|
for (const [path, collection] of Object.entries(swagger.paths)) {
|
14
14
|
// PREPARE DIRECTORIES
|
15
|
-
const location = StringUtil_1.StringUtil.
|
15
|
+
const location = StringUtil_1.StringUtil.splitWithNormalization(path)
|
16
16
|
.filter((str) => str[0] !== "{" && str[0] !== ":")
|
17
17
|
.join("/");
|
18
18
|
for (const s of sequence(location))
|
@@ -59,14 +59,14 @@ var ControllerProgrammer;
|
|
59
59
|
return controller;
|
60
60
|
});
|
61
61
|
};
|
62
|
-
const sequence = (location) => StringUtil_1.StringUtil.
|
62
|
+
const sequence = (location) => StringUtil_1.StringUtil.splitWithNormalization(location)
|
63
63
|
.map((_str, i, entire) => entire.slice(0, i + 1).join("/"))
|
64
64
|
.slice(0, -1)
|
65
65
|
.reverse();
|
66
66
|
const naming = (controller) => {
|
67
67
|
const dict = new Map();
|
68
68
|
for (const route of controller.routes) {
|
69
|
-
const additional = StringUtil_1.StringUtil.
|
69
|
+
const additional = StringUtil_1.StringUtil.splitWithNormalization(route.path);
|
70
70
|
const statics = additional.filter((str) => str[0] !== ":");
|
71
71
|
if (statics.length)
|
72
72
|
route.name = StringUtil_1.StringUtil.camel(statics.join("/"));
|
@@ -112,7 +112,8 @@ var ControllerProgrammer;
|
|
112
112
|
...new Set(references.map((r) => r.$ref
|
113
113
|
.replace("#/components/schemas/", "")
|
114
114
|
.split(".")[0])),
|
115
|
-
].map((ref) => `import { ${ref} } from "${"../".repeat(StringUtil_1.StringUtil.
|
115
|
+
].map((ref) => `import { ${ref} } from "${"../".repeat(StringUtil_1.StringUtil.splitWithNormalization(controller.location)
|
116
|
+
.length - 1)}api/structures/${ref}"`);
|
116
117
|
return [
|
117
118
|
importer.toScript(),
|
118
119
|
"",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ControllerProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ControllerProgrammer.ts"],"names":[],"mappings":";;;AAKA,8CAA2C;AAC3C,oDAAiD;AACjD,yDAAsD;AACtD,uDAAoD;AAEpD,IAAiB,oBAAoB,
|
1
|
+
{"version":3,"file":"ControllerProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ControllerProgrammer.ts"],"names":[],"mappings":"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"}
|
@@ -103,7 +103,7 @@ var RouteProgrammer;
|
|
103
103
|
],
|
104
104
|
});
|
105
105
|
});
|
106
|
-
const parameterNames = StringUtil_1.StringUtil.
|
106
|
+
const parameterNames = StringUtil_1.StringUtil.splitWithNormalization(props.path)
|
107
107
|
.filter((str) => str[0] === "{" || str[0] === ":")
|
108
108
|
.map((str) => str[0] === "{"
|
109
109
|
? str.substring(1, str.length - 1)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RouteProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RouteProgrammer.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"RouteProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RouteProgrammer.ts"],"names":[],"mappings":"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"}
|
@@ -2,7 +2,7 @@ export declare namespace StringUtil {
|
|
2
2
|
const capitalize: (str: string) => string;
|
3
3
|
const pascal: (path: string) => string;
|
4
4
|
const camel: (path: string) => string;
|
5
|
-
const
|
5
|
+
const splitWithNormalization: (path: string) => string[];
|
6
6
|
const reJoinWithDecimalParameters: (path: string) => string;
|
7
7
|
const normalize: (str: string) => string;
|
8
8
|
const commonPrefix: (strs: string[]) => string;
|
package/lib/utils/StringUtil.js
CHANGED
@@ -4,18 +4,20 @@ exports.StringUtil = void 0;
|
|
4
4
|
var StringUtil;
|
5
5
|
(function (StringUtil) {
|
6
6
|
StringUtil.capitalize = (str) => str[0].toUpperCase() + str.slice(1).toLowerCase();
|
7
|
-
StringUtil.pascal = (path) => StringUtil.
|
7
|
+
StringUtil.pascal = (path) => StringUtil.splitWithNormalization(path)
|
8
8
|
.filter((str) => str[0] !== "{")
|
9
9
|
.map(StringUtil.capitalize)
|
10
10
|
.join("");
|
11
|
-
StringUtil.camel = (path) => StringUtil.
|
11
|
+
StringUtil.camel = (path) => StringUtil.splitWithNormalization(path)
|
12
12
|
.map((str, i) => (i === 0 ? str : StringUtil.capitalize(str)))
|
13
13
|
.join("");
|
14
|
-
StringUtil.
|
14
|
+
StringUtil.splitWithNormalization = (path) => path
|
15
15
|
.split("/")
|
16
16
|
.map((str) => StringUtil.normalize(str.trim()))
|
17
17
|
.filter((str) => !!str.length);
|
18
|
-
StringUtil.reJoinWithDecimalParameters = (path) =>
|
18
|
+
StringUtil.reJoinWithDecimalParameters = (path) => path
|
19
|
+
.split("/")
|
20
|
+
.filter((str) => !!str.length)
|
19
21
|
.map((str) => str[0] === "{" && str[str.length - 1] === "}"
|
20
22
|
? `:${str.substring(1, str.length - 1)}`
|
21
23
|
: str)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"StringUtil.js","sourceRoot":"","sources":["../../src/utils/StringUtil.ts"],"names":[],"mappings":";;;AAAA,IAAiB,UAAU,
|
1
|
+
{"version":3,"file":"StringUtil.js","sourceRoot":"","sources":["../../src/utils/StringUtil.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@nestia/migrate",
|
3
|
-
"version": "0.2.
|
3
|
+
"version": "0.2.2",
|
4
4
|
"description": "Migration program from swagger to NestJS",
|
5
5
|
"main": "lib/index.js",
|
6
6
|
"typings": "lib/index.d.ts",
|
@@ -30,8 +30,8 @@
|
|
30
30
|
},
|
31
31
|
"homepage": "https://github.com/samchon/nestia#readme",
|
32
32
|
"devDependencies": {
|
33
|
-
"@nestia/core": "^1.5.
|
34
|
-
"@nestia/fetcher": "^1.5.
|
33
|
+
"@nestia/core": "^1.5.4",
|
34
|
+
"@nestia/fetcher": "^1.5.4",
|
35
35
|
"@trivago/prettier-plugin-sort-imports": "^4.1.1",
|
36
36
|
"@types/node": "^20.3.3",
|
37
37
|
"prettier": "^2.8.8",
|
@@ -45,7 +45,7 @@
|
|
45
45
|
"typescript-transform-paths": "^3.4.6"
|
46
46
|
},
|
47
47
|
"dependencies": {
|
48
|
-
"typia": "^4.1.
|
48
|
+
"typia": "^4.1.16"
|
49
49
|
},
|
50
50
|
"files": [
|
51
51
|
"lib",
|
package/src/bundles/TEMPLATE.ts
CHANGED
@@ -57,7 +57,7 @@ export const TEMPLATE = [
|
|
57
57
|
{
|
58
58
|
"location": "/packages/api",
|
59
59
|
"file": "package.json",
|
60
|
-
"content": "{\r\n \"name\": \"@ORGANIZATION/PROJECT-api\",\r\n \"version\": \"0.0.0\",\r\n \"description\": \"API for PROJECT\",\r\n \"main\": \"lib/index.js\",\r\n \"typings\": \"lib/index.d.ts\",\r\n \"repository\": {\r\n \"type\": \"git\",\r\n \"url\": \"https://github.com/samchon/nestia-template\"\r\n },\r\n \"author\": \"AUTHOR\",\r\n \"license\": \"MIT\",\r\n \"bugs\": {\r\n \"url\": \"https://github.com/samchon/nestia-template/issues\"\r\n },\r\n \"homepage\": \"https://github.com/samchon/nestia-template#readme\",\r\n \"dependencies\": {\r\n \"@nestia/fetcher\": \"^1.5.
|
60
|
+
"content": "{\r\n \"name\": \"@ORGANIZATION/PROJECT-api\",\r\n \"version\": \"0.0.0\",\r\n \"description\": \"API for PROJECT\",\r\n \"main\": \"lib/index.js\",\r\n \"typings\": \"lib/index.d.ts\",\r\n \"repository\": {\r\n \"type\": \"git\",\r\n \"url\": \"https://github.com/samchon/nestia-template\"\r\n },\r\n \"author\": \"AUTHOR\",\r\n \"license\": \"MIT\",\r\n \"bugs\": {\r\n \"url\": \"https://github.com/samchon/nestia-template/issues\"\r\n },\r\n \"homepage\": \"https://github.com/samchon/nestia-template#readme\",\r\n \"dependencies\": {\r\n \"@nestia/fetcher\": \"^1.5.3\",\r\n \"typia\": \"^4.1.14\"\r\n }\r\n}\r\n"
|
61
61
|
},
|
62
62
|
{
|
63
63
|
"location": "/packages/api",
|
@@ -15,7 +15,7 @@ export namespace ControllerProgrammer {
|
|
15
15
|
// GATHER ROUTES
|
16
16
|
for (const [path, collection] of Object.entries(swagger.paths)) {
|
17
17
|
// PREPARE DIRECTORIES
|
18
|
-
const location: string = StringUtil.
|
18
|
+
const location: string = StringUtil.splitWithNormalization(path)
|
19
19
|
.filter((str) => str[0] !== "{" && str[0] !== ":")
|
20
20
|
.join("/");
|
21
21
|
for (const s of sequence(location)) MapUtil.take(dict)(s)(() => []);
|
@@ -74,7 +74,7 @@ export namespace ControllerProgrammer {
|
|
74
74
|
};
|
75
75
|
|
76
76
|
const sequence = (location: string): string[] =>
|
77
|
-
StringUtil.
|
77
|
+
StringUtil.splitWithNormalization(location)
|
78
78
|
.map((_str, i, entire) => entire.slice(0, i + 1).join("/"))
|
79
79
|
.slice(0, -1)
|
80
80
|
.reverse();
|
@@ -86,7 +86,9 @@ export namespace ControllerProgrammer {
|
|
86
86
|
}
|
87
87
|
const dict: Map<string, IRouteCapsule[]> = new Map();
|
88
88
|
for (const route of controller.routes) {
|
89
|
-
const additional: string[] = StringUtil.
|
89
|
+
const additional: string[] = StringUtil.splitWithNormalization(
|
90
|
+
route.path,
|
91
|
+
);
|
90
92
|
const statics: string[] = additional.filter(
|
91
93
|
(str) => str[0] !== ":",
|
92
94
|
);
|
@@ -154,7 +156,8 @@ export namespace ControllerProgrammer {
|
|
154
156
|
].map(
|
155
157
|
(ref) =>
|
156
158
|
`import { ${ref} } from "${"../".repeat(
|
157
|
-
StringUtil.
|
159
|
+
StringUtil.splitWithNormalization(controller.location)
|
160
|
+
.length - 1,
|
158
161
|
)}api/structures/${ref}"`,
|
159
162
|
);
|
160
163
|
|
@@ -156,7 +156,9 @@ export namespace RouteProgrammer {
|
|
156
156
|
});
|
157
157
|
});
|
158
158
|
|
159
|
-
const parameterNames: string[] = StringUtil.
|
159
|
+
const parameterNames: string[] = StringUtil.splitWithNormalization(
|
160
|
+
props.path,
|
161
|
+
)
|
160
162
|
.filter((str) => str[0] === "{" || str[0] === ":")
|
161
163
|
.map((str) =>
|
162
164
|
str[0] === "{"
|
package/src/utils/StringUtil.ts
CHANGED
@@ -3,24 +3,26 @@ export namespace StringUtil {
|
|
3
3
|
str[0].toUpperCase() + str.slice(1).toLowerCase();
|
4
4
|
|
5
5
|
export const pascal = (path: string) =>
|
6
|
-
|
6
|
+
splitWithNormalization(path)
|
7
7
|
.filter((str) => str[0] !== "{")
|
8
8
|
.map(capitalize)
|
9
9
|
.join("");
|
10
10
|
|
11
11
|
export const camel = (path: string) =>
|
12
|
-
|
12
|
+
splitWithNormalization(path)
|
13
13
|
.map((str, i) => (i === 0 ? str : capitalize(str)))
|
14
14
|
.join("");
|
15
15
|
|
16
|
-
export const
|
16
|
+
export const splitWithNormalization = (path: string) =>
|
17
17
|
path
|
18
18
|
.split("/")
|
19
19
|
.map((str) => normalize(str.trim()))
|
20
20
|
.filter((str) => !!str.length);
|
21
21
|
|
22
22
|
export const reJoinWithDecimalParameters = (path: string) =>
|
23
|
-
|
23
|
+
path
|
24
|
+
.split("/")
|
25
|
+
.filter((str) => !!str.length)
|
24
26
|
.map((str) =>
|
25
27
|
str[0] === "{" && str[str.length - 1] === "}"
|
26
28
|
? `:${str.substring(1, str.length - 1)}`
|