@nestia/migrate 0.7.4 → 0.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/lib/MigrateApplication.d.ts +9 -2
  2. package/lib/MigrateApplication.js +14 -8
  3. package/lib/MigrateApplication.js.map +1 -1
  4. package/lib/analyzers/MigrateAnalyzer.js +2 -2
  5. package/lib/analyzers/MigrateAnalyzer.js.map +1 -1
  6. package/lib/analyzers/{ControllerAnalyzer.d.ts → MigrateControllerAnalyzer.d.ts} +1 -1
  7. package/lib/analyzers/{ControllerAnalyzer.js → MigrateControllerAnalyzer.js} +11 -9
  8. package/lib/analyzers/MigrateControllerAnalyzer.js.map +1 -0
  9. package/lib/analyzers/{MethodAnalyzer.d.ts → MigrateMethodAnalyzer.d.ts} +1 -1
  10. package/lib/analyzers/{MethodAnalyzer.js → MigrateMethodAnalyzer.js} +26 -25
  11. package/lib/analyzers/MigrateMethodAnalyzer.js.map +1 -0
  12. package/lib/archivers/{FileArchiver.d.ts → MigrateFileArchiver.d.ts} +1 -1
  13. package/lib/archivers/{FileArchiver.js → MigrateFileArchiver.js} +6 -6
  14. package/lib/archivers/MigrateFileArchiver.js.map +1 -0
  15. package/lib/bundles/NEST_TEMPLATE.js +3 -3
  16. package/lib/bundles/NEST_TEMPLATE.js.map +1 -1
  17. package/lib/bundles/SDK_TEMPLATE.js +1 -1
  18. package/lib/executable/bundle.js +1 -0
  19. package/lib/executable/bundle.js.map +1 -1
  20. package/lib/internal/MigrateCommander.js +3 -3
  21. package/lib/internal/MigrateCommander.js.map +1 -1
  22. package/lib/programmers/{ApiFileProgrammer.d.ts → MigrateApiFileProgrammer.d.ts} +1 -1
  23. package/lib/programmers/MigrateApiFileProgrammer.js +28 -0
  24. package/lib/programmers/MigrateApiFileProgrammer.js.map +1 -0
  25. package/lib/programmers/{ApiFunctionProgrammer.d.ts → MigrateApiFunctionProgrammer.d.ts} +4 -4
  26. package/lib/programmers/{ApiFunctionProgrammer.js → MigrateApiFunctionProgrammer.js} +10 -10
  27. package/lib/programmers/MigrateApiFunctionProgrammer.js.map +1 -0
  28. package/lib/programmers/{ApiNamespaceProgrammer.d.ts → MigrateApiNamespaceProgrammer.d.ts} +3 -3
  29. package/lib/programmers/{ApiNamespaceProgrammer.js → MigrateApiNamespaceProgrammer.js} +19 -19
  30. package/lib/programmers/MigrateApiNamespaceProgrammer.js.map +1 -0
  31. package/lib/programmers/{ApiProgrammer.d.ts → MigrateApiProgrammer.d.ts} +1 -1
  32. package/lib/programmers/{ApiProgrammer.js → MigrateApiProgrammer.js} +25 -20
  33. package/lib/programmers/MigrateApiProgrammer.js.map +1 -0
  34. package/lib/programmers/{ApiSimulatationProgrammer.d.ts → MigrateApiSimulatationProgrammer.d.ts} +4 -4
  35. package/lib/programmers/{ApiSimulatationProgrammer.js → MigrateApiSimulatationProgrammer.js} +16 -16
  36. package/lib/programmers/MigrateApiSimulatationProgrammer.js.map +1 -0
  37. package/lib/programmers/{DtoProgrammer.d.ts → MigrateDtoProgrammer.d.ts} +3 -3
  38. package/lib/programmers/{DtoProgrammer.js → MigrateDtoProgrammer.js} +8 -8
  39. package/lib/programmers/MigrateDtoProgrammer.js.map +1 -0
  40. package/lib/programmers/{ImportProgrammer.d.ts → MigrateImportProgrammer.d.ts} +3 -3
  41. package/lib/programmers/{ImportProgrammer.js → MigrateImportProgrammer.js} +7 -5
  42. package/lib/programmers/MigrateImportProgrammer.js.map +1 -0
  43. package/lib/programmers/{NestControllerProgrammer.d.ts → MigrateNestControllerProgrammer.d.ts} +1 -1
  44. package/lib/programmers/{NestControllerProgrammer.js → MigrateNestControllerProgrammer.js} +11 -11
  45. package/lib/programmers/MigrateNestControllerProgrammer.js.map +1 -0
  46. package/lib/programmers/{NestMethodProgrammer.d.ts → MigrateNestMethodProgrammer.d.ts} +3 -3
  47. package/lib/programmers/{NestMethodProgrammer.js → MigrateNestMethodProgrammer.js} +13 -11
  48. package/lib/programmers/MigrateNestMethodProgrammer.js.map +1 -0
  49. package/lib/programmers/{NestModuleProgrammer.d.ts → MigrateNestModuleProgrammer.d.ts} +1 -1
  50. package/lib/programmers/{NestModuleProgrammer.js → MigrateNestModuleProgrammer.js} +8 -8
  51. package/lib/programmers/MigrateNestModuleProgrammer.js.map +1 -0
  52. package/lib/programmers/{NestProgrammer.d.ts → MigrateNestProgrammer.d.ts} +1 -1
  53. package/lib/programmers/{NestProgrammer.js → MigrateNestProgrammer.js} +17 -15
  54. package/lib/programmers/MigrateNestProgrammer.js.map +1 -0
  55. package/lib/programmers/{SchemaProgrammer.d.ts → MigrateSchemaProgrammer.d.ts} +3 -3
  56. package/lib/programmers/{SchemaProgrammer.js → MigrateSchemaProgrammer.js} +23 -23
  57. package/lib/programmers/MigrateSchemaProgrammer.js.map +1 -0
  58. package/lib/structures/IMigrateRoute.d.ts +1 -0
  59. package/lib/utils/FilePrinter.d.ts +1 -1
  60. package/lib/utils/FilePrinter.js +1 -1
  61. package/lib/utils/FilePrinter.js.map +1 -1
  62. package/lib/utils/{JsonTypeChecker.d.ts → SwaggerTypeChecker.d.ts} +1 -1
  63. package/lib/utils/SwaggerTypeChecker.js +34 -0
  64. package/lib/utils/SwaggerTypeChecker.js.map +1 -0
  65. package/package.json +68 -68
  66. package/src/IMigrateConfig.ts +4 -4
  67. package/src/MigrateApplication.ts +48 -35
  68. package/src/analyzers/MigrateAnalyzer.ts +13 -13
  69. package/src/analyzers/{ControllerAnalyzer.ts → MigrateControllerAnalyzer.ts} +122 -123
  70. package/src/analyzers/{MethodAnalyzer.ts → MigrateMethodAnalyzer.ts} +348 -347
  71. package/src/archivers/{FileArchiver.ts → MigrateFileArchiver.ts} +38 -38
  72. package/src/bundles/NEST_TEMPLATE.ts +3 -3
  73. package/src/bundles/SDK_TEMPLATE.ts +1 -1
  74. package/src/executable/bundle.ts +109 -108
  75. package/src/executable/migrate.ts +7 -7
  76. package/src/internal/MigrateCommander.ts +51 -52
  77. package/src/internal/MigrateInquirer.ts +79 -79
  78. package/src/module.ts +4 -4
  79. package/src/programmers/{ApiFileProgrammer.ts → MigrateApiFileProgrammer.ts} +53 -53
  80. package/src/programmers/{ApiFunctionProgrammer.ts → MigrateApiFunctionProgrammer.ts} +203 -203
  81. package/src/programmers/{ApiNamespaceProgrammer.ts → MigrateApiNamespaceProgrammer.ts} +430 -418
  82. package/src/programmers/{ApiProgrammer.ts → MigrateApiProgrammer.ts} +132 -128
  83. package/src/programmers/{ApiSimulatationProgrammer.ts → MigrateApiSimulatationProgrammer.ts} +328 -328
  84. package/src/programmers/{DtoProgrammer.ts → MigrateDtoProgrammer.ts} +78 -74
  85. package/src/programmers/{ImportProgrammer.ts → MigrateImportProgrammer.ts} +116 -114
  86. package/src/programmers/{NestControllerProgrammer.ts → MigrateNestControllerProgrammer.ts} +50 -48
  87. package/src/programmers/{NestMethodProgrammer.ts → MigrateNestMethodProgrammer.ts} +249 -243
  88. package/src/programmers/{NestModuleProgrammer.ts → MigrateNestModuleProgrammer.ts} +62 -62
  89. package/src/programmers/{NestProgrammer.ts → MigrateNestProgrammer.ts} +74 -74
  90. package/src/programmers/{SchemaProgrammer.ts → MigrateSchemaProgrammer.ts} +257 -255
  91. package/src/structures/IMigrateProgram.ts +9 -9
  92. package/src/structures/IMigrateRoute.ts +46 -45
  93. package/src/structures/ISwaggeSchema.ts +90 -90
  94. package/src/structures/ISwaggerInfo.ts +80 -80
  95. package/src/utils/FilePrinter.ts +36 -36
  96. package/src/utils/SetupWizard.ts +12 -12
  97. package/src/utils/StringUtil.ts +60 -60
  98. package/src/utils/{JsonTypeChecker.ts → SwaggerTypeChecker.ts} +67 -67
  99. package/lib/analyzers/ControllerAnalyzer.js.map +0 -1
  100. package/lib/analyzers/MethodAnalyzer.js.map +0 -1
  101. package/lib/archivers/FileArchiver.js.map +0 -1
  102. package/lib/programmers/ApiFileProgrammer.js +0 -28
  103. package/lib/programmers/ApiFileProgrammer.js.map +0 -1
  104. package/lib/programmers/ApiFunctionProgrammer.js.map +0 -1
  105. package/lib/programmers/ApiNamespaceProgrammer.js.map +0 -1
  106. package/lib/programmers/ApiProgrammer.js.map +0 -1
  107. package/lib/programmers/ApiSimulatationProgrammer.js.map +0 -1
  108. package/lib/programmers/DtoProgrammer.js.map +0 -1
  109. package/lib/programmers/ImportProgrammer.js.map +0 -1
  110. package/lib/programmers/NestControllerProgrammer.js.map +0 -1
  111. package/lib/programmers/NestMethodProgrammer.js.map +0 -1
  112. package/lib/programmers/NestModuleProgrammer.js.map +0 -1
  113. package/lib/programmers/NestProgrammer.js.map +0 -1
  114. package/lib/programmers/SchemaProgrammer.js.map +0 -1
  115. package/lib/utils/JsonTypeChecker.js +0 -34
  116. package/lib/utils/JsonTypeChecker.js.map +0 -1
