@nestia/migrate 12.0.0-dev.20260601.1 → 12.0.0-dev.20260612.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.
Files changed (50) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +93 -93
  3. package/lib/NestiaMigrateApplication.js +19 -1
  4. package/lib/NestiaMigrateApplication.js.map +1 -1
  5. package/lib/bundles/NEST_TEMPLATE.js +47 -47
  6. package/lib/bundles/NEST_TEMPLATE.js.map +1 -1
  7. package/lib/bundles/SDK_TEMPLATE.js +20 -20
  8. package/lib/bundles/SDK_TEMPLATE.js.map +1 -1
  9. package/lib/index.mjs +94 -77
  10. package/lib/index.mjs.map +1 -1
  11. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js +6 -2
  12. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js.map +1 -1
  13. package/package.json +5 -5
  14. package/src/NestiaMigrateApplication.ts +196 -167
  15. package/src/analyzers/NestiaMigrateControllerAnalyzer.ts +51 -51
  16. package/src/archivers/NestiaMigrateFileArchiver.ts +28 -28
  17. package/src/bundles/NEST_TEMPLATE.ts +47 -47
  18. package/src/bundles/SDK_TEMPLATE.ts +20 -20
  19. package/src/executable/NestiaMigrateCommander.ts +115 -115
  20. package/src/executable/NestiaMigrateInquirer.ts +106 -106
  21. package/src/executable/bundle.js +349 -349
  22. package/src/executable/migrate.ts +7 -7
  23. package/src/factories/TypeLiteralFactory.ts +63 -63
  24. package/src/index.ts +4 -4
  25. package/src/internal/ts.ts +94 -94
  26. package/src/module.ts +6 -6
  27. package/src/programmers/NestiaMigrateApiFileProgrammer.ts +58 -58
  28. package/src/programmers/NestiaMigrateApiFunctionProgrammer.ts +373 -369
  29. package/src/programmers/NestiaMigrateApiNamespaceProgrammer.ts +528 -528
  30. package/src/programmers/NestiaMigrateApiProgrammer.ts +108 -108
  31. package/src/programmers/NestiaMigrateApiSimulationProgrammer.ts +314 -314
  32. package/src/programmers/NestiaMigrateApiStartProgrammer.ts +198 -198
  33. package/src/programmers/NestiaMigrateDtoProgrammer.ts +99 -99
  34. package/src/programmers/NestiaMigrateE2eFileProgrammer.ts +156 -156
  35. package/src/programmers/NestiaMigrateE2eProgrammer.ts +48 -48
  36. package/src/programmers/NestiaMigrateImportProgrammer.ts +119 -119
  37. package/src/programmers/NestiaMigrateNestControllerProgrammer.ts +70 -70
  38. package/src/programmers/NestiaMigrateNestMethodProgrammer.ts +414 -414
  39. package/src/programmers/NestiaMigrateNestModuleProgrammer.ts +66 -66
  40. package/src/programmers/NestiaMigrateNestProgrammer.ts +89 -89
  41. package/src/programmers/NestiaMigrateSchemaProgrammer.ts +477 -477
  42. package/src/programmers/index.ts +15 -15
  43. package/src/structures/INestiaMigrateConfig.ts +19 -19
  44. package/src/structures/INestiaMigrateContext.ts +9 -9
  45. package/src/structures/INestiaMigrateController.ts +8 -8
  46. package/src/structures/INestiaMigrateFile.ts +5 -5
  47. package/src/structures/index.ts +4 -4
  48. package/src/utils/FilePrinter.ts +44 -44
  49. package/src/utils/MapUtil.ts +13 -13
  50. package/src/utils/StringUtil.ts +109 -109
