@nestia/migrate 10.0.1 → 11.0.0-dev.20260305

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 (162) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +93 -93
  3. package/package.json +32 -46
  4. package/src/NestiaMigrateApplication.ts +161 -159
  5. package/src/analyzers/NestiaMigrateControllerAnalyzer.ts +51 -51
  6. package/src/archivers/NestiaMigrateFileArchiver.ts +28 -28
  7. package/src/bundles/NEST_TEMPLATE.ts +48 -48
  8. package/src/bundles/SDK_TEMPLATE.ts +21 -21
  9. package/src/executable/NestiaMigrateCommander.ts +98 -98
  10. package/src/executable/NestiaMigrateInquirer.ts +106 -106
  11. package/src/executable/bundle.js +125 -125
  12. package/src/executable/migrate.ts +7 -7
  13. package/src/factories/TypeLiteralFactory.ts +57 -57
  14. package/src/index.ts +4 -4
  15. package/src/module.ts +6 -2
  16. package/src/programmers/NestiaMigrateApiFileProgrammer.ts +55 -55
  17. package/src/programmers/NestiaMigrateApiFunctionProgrammer.ts +347 -344
  18. package/src/programmers/NestiaMigrateApiNamespaceProgrammer.ts +517 -514
  19. package/src/programmers/NestiaMigrateApiProgrammer.ts +107 -107
  20. package/src/programmers/NestiaMigrateApiSimulationProgrammer.ts +308 -309
  21. package/src/programmers/NestiaMigrateApiStartProgrammer.ts +197 -198
  22. package/src/programmers/NestiaMigrateDtoProgrammer.ts +98 -98
  23. package/src/programmers/NestiaMigrateE2eFileProgrammer.ts +153 -153
  24. package/src/programmers/NestiaMigrateE2eProgrammer.ts +48 -48
  25. package/src/programmers/NestiaMigrateImportProgrammer.ts +118 -118
  26. package/src/programmers/NestiaMigrateNestControllerProgrammer.ts +69 -69
  27. package/src/programmers/NestiaMigrateNestMethodProgrammer.ts +409 -406
  28. package/src/programmers/NestiaMigrateNestModuleProgrammer.ts +65 -65
  29. package/src/programmers/NestiaMigrateNestProgrammer.ts +88 -88
  30. package/src/programmers/NestiaMigrateSchemaProgrammer.ts +465 -522
  31. package/src/structures/INestiaMigrateConfig.ts +19 -19
  32. package/src/structures/INestiaMigrateContext.ts +9 -9
  33. package/src/structures/INestiaMigrateController.ts +8 -8
  34. package/src/structures/INestiaMigrateDto.ts +8 -8
  35. package/src/structures/INestiaMigrateFile.ts +5 -5
  36. package/src/structures/INestiaMigrateProgram.ts +11 -11
  37. package/src/structures/INestiaMigrateSchema.ts +4 -4
  38. package/src/utils/FilePrinter.ts +49 -49
  39. package/src/utils/MapUtil.ts +13 -13
  40. package/src/utils/SetupWizard.ts +12 -12
  41. package/src/utils/StringUtil.ts +114 -113
  42. package/src/utils/openapi-down-convert/RefVisitor.ts +134 -134
  43. package/src/utils/openapi-down-convert/converter.ts +536 -536
  44. package/lib/NestiaMigrateApplication.d.ts +0 -24
  45. package/lib/NestiaMigrateApplication.js +0 -18757
  46. package/lib/NestiaMigrateApplication.js.map +0 -1
  47. package/lib/analyzers/NestiaMigrateControllerAnalyzer.d.ts +0 -5
  48. package/lib/analyzers/NestiaMigrateControllerAnalyzer.js +0 -46
  49. package/lib/analyzers/NestiaMigrateControllerAnalyzer.js.map +0 -1
  50. package/lib/archivers/NestiaMigrateFileArchiver.d.ts +0 -8
  51. package/lib/archivers/NestiaMigrateFileArchiver.js +0 -36
  52. package/lib/archivers/NestiaMigrateFileArchiver.js.map +0 -1
  53. package/lib/bundles/NEST_TEMPLATE.d.ts +0 -1
  54. package/lib/bundles/NEST_TEMPLATE.js +0 -55
  55. package/lib/bundles/NEST_TEMPLATE.js.map +0 -1
  56. package/lib/bundles/SDK_TEMPLATE.d.ts +0 -1
  57. package/lib/bundles/SDK_TEMPLATE.js +0 -27
  58. package/lib/bundles/SDK_TEMPLATE.js.map +0 -1
  59. package/lib/executable/NestiaMigrateCommander.d.ts +0 -4
  60. package/lib/executable/NestiaMigrateCommander.js +0 -125
  61. package/lib/executable/NestiaMigrateCommander.js.map +0 -1
  62. package/lib/executable/NestiaMigrateInquirer.d.ts +0 -12
  63. package/lib/executable/NestiaMigrateInquirer.js +0 -94
  64. package/lib/executable/NestiaMigrateInquirer.js.map +0 -1
  65. package/lib/executable/migrate.d.ts +0 -2
  66. package/lib/executable/migrate.js +0 -9
  67. package/lib/executable/migrate.js.map +0 -1
  68. package/lib/factories/TypeLiteralFactory.d.ts +0 -4
  69. package/lib/factories/TypeLiteralFactory.js +0 -35
  70. package/lib/factories/TypeLiteralFactory.js.map +0 -1
  71. package/lib/index.d.ts +0 -3
  72. package/lib/index.js +0 -42
  73. package/lib/index.js.map +0 -1
  74. package/lib/index.mjs +0 -19399
  75. package/lib/index.mjs.map +0 -1
  76. package/lib/module.d.ts +0 -2
  77. package/lib/module.js +0 -19
  78. package/lib/module.js.map +0 -1
  79. package/lib/programmers/NestiaMigrateApiFileProgrammer.d.ts +0 -13
  80. package/lib/programmers/NestiaMigrateApiFileProgrammer.js +0 -40
  81. package/lib/programmers/NestiaMigrateApiFileProgrammer.js.map +0 -1
  82. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.d.ts +0 -14
  83. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js +0 -179
  84. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js.map +0 -1
  85. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.d.ts +0 -14
  86. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.js +0 -226
  87. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.js.map +0 -1
  88. package/lib/programmers/NestiaMigrateApiProgrammer.d.ts +0 -4
  89. package/lib/programmers/NestiaMigrateApiProgrammer.js +0 -82
  90. package/lib/programmers/NestiaMigrateApiProgrammer.js.map +0 -1
  91. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.d.ts +0 -14
  92. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.js +0 -142
  93. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.js.map +0 -1
  94. package/lib/programmers/NestiaMigrateApiStartProgrammer.d.ts +0 -4
  95. package/lib/programmers/NestiaMigrateApiStartProgrammer.js +0 -80
  96. package/lib/programmers/NestiaMigrateApiStartProgrammer.js.map +0 -1
  97. package/lib/programmers/NestiaMigrateDtoProgrammer.d.ts +0 -15
  98. package/lib/programmers/NestiaMigrateDtoProgrammer.js +0 -65
  99. package/lib/programmers/NestiaMigrateDtoProgrammer.js.map +0 -1
  100. package/lib/programmers/NestiaMigrateE2eFileProgrammer.d.ts +0 -14
  101. package/lib/programmers/NestiaMigrateE2eFileProgrammer.js +0 -81
  102. package/lib/programmers/NestiaMigrateE2eFileProgrammer.js.map +0 -1
  103. package/lib/programmers/NestiaMigrateE2eProgrammer.d.ts +0 -4
  104. package/lib/programmers/NestiaMigrateE2eProgrammer.js +0 -32
  105. package/lib/programmers/NestiaMigrateE2eProgrammer.js.map +0 -1
  106. package/lib/programmers/NestiaMigrateImportProgrammer.d.ts +0 -18
  107. package/lib/programmers/NestiaMigrateImportProgrammer.js +0 -65
  108. package/lib/programmers/NestiaMigrateImportProgrammer.js.map +0 -1
  109. package/lib/programmers/NestiaMigrateNestControllerProgrammer.d.ts +0 -12
  110. package/lib/programmers/NestiaMigrateNestControllerProgrammer.js +0 -46
  111. package/lib/programmers/NestiaMigrateNestControllerProgrammer.js.map +0 -1
  112. package/lib/programmers/NestiaMigrateNestMethodProgrammer.d.ts +0 -15
  113. package/lib/programmers/NestiaMigrateNestMethodProgrammer.js +0 -224
  114. package/lib/programmers/NestiaMigrateNestMethodProgrammer.js.map +0 -1
  115. package/lib/programmers/NestiaMigrateNestModuleProgrammer.d.ts +0 -5
  116. package/lib/programmers/NestiaMigrateNestModuleProgrammer.js +0 -29
  117. package/lib/programmers/NestiaMigrateNestModuleProgrammer.js.map +0 -1
  118. package/lib/programmers/NestiaMigrateNestProgrammer.d.ts +0 -4
  119. package/lib/programmers/NestiaMigrateNestProgrammer.js +0 -65
  120. package/lib/programmers/NestiaMigrateNestProgrammer.js.map +0 -1
  121. package/lib/programmers/NestiaMigrateSchemaProgrammer.d.ts +0 -10
  122. package/lib/programmers/NestiaMigrateSchemaProgrammer.js +0 -469
  123. package/lib/programmers/NestiaMigrateSchemaProgrammer.js.map +0 -1
  124. package/lib/structures/INestiaMigrateConfig.d.ts +0 -15
  125. package/lib/structures/INestiaMigrateConfig.js +0 -3
  126. package/lib/structures/INestiaMigrateConfig.js.map +0 -1
  127. package/lib/structures/INestiaMigrateContext.d.ts +0 -7
  128. package/lib/structures/INestiaMigrateContext.js +0 -3
  129. package/lib/structures/INestiaMigrateContext.js.map +0 -1
  130. package/lib/structures/INestiaMigrateController.d.ts +0 -7
  131. package/lib/structures/INestiaMigrateController.js +0 -3
  132. package/lib/structures/INestiaMigrateController.js.map +0 -1
  133. package/lib/structures/INestiaMigrateDto.d.ts +0 -7
  134. package/lib/structures/INestiaMigrateDto.js +0 -3
  135. package/lib/structures/INestiaMigrateDto.js.map +0 -1
  136. package/lib/structures/INestiaMigrateFile.d.ts +0 -5
  137. package/lib/structures/INestiaMigrateFile.js +0 -3
  138. package/lib/structures/INestiaMigrateFile.js.map +0 -1
  139. package/lib/structures/INestiaMigrateProgram.d.ts +0 -9
  140. package/lib/structures/INestiaMigrateProgram.js +0 -3
  141. package/lib/structures/INestiaMigrateProgram.js.map +0 -1
  142. package/lib/structures/INestiaMigrateSchema.d.ts +0 -4
  143. package/lib/structures/INestiaMigrateSchema.js +0 -3
  144. package/lib/structures/INestiaMigrateSchema.js.map +0 -1
  145. package/lib/utils/FilePrinter.d.ts +0 -9
  146. package/lib/utils/FilePrinter.js +0 -35
  147. package/lib/utils/FilePrinter.js.map +0 -1
  148. package/lib/utils/MapUtil.d.ts +0 -3
  149. package/lib/utils/MapUtil.js +0 -15
  150. package/lib/utils/MapUtil.js.map +0 -1
  151. package/lib/utils/SetupWizard.d.ts +0 -3
  152. package/lib/utils/SetupWizard.js +0 -18
  153. package/lib/utils/SetupWizard.js.map +0 -1
  154. package/lib/utils/StringUtil.d.ts +0 -6
  155. package/lib/utils/StringUtil.js +0 -108
  156. package/lib/utils/StringUtil.js.map +0 -1
  157. package/lib/utils/openapi-down-convert/RefVisitor.d.ts +0 -52
  158. package/lib/utils/openapi-down-convert/RefVisitor.js +0 -102
  159. package/lib/utils/openapi-down-convert/RefVisitor.js.map +0 -1
  160. package/lib/utils/openapi-down-convert/converter.d.ts +0 -146
  161. package/lib/utils/openapi-down-convert/converter.js +0 -441
  162. package/lib/utils/openapi-down-convert/converter.js.map +0 -1