@@ -1,74 +1,74 @@
1
- import ts from "typescript";
2
-
3
- import { IMigrateFile } from "../structures/IMigrateFile";
4
- import { IMigrateProgram } from "../structures/IMigrateProgram";
5
- import { FilePrinter } from "../utils/FilePrinter";
6
- import { DtoProgrammer } from "./DtoProgrammer";
7
- import { ImportProgrammer } from "./ImportProgrammer";
8
- import { NestControllerProgrammer } from "./NestControllerProgrammer";
9
- import { NestModuleProgrammer } from "./NestModuleProgrammer";
10
-
11
- export namespace NestProgrammer {
12
- export const write = (program: IMigrateProgram): IMigrateFile[] =>
13
- [
14
- {
15
- location: "src",
16
- file: "MyModule.ts",
17
- statements: NestModuleProgrammer.write(program.controllers),
18
- },
19
- ...program.controllers.map((c) => ({
20
- location: c.location,
21
- file: `${c.name}.ts`,
22
- statements: NestControllerProgrammer.write(program.swagger.components)(
23
- c,
24
- ),
25
- })),
26
- ...[...DtoProgrammer.write(program.swagger.components).entries()].map(
27
- ([key, value]) => ({
28
- location: "src/api/structures",
29
- file: `${key}.ts`,
30
- statements: writeDtoFile(key, value),
31
- }),
32
- ),
33
- ].map((o) => ({
34
- location: o.location,
35
- file: o.file,
36
- content: FilePrinter.write({ statements: o.statements }),
37
- }));
38
-
39
- const writeDtoFile = (
40
- key: string,
41
- modulo: DtoProgrammer.IModule,
42
- ): ts.Statement[] => {
43
- const importer = new ImportProgrammer();
44
- const statements: ts.Statement[] = iterate(importer)(modulo);
45
- if (statements.length === 0) return [];
46
-
47
- return [
48
- ...importer.toStatements((name) => `./${name}`, key),
49
- ...(importer.empty() ? [] : [FilePrinter.enter()]),
50
- ...statements,
51
- ];
52
- };
53
-
54
- const iterate =
55
- (importer: ImportProgrammer) =>
56
- (modulo: DtoProgrammer.IModule): ts.Statement[] => {
57
- const output: ts.Statement[] = [];
58
- if (modulo.programmer !== null) output.push(modulo.programmer(importer));
59
- if (modulo.children.size) {
60
- const internal: ts.Statement[] = [];
61
- for (const child of modulo.children.values())
62
- internal.push(...iterate(importer)(child));
63
- output.push(
64
- ts.factory.createModuleDeclaration(
65
- [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)],
66
- ts.factory.createIdentifier(modulo.name),
67
- ts.factory.createModuleBlock(internal),
68
- ts.NodeFlags.Namespace,
69
- ),
70
- );
71
- }
72
- return output;
73
- };
74
- }
1
+ import ts from "typescript";
2
+
3
+ import { IMigrateFile } from "../structures/IMigrateFile";
4
+ import { IMigrateProgram } from "../structures/IMigrateProgram";
5
+ import { FilePrinter } from "../utils/FilePrinter";
6
+ import { MigrateDtoProgrammer } from "./MigrateDtoProgrammer";
7
+ import { MigrateImportProgrammer } from "./MigrateImportProgrammer";
8
+ import { MigrateNestControllerProgrammer } from "./MigrateNestControllerProgrammer";
9
+ import { MigrateNestModuleProgrammer } from "./MigrateNestModuleProgrammer";
10
+
11
+ export namespace MigrateNestProgrammer {
12
+ export const write = (program: IMigrateProgram): IMigrateFile[] =>
13
+ [
14
+ {
15
+ location: "src",
16
+ file: "MyModule.ts",
17
+ statements: MigrateNestModuleProgrammer.write(program.controllers),
18
+ },
19
+ ...program.controllers.map((c) => ({
20
+ location: c.location,
21
+ file: `${c.name}.ts`,
22
+ statements: MigrateNestControllerProgrammer.write(
23
+ program.swagger.components,
24
+ )(c),
25
+ })),
26
+ ...[
27
+ ...MigrateDtoProgrammer.write(program.swagger.components).entries(),
28
+ ].map(([key, value]) => ({
29
+ location: "src/api/structures",
30
+ file: `${key}.ts`,
31
+ statements: writeDtoFile(key, value),
32
+ })),
33
+ ].map((o) => ({
34
+ location: o.location,
35
+ file: o.file,
36
+ content: FilePrinter.write({ statements: o.statements }),
37
+ }));
38
+
39
+ const writeDtoFile = (
40
+ key: string,
41
+ modulo: MigrateDtoProgrammer.IModule,
42
+ ): ts.Statement[] => {
43
+ const importer = new MigrateImportProgrammer();
44
+ const statements: ts.Statement[] = iterate(importer)(modulo);
45
+ if (statements.length === 0) return [];
46
+
47
+ return [
48
+ ...importer.toStatements((name) => `./${name}`, key),
49
+ ...(importer.empty() ? [] : [FilePrinter.newLine()]),
50
+ ...statements,
51
+ ];
52
+ };
53
+
54
+ const iterate =
55
+ (importer: MigrateImportProgrammer) =>
56
+ (modulo: MigrateDtoProgrammer.IModule): ts.Statement[] => {
57
+ const output: ts.Statement[] = [];
58
+ if (modulo.programmer !== null) output.push(modulo.programmer(importer));
59
+ if (modulo.children.size) {
60
+ const internal: ts.Statement[] = [];
61
+ for (const child of modulo.children.values())
62
+ internal.push(...iterate(importer)(child));
63
+ output.push(
64
+ ts.factory.createModuleDeclaration(
65
+ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)],
66
+ ts.factory.createIdentifier(modulo.name),
67
+ ts.factory.createModuleBlock(internal),
68
+ ts.NodeFlags.Namespace,
69
+ ),
70
+ );
71
+ }
72
+ return output;
73
+ };
74
+ }