@@ -1,70 +1,70 @@
1
- import { TypeScriptFactory } from "@nestia/factory";
2
- import { OpenApi } from "@typia/interface";
3
- import ts from "../internal/ts";
4
-
5
- import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
6
- import { INestiaMigrateController } from "../structures/INestiaMigrateController";
7
- import { FilePrinter } from "../utils/FilePrinter";
8
- import { StringUtil } from "../utils/StringUtil";
9
- import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
10
- import { NestiaMigrateNestMethodProgrammer } from "./NestiaMigrateNestMethodProgrammer";
11
-
12
- export namespace NestiaMigrateNestControllerProgrammer {
13
- export interface IProps {
14
- config: INestiaMigrateConfig;
15
- components: OpenApi.IComponents;
16
- controller: INestiaMigrateController;
17
- }
18
-
19
- export const write = (props: IProps): ts.Statement[] => {
20
- const importer: NestiaMigrateImportProgrammer =
21
- new NestiaMigrateImportProgrammer();
22
- const $class = TypeScriptFactory.createClassDeclaration(
23
- [
24
- TypeScriptFactory.createDecorator(
25
- TypeScriptFactory.createCallExpression(
26
- TypeScriptFactory.createIdentifier(
27
- importer.external({
28
- type: "instance",
29
- library: "@nestjs/common",
30
- name: "Controller",
31
- }),
32
- ),
33
- [],
34
- [TypeScriptFactory.createStringLiteral(props.controller.path)],
35
- ),
36
- ),
37
- TypeScriptFactory.createToken(ts.SyntaxKind.ExportKeyword),
38
- ],
39
- props.controller.name,
40
- [],
41
- [],
42
- props.controller.routes
43
- .map((route, index) => [
44
- ...(index !== 0 ? [FilePrinter.newLine() as any] : []),
45
- (
46
- props.config.programmer?.controllerMethod ??
47
- NestiaMigrateNestMethodProgrammer.write
48
- )({
49
- config: props.config,
50
- components: props.components,
51
- controller: props.controller,
52
- importer,
53
- route,
54
- }),
55
- ])
56
- .flat(),
57
- );
58
- return [
59
- ...importer.toStatements(
60
- (ref) =>
61
- `${"../".repeat(
62
- StringUtil.splitWithNormalization(props.controller.location)
63
- .length - 1,
64
- )}api/structures/${ref}`,
65
- ),
66
- ...(importer.empty() ? [] : [FilePrinter.newLine()]),
67
- $class,
68
- ];
69
- };
70
- }
1
+ import { TypeScriptFactory } from "@nestia/factory";
2
+ import { OpenApi } from "@typia/interface";
3
+ import ts from "../internal/ts";
4
+
5
+ import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
6
+ import { INestiaMigrateController } from "../structures/INestiaMigrateController";
7
+ import { FilePrinter } from "../utils/FilePrinter";
8
+ import { StringUtil } from "../utils/StringUtil";
9
+ import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
10
+ import { NestiaMigrateNestMethodProgrammer } from "./NestiaMigrateNestMethodProgrammer";
11
+
12
+ export namespace NestiaMigrateNestControllerProgrammer {
13
+ export interface IProps {
14
+ config: INestiaMigrateConfig;
15
+ components: OpenApi.IComponents;
16
+ controller: INestiaMigrateController;
17
+ }
18
+
19
+ export const write = (props: IProps): ts.Statement[] => {
20
+ const importer: NestiaMigrateImportProgrammer =
21
+ new NestiaMigrateImportProgrammer();
22
+ const $class = TypeScriptFactory.createClassDeclaration(
23
+ [
24
+ TypeScriptFactory.createDecorator(
25
+ TypeScriptFactory.createCallExpression(
26
+ TypeScriptFactory.createIdentifier(
27
+ importer.external({
28
+ type: "instance",
29
+ library: "@nestjs/common",
30
+ name: "Controller",
31
+ }),
32
+ ),
33
+ [],
34
+ [TypeScriptFactory.createStringLiteral(props.controller.path)],
35
+ ),
36
+ ),
37
+ TypeScriptFactory.createToken(ts.SyntaxKind.ExportKeyword),
38
+ ],
39
+ props.controller.name,
40
+ [],
41
+ [],
42
+ props.controller.routes
43
+ .map((route, index) => [
44
+ ...(index !== 0 ? [FilePrinter.newLine() as any] : []),
45
+ (
46
+ props.config.programmer?.controllerMethod ??
47
+ NestiaMigrateNestMethodProgrammer.write
48
+ )({
49
+ config: props.config,
50
+ components: props.components,
51
+ controller: props.controller,
52
+ importer,
53
+ route,
54
+ }),
55
+ ])
56
+ .flat(),
57
+ );
58
+ return [
59
+ ...importer.toStatements(
60
+ (ref) =>
61
+ `${"../".repeat(
62
+ StringUtil.splitWithNormalization(props.controller.location)
63
+ .length - 1,
64
+ )}api/structures/${ref}`,
65
+ ),
66
+ ...(importer.empty() ? [] : [FilePrinter.newLine()]),
67
+ $class,
68
+ ];
69
+ };
70
+ }