@@ -1,65 +1,65 @@
1
- import ts from "typescript";
2
-
3
- import { INestiaMigrateController } from "../structures/INestiaMigrateController";
4
- import { FilePrinter } from "../utils/FilePrinter";
5
-
6
- export namespace NestiaMigrateNestModuleProgrammer {
7
- export const write = (
8
- controllers: INestiaMigrateController[],
9
- ): ts.Statement[] => [
10
- $import("@nestjs/common")("Module"),
11
- ...(controllers.length ? [FilePrinter.newLine()] : []),
12
- ...controllers.map((c) =>
13
- $import(`${c.location.replace("src/", "./")}/${c.name}`)(c.name),
14
- ),
15
- ...(controllers.length ? [FilePrinter.newLine()] : []),
16
- ts.factory.createClassDeclaration(
17
- [
18
- ts.factory.createDecorator(
19
- ts.factory.createCallExpression(
20
- ts.factory.createIdentifier("Module"),
21
- undefined,
22
- [
23
- ts.factory.createObjectLiteralExpression(
24
- [
25
- ts.factory.createPropertyAssignment(
26
- ts.factory.createIdentifier("controllers"),
27
- ts.factory.createArrayLiteralExpression(
28
- controllers.map((c) =>
29
- ts.factory.createIdentifier(c.name),
30
- ),
31
- true,
32
- ),
33
- ),
34
- ],
35
- true,
36
- ),
37
- ],
38
- ),
39
- ),
40
- ts.factory.createToken(ts.SyntaxKind.ExportKeyword),
41
- ],
42
- "MyModule",
43
- undefined,
44
- undefined,
45
- [],
46
- ),
47
- ];
48
- }
49
-
50
- const $import = (file: string) => (instance: string) =>
51
- ts.factory.createImportDeclaration(
52
- undefined,
53
- ts.factory.createImportClause(
54
- false,
55
- undefined,
56
- ts.factory.createNamedImports([
57
- ts.factory.createImportSpecifier(
58
- false,
59
- undefined,
60
- ts.factory.createIdentifier(instance),
61
- ),
62
- ]),
63
- ),
64
- ts.factory.createStringLiteral(file),
65
- );
1
+ import ts from "typescript";
2
+
3
+ import { INestiaMigrateController } from "../structures/INestiaMigrateController";
4
+ import { FilePrinter } from "../utils/FilePrinter";
5
+
6
+ export namespace NestiaMigrateNestModuleProgrammer {
7
+ export const write = (
8
+ controllers: INestiaMigrateController[],
9
+ ): ts.Statement[] => [
10
+ $import("@nestjs/common")("Module"),
11
+ ...(controllers.length ? [FilePrinter.newLine()] : []),
12
+ ...controllers.map((c) =>
13
+ $import(`${c.location.replace("src/", "./")}/${c.name}`)(c.name),
14
+ ),
15
+ ...(controllers.length ? [FilePrinter.newLine()] : []),
16
+ ts.factory.createClassDeclaration(
17
+ [
18
+ ts.factory.createDecorator(
19
+ ts.factory.createCallExpression(
20
+ ts.factory.createIdentifier("Module"),
21
+ undefined,
22
+ [
23
+ ts.factory.createObjectLiteralExpression(
24
+ [
25
+ ts.factory.createPropertyAssignment(
26
+ ts.factory.createIdentifier("controllers"),
27
+ ts.factory.createArrayLiteralExpression(
28
+ controllers.map((c) =>
29
+ ts.factory.createIdentifier(c.name),
30
+ ),
31
+ true,
32
+ ),
33
+ ),
34
+ ],
35
+ true,
36
+ ),
37
+ ],
38
+ ),
39
+ ),
40
+ ts.factory.createToken(ts.SyntaxKind.ExportKeyword),
41
+ ],
42
+ "MyModule",
43
+ undefined,
44
+ undefined,
45
+ [],
46
+ ),
47
+ ];
48
+ }
49
+
50
+ const $import = (file: string) => (instance: string) =>
51
+ ts.factory.createImportDeclaration(
52
+ undefined,
53
+ ts.factory.createImportClause(
54
+ false,
55
+ undefined,
56
+ ts.factory.createNamedImports([
57
+ ts.factory.createImportSpecifier(
58
+ false,
59
+ undefined,
60
+ ts.factory.createIdentifier(instance),
61
+ ),
62
+ ]),
63
+ ),
64
+ ts.factory.createStringLiteral(file),
65
+ );
@@ -1,88 +1,88 @@
1
- import ts from "typescript";
2
-
3
- import { NestiaMigrateControllerAnalyzer } from "../analyzers/NestiaMigrateControllerAnalyzer";
4
- import { INestiaMigrateContext } from "../structures/INestiaMigrateContext";
5
- import { INestiaMigrateController } from "../structures/INestiaMigrateController";
6
- import { FilePrinter } from "../utils/FilePrinter";
7
- import { NestiaMigrateDtoProgrammer } from "./NestiaMigrateDtoProgrammer";
8
- import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
9
- import { NestiaMigrateNestControllerProgrammer } from "./NestiaMigrateNestControllerProgrammer";
10
- import { NestiaMigrateNestModuleProgrammer } from "./NestiaMigrateNestModuleProgrammer";
11
-
12
- export namespace NestiaMigrateNestProgrammer {
13
- export const write = (
14
- context: INestiaMigrateContext,
15
- ): Record<string, string> => {
16
- const controllers: INestiaMigrateController[] =
17
- NestiaMigrateControllerAnalyzer.analyze(context.application.routes);
18
- const statements: [string, ts.Statement[]][] = [
19
- ["src/MyModule.ts", NestiaMigrateNestModuleProgrammer.write(controllers)],
20
- ...controllers.map(
21
- (c) =>
22
- [
23
- `${c.location}/${c.name}.ts`,
24
- NestiaMigrateNestControllerProgrammer.write({
25
- config: context.config,
26
- components: context.application.document().components,
27
- controller: c,
28
- }),
29
- ] satisfies [string, ts.Statement[]],
30
- ),
31
- ...[
32
- ...NestiaMigrateDtoProgrammer.compose({
33
- config: context.config,
34
- components: context.application.document().components,
35
- }).entries(),
36
- ].map(
37
- ([key, value]) =>
38
- [`src/api/structures/${key}.ts`, writeDtoFile(key, value)] satisfies [
39
- string,
40
- ts.Statement[],
41
- ],
42
- ),
43
- ];
44
- return Object.fromEntries(
45
- statements.map(([key, value]) => [
46
- key,
47
- FilePrinter.write({ statements: value }),
48
- ]),
49
- );
50
- };
51
-
52
- const writeDtoFile = (
53
- key: string,
54
- modulo: NestiaMigrateDtoProgrammer.IModule,
55
- ): ts.Statement[] => {
56
- const importer = new NestiaMigrateImportProgrammer();
57
- const statements: ts.Statement[] = iterate(importer)(modulo);
58
- if (statements.length === 0) return [];
59
-
60
- return [
61
- ...importer.toStatements((name) => `./${name}`, key),
62
- ...(importer.empty() ? [] : [FilePrinter.newLine()]),
63
- ...statements,
64
- ];
65
- };
66
-
67
- const iterate =
68
- (importer: NestiaMigrateImportProgrammer) =>
69
- (modulo: NestiaMigrateDtoProgrammer.IModule): ts.Statement[] => {
70
- const output: ts.Statement[] = [];
71
- if (modulo.programmer !== null) output.push(modulo.programmer(importer));
72
- if (modulo.children.size) {
73
- const internal: ts.Statement[] = [];
74
- for (const child of modulo.children.values())
75
- internal.push(...iterate(importer)(child));
76
- output.push(
77
- ts.factory.createModuleDeclaration(
78
- [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)],
79
- ts.factory.createIdentifier(modulo.name),
80
- ts.factory.createModuleBlock(internal),
81
- ts.NodeFlags.Namespace,
82
- ),
83
- );
84
- }
85
- output.push(FilePrinter.newLine());
86
- return output;
87
- };
88
- }
1
+ import ts from "typescript";
2
+
3
+ import { NestiaMigrateControllerAnalyzer } from "../analyzers/NestiaMigrateControllerAnalyzer";
4
+ import { INestiaMigrateContext } from "../structures/INestiaMigrateContext";
5
+ import { INestiaMigrateController } from "../structures/INestiaMigrateController";
6
+ import { FilePrinter } from "../utils/FilePrinter";
7
+ import { NestiaMigrateDtoProgrammer } from "./NestiaMigrateDtoProgrammer";
8
+ import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
9
+ import { NestiaMigrateNestControllerProgrammer } from "./NestiaMigrateNestControllerProgrammer";
10
+ import { NestiaMigrateNestModuleProgrammer } from "./NestiaMigrateNestModuleProgrammer";
11
+
12
+ export namespace NestiaMigrateNestProgrammer {
13
+ export const write = (
14
+ context: INestiaMigrateContext,
15
+ ): Record<string, string> => {
16
+ const controllers: INestiaMigrateController[] =
17
+ NestiaMigrateControllerAnalyzer.analyze(context.application.routes);
18
+ const statements: [string, ts.Statement[]][] = [
19
+ ["src/MyModule.ts", NestiaMigrateNestModuleProgrammer.write(controllers)],
20
+ ...controllers.map(
21
+ (c) =>
22
+ [
23
+ `${c.location}/${c.name}.ts`,
24
+ NestiaMigrateNestControllerProgrammer.write({
25
+ config: context.config,
26
+ components: context.application.document().components,
27
+ controller: c,
28
+ }),
29
+ ] satisfies [string, ts.Statement[]],
30
+ ),
31
+ ...[
32
+ ...NestiaMigrateDtoProgrammer.compose({
33
+ config: context.config,
34
+ components: context.application.document().components,
35
+ }).entries(),
36
+ ].map(
37
+ ([key, value]) =>
38
+ [`src/api/structures/${key}.ts`, writeDtoFile(key, value)] satisfies [
39
+ string,
40
+ ts.Statement[],
41
+ ],
42
+ ),
43
+ ];
44
+ return Object.fromEntries(
45
+ statements.map(([key, value]) => [
46
+ key,
47
+ FilePrinter.write({ statements: value }),
48
+ ]),
49
+ );
50
+ };
51
+
52
+ const writeDtoFile = (
53
+ key: string,
54
+ modulo: NestiaMigrateDtoProgrammer.IModule,
55
+ ): ts.Statement[] => {
56
+ const importer = new NestiaMigrateImportProgrammer();
57
+ const statements: ts.Statement[] = iterate(importer)(modulo);
58
+ if (statements.length === 0) return [];
59
+
60
+ return [
61
+ ...importer.toStatements((name) => `./${name}`, key),
62
+ ...(importer.empty() ? [] : [FilePrinter.newLine()]),
63
+ ...statements,
64
+ ];
65
+ };
66
+
67
+ const iterate =
68
+ (importer: NestiaMigrateImportProgrammer) =>
69
+ (modulo: NestiaMigrateDtoProgrammer.IModule): ts.Statement[] => {
70
+ const output: ts.Statement[] = [];
71
+ if (modulo.programmer !== null) output.push(modulo.programmer(importer));
72
+ if (modulo.children.size) {
73
+ const internal: ts.Statement[] = [];
74
+ for (const child of modulo.children.values())
75
+ internal.push(...iterate(importer)(child));
76
+ output.push(
77
+ ts.factory.createModuleDeclaration(
78
+ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)],
79
+ ts.factory.createIdentifier(modulo.name),
80
+ ts.factory.createModuleBlock(internal),
81
+ ts.NodeFlags.Namespace,
82
+ ),
83
+ );
84
+ }
85
+ output.push(FilePrinter.newLine());
86
+ return output;
87
+ };
88
+ }