@nestia/migrate 11.0.0-dev.20260305 → 11.0.0-dev.20260312

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 (140) hide show
  1. package/lib/NestiaMigrateApplication.d.ts +24 -0
  2. package/lib/NestiaMigrateApplication.js +21136 -0
  3. package/lib/NestiaMigrateApplication.js.map +1 -0
  4. package/lib/analyzers/NestiaMigrateControllerAnalyzer.d.ts +5 -0
  5. package/lib/analyzers/NestiaMigrateControllerAnalyzer.js +46 -0
  6. package/lib/analyzers/NestiaMigrateControllerAnalyzer.js.map +1 -0
  7. package/lib/archivers/NestiaMigrateFileArchiver.d.ts +8 -0
  8. package/lib/archivers/NestiaMigrateFileArchiver.js +36 -0
  9. package/lib/archivers/NestiaMigrateFileArchiver.js.map +1 -0
  10. package/lib/bundles/NEST_TEMPLATE.d.ts +1 -0
  11. package/lib/bundles/NEST_TEMPLATE.js +55 -0
  12. package/lib/bundles/NEST_TEMPLATE.js.map +1 -0
  13. package/lib/bundles/SDK_TEMPLATE.d.ts +1 -0
  14. package/lib/bundles/SDK_TEMPLATE.js +27 -0
  15. package/lib/bundles/SDK_TEMPLATE.js.map +1 -0
  16. package/lib/executable/NestiaMigrateCommander.d.ts +4 -0
  17. package/lib/executable/NestiaMigrateCommander.js +125 -0
  18. package/lib/executable/NestiaMigrateCommander.js.map +1 -0
  19. package/lib/executable/NestiaMigrateInquirer.d.ts +12 -0
  20. package/lib/executable/NestiaMigrateInquirer.js +91 -0
  21. package/lib/executable/NestiaMigrateInquirer.js.map +1 -0
  22. package/lib/executable/migrate.d.ts +2 -0
  23. package/lib/executable/migrate.js +9 -0
  24. package/lib/executable/migrate.js.map +1 -0
  25. package/lib/factories/TypeLiteralFactory.d.ts +4 -0
  26. package/lib/factories/TypeLiteralFactory.js +35 -0
  27. package/lib/factories/TypeLiteralFactory.js.map +1 -0
  28. package/lib/index.d.ts +3 -0
  29. package/lib/index.js +42 -0
  30. package/lib/index.js.map +1 -0
  31. package/lib/index.mjs +21834 -0
  32. package/lib/index.mjs.map +1 -0
  33. package/lib/module.d.ts +5 -0
  34. package/lib/module.js +22 -0
  35. package/lib/module.js.map +1 -0
  36. package/lib/programmers/NestiaMigrateApiFileProgrammer.d.ts +13 -0
  37. package/lib/programmers/NestiaMigrateApiFileProgrammer.js +40 -0
  38. package/lib/programmers/NestiaMigrateApiFileProgrammer.js.map +1 -0
  39. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.d.ts +14 -0
  40. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js +180 -0
  41. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js.map +1 -0
  42. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.d.ts +15 -0
  43. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.js +223 -0
  44. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.js.map +1 -0
  45. package/lib/programmers/NestiaMigrateApiProgrammer.d.ts +4 -0
  46. package/lib/programmers/NestiaMigrateApiProgrammer.js +82 -0
  47. package/lib/programmers/NestiaMigrateApiProgrammer.js.map +1 -0
  48. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.d.ts +15 -0
  49. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.js +140 -0
  50. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.js.map +1 -0
  51. package/lib/programmers/NestiaMigrateApiStartProgrammer.d.ts +4 -0
  52. package/lib/programmers/NestiaMigrateApiStartProgrammer.js +79 -0
  53. package/lib/programmers/NestiaMigrateApiStartProgrammer.js.map +1 -0
  54. package/lib/programmers/NestiaMigrateDtoProgrammer.d.ts +15 -0
  55. package/lib/programmers/NestiaMigrateDtoProgrammer.js +65 -0
  56. package/lib/programmers/NestiaMigrateDtoProgrammer.js.map +1 -0
  57. package/lib/programmers/NestiaMigrateE2eFileProgrammer.d.ts +15 -0
  58. package/lib/programmers/NestiaMigrateE2eFileProgrammer.js +80 -0
  59. package/lib/programmers/NestiaMigrateE2eFileProgrammer.js.map +1 -0
  60. package/lib/programmers/NestiaMigrateE2eProgrammer.d.ts +4 -0
  61. package/lib/programmers/NestiaMigrateE2eProgrammer.js +32 -0
  62. package/lib/programmers/NestiaMigrateE2eProgrammer.js.map +1 -0
  63. package/lib/programmers/NestiaMigrateImportProgrammer.d.ts +18 -0
  64. package/lib/programmers/NestiaMigrateImportProgrammer.js +65 -0
  65. package/lib/programmers/NestiaMigrateImportProgrammer.js.map +1 -0
  66. package/lib/programmers/NestiaMigrateNestControllerProgrammer.d.ts +12 -0
  67. package/lib/programmers/NestiaMigrateNestControllerProgrammer.js +46 -0
  68. package/lib/programmers/NestiaMigrateNestControllerProgrammer.js.map +1 -0
  69. package/lib/programmers/NestiaMigrateNestMethodProgrammer.d.ts +16 -0
  70. package/lib/programmers/NestiaMigrateNestMethodProgrammer.js +221 -0
  71. package/lib/programmers/NestiaMigrateNestMethodProgrammer.js.map +1 -0
  72. package/lib/programmers/NestiaMigrateNestModuleProgrammer.d.ts +5 -0
  73. package/lib/programmers/NestiaMigrateNestModuleProgrammer.js +29 -0
  74. package/lib/programmers/NestiaMigrateNestModuleProgrammer.js.map +1 -0
  75. package/lib/programmers/NestiaMigrateNestProgrammer.d.ts +4 -0
  76. package/lib/programmers/NestiaMigrateNestProgrammer.js +65 -0
  77. package/lib/programmers/NestiaMigrateNestProgrammer.js.map +1 -0
  78. package/lib/programmers/NestiaMigrateSchemaProgrammer.d.ts +10 -0
  79. package/lib/programmers/NestiaMigrateSchemaProgrammer.js +339 -0
  80. package/lib/programmers/NestiaMigrateSchemaProgrammer.js.map +1 -0
  81. package/lib/structures/INestiaMigrateConfig.d.ts +15 -0
  82. package/lib/structures/INestiaMigrateConfig.js +3 -0
  83. package/lib/structures/INestiaMigrateConfig.js.map +1 -0
  84. package/lib/structures/INestiaMigrateContext.d.ts +7 -0
  85. package/lib/structures/INestiaMigrateContext.js +3 -0
  86. package/lib/structures/INestiaMigrateContext.js.map +1 -0
  87. package/lib/structures/INestiaMigrateController.d.ts +7 -0
  88. package/lib/structures/INestiaMigrateController.js +3 -0
  89. package/lib/structures/INestiaMigrateController.js.map +1 -0
  90. package/lib/structures/INestiaMigrateDto.d.ts +7 -0
  91. package/lib/structures/INestiaMigrateDto.js +3 -0
  92. package/lib/structures/INestiaMigrateDto.js.map +1 -0
  93. package/lib/structures/INestiaMigrateFile.d.ts +5 -0
  94. package/lib/structures/INestiaMigrateFile.js +3 -0
  95. package/lib/structures/INestiaMigrateFile.js.map +1 -0
  96. package/lib/structures/INestiaMigrateProgram.d.ts +9 -0
  97. package/lib/structures/INestiaMigrateProgram.js +3 -0
  98. package/lib/structures/INestiaMigrateProgram.js.map +1 -0
  99. package/lib/structures/INestiaMigrateSchema.d.ts +4 -0
  100. package/lib/structures/INestiaMigrateSchema.js +3 -0
  101. package/lib/structures/INestiaMigrateSchema.js.map +1 -0
  102. package/lib/utils/FilePrinter.d.ts +9 -0
  103. package/lib/utils/FilePrinter.js +35 -0
  104. package/lib/utils/FilePrinter.js.map +1 -0
  105. package/lib/utils/MapUtil.d.ts +3 -0
  106. package/lib/utils/MapUtil.js +15 -0
  107. package/lib/utils/MapUtil.js.map +1 -0
  108. package/lib/utils/SetupWizard.d.ts +3 -0
  109. package/lib/utils/SetupWizard.js +18 -0
  110. package/lib/utils/SetupWizard.js.map +1 -0
  111. package/lib/utils/StringUtil.d.ts +6 -0
  112. package/lib/utils/StringUtil.js +108 -0
  113. package/lib/utils/StringUtil.js.map +1 -0
  114. package/lib/utils/openapi-down-convert/RefVisitor.d.ts +52 -0
  115. package/lib/utils/openapi-down-convert/RefVisitor.js +102 -0
  116. package/lib/utils/openapi-down-convert/RefVisitor.js.map +1 -0
  117. package/lib/utils/openapi-down-convert/converter.d.ts +146 -0
  118. package/lib/utils/openapi-down-convert/converter.js +441 -0
  119. package/lib/utils/openapi-down-convert/converter.js.map +1 -0
  120. package/package.json +5 -5
  121. package/src/NestiaMigrateApplication.ts +4 -0
  122. package/src/archivers/NestiaMigrateFileArchiver.ts +28 -28
  123. package/src/bundles/NEST_TEMPLATE.ts +1 -1
  124. package/src/bundles/SDK_TEMPLATE.ts +1 -1
  125. package/src/executable/NestiaMigrateCommander.ts +8 -2
  126. package/src/executable/migrate.ts +7 -7
  127. package/src/index.ts +4 -4
  128. package/src/module.ts +3 -2
  129. package/src/programmers/NestiaMigrateApiProgrammer.ts +107 -107
  130. package/src/programmers/NestiaMigrateNestModuleProgrammer.ts +65 -65
  131. package/src/programmers/NestiaMigrateNestProgrammer.ts +88 -88
  132. package/src/programmers/index.ts +15 -0
  133. package/src/structures/INestiaMigrateConfig.ts +19 -19
  134. package/src/structures/INestiaMigrateFile.ts +5 -5
  135. package/src/structures/INestiaMigrateSchema.ts +4 -4
  136. package/src/structures/index.ts +4 -0
  137. package/src/utils/MapUtil.ts +13 -13
  138. package/src/utils/SetupWizard.ts +12 -12
  139. package/src/utils/openapi-down-convert/RefVisitor.ts +134 -134
  140. package/src/utils/openapi-down-convert/converter.ts +536 -536
@@ -0,0 +1,15 @@
1
+ import { OpenApi } from "@typia/interface";
2
+ import ts from "typescript";
3
+ import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
4
+ import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
5
+ export declare namespace NestiaMigrateDtoProgrammer {
6
+ interface IModule {
7
+ name: string;
8
+ children: Map<string, IModule>;
9
+ programmer: null | ((importer: NestiaMigrateImportProgrammer) => ts.TypeAliasDeclaration);
10
+ }
11
+ const compose: (props: {
12
+ config: INestiaMigrateConfig;
13
+ components: OpenApi.IComponents;
14
+ }) => Map<string, IModule>;
15
+ }
@@ -0,0 +1,65 @@
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.NestiaMigrateDtoProgrammer = void 0;
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const FilePrinter_1 = require("../utils/FilePrinter");
9
+ const MapUtil_1 = require("../utils/MapUtil");
10
+ const StringUtil_1 = require("../utils/StringUtil");
11
+ const NestiaMigrateSchemaProgrammer_1 = require("./NestiaMigrateSchemaProgrammer");
12
+ var NestiaMigrateDtoProgrammer;
13
+ (function (NestiaMigrateDtoProgrammer) {
14
+ NestiaMigrateDtoProgrammer.compose = (props) => {
15
+ var _a;
16
+ const dict = new Map();
17
+ for (const [key, value] of Object.entries((_a = props.components.schemas) !== null && _a !== void 0 ? _a : {})) {
18
+ const emendedKey = key
19
+ .split("/")
20
+ .filter((str) => str.length !== 0)
21
+ .map(StringUtil_1.StringUtil.escapeNonVariable)
22
+ .join("");
23
+ prepare(dict)(emendedKey)((importer) => writeAlias(props.config)(props.components)(importer)(emendedKey, value));
24
+ }
25
+ return dict;
26
+ };
27
+ const prepare = (dict) => (name) => (programmer) => {
28
+ const accessors = name.split(".");
29
+ const modulo = { value: null };
30
+ accessors.forEach((acc, i) => {
31
+ modulo.value = MapUtil_1.MapUtil.take(dict)(acc)(() => ({
32
+ name: acc,
33
+ children: new Map(),
34
+ programmer: null,
35
+ }));
36
+ if (i === accessors.length - 1)
37
+ modulo.value.programmer = programmer;
38
+ dict = modulo.value.children;
39
+ });
40
+ return modulo;
41
+ };
42
+ const writeAlias = (config) => (components) => (importer) => (key, value) => FilePrinter_1.FilePrinter.description(typescript_1.default.factory.createTypeAliasDeclaration([typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.ExportKeyword)], key.split(".").at(-1), [], NestiaMigrateSchemaProgrammer_1.NestiaMigrateSchemaProgrammer.write({
43
+ components,
44
+ importer,
45
+ schema: value,
46
+ })), writeComment(config)(value, key.indexOf(".") === -1));
47
+ })(NestiaMigrateDtoProgrammer || (exports.NestiaMigrateDtoProgrammer = NestiaMigrateDtoProgrammer = {}));
48
+ const writeComment = (config) => (schema, top) => {
49
+ var _a, _b, _c, _d, _e, _f;
50
+ return [
51
+ ...(((_a = schema.description) === null || _a === void 0 ? void 0 : _a.length) ? [schema.description] : []),
52
+ ...(((_b = schema.description) === null || _b === void 0 ? void 0 : _b.length) &&
53
+ (schema.title !== undefined || schema.deprecated === true)
54
+ ? [""]
55
+ : []),
56
+ ...(schema.title !== undefined ? [`@title ${schema.title}`] : []),
57
+ ...(schema.deprecated === true ? [`@deprecated`] : []),
58
+ ...(top
59
+ ? [
60
+ `@${(_d = (_c = config.author) === null || _c === void 0 ? void 0 : _c.tag) !== null && _d !== void 0 ? _d : "nestia"} ${(_f = (_e = config.author) === null || _e === void 0 ? void 0 : _e.value) !== null && _f !== void 0 ? _f : "Generated by Nestia - https://github.com/samchon/nestia"}`,
61
+ ]
62
+ : []),
63
+ ].join("\n");
64
+ };
65
+ //# sourceMappingURL=NestiaMigrateDtoProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestiaMigrateDtoProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateDtoProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { IHttpMigrateRoute } from "@typia/interface";
2
+ import ts from "typescript";
3
+ import { OpenApi } from "typia";
4
+ import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
5
+ import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
6
+ export declare namespace NestiaMigrateE2eFunctionProgrammer {
7
+ interface IContext {
8
+ config: INestiaMigrateConfig;
9
+ components: OpenApi.IComponents;
10
+ importer: NestiaMigrateImportProgrammer;
11
+ route: IHttpMigrateRoute;
12
+ }
13
+ const write: (ctx: IContext) => ts.FunctionDeclaration;
14
+ const writeBody: (ctx: IContext) => ts.Statement[];
15
+ }
@@ -0,0 +1,80 @@
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.NestiaMigrateE2eFunctionProgrammer = void 0;
7
+ const core_1 = require("@typia/core");
8
+ const typescript_1 = __importDefault(require("typescript"));
9
+ const NestiaMigrateSchemaProgrammer_1 = require("./NestiaMigrateSchemaProgrammer");
10
+ var NestiaMigrateE2eFunctionProgrammer;
11
+ (function (NestiaMigrateE2eFunctionProgrammer) {
12
+ NestiaMigrateE2eFunctionProgrammer.write = (ctx) => typescript_1.default.factory.createFunctionDeclaration([
13
+ typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword),
14
+ typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword),
15
+ ], undefined, ["test", "api", ...ctx.route.accessor].join("_"), undefined, [
16
+ core_1.IdentifierFactory.parameter("connection", typescript_1.default.factory.createTypeReferenceNode(typescript_1.default.factory.createQualifiedName(typescript_1.default.factory.createIdentifier(ctx.importer.external({
17
+ type: "default",
18
+ library: "@ORGANIZATION/PROJECT-api",
19
+ name: "api",
20
+ })), typescript_1.default.factory.createIdentifier("IConnection")))),
21
+ ], undefined, typescript_1.default.factory.createBlock(NestiaMigrateE2eFunctionProgrammer.writeBody(ctx), true));
22
+ NestiaMigrateE2eFunctionProgrammer.writeBody = (ctx) => [
23
+ typescript_1.default.factory.createVariableStatement([], typescript_1.default.factory.createVariableDeclarationList([
24
+ typescript_1.default.factory.createVariableDeclaration("output", undefined, ctx.route.success
25
+ ? NestiaMigrateSchemaProgrammer_1.NestiaMigrateSchemaProgrammer.write({
26
+ components: ctx.components,
27
+ importer: ctx.importer,
28
+ schema: ctx.route.success.schema,
29
+ })
30
+ : undefined, typescript_1.default.factory.createAwaitExpression(writeCallExpressionn(ctx))),
31
+ ], typescript_1.default.NodeFlags.Const)),
32
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier(ctx.importer.external({
33
+ type: "default",
34
+ library: "typia",
35
+ name: "typia",
36
+ })), "assert"), undefined, [typescript_1.default.factory.createIdentifier("output")])),
37
+ ];
38
+ const writeCallExpressionn = (ctx) => {
39
+ const fetch = typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier("api.functional"), typescript_1.default.factory.createIdentifier(ctx.route.accessor.join(".")));
40
+ const connection = typescript_1.default.factory.createIdentifier("connection");
41
+ if (ctx.route.parameters.length === 0 &&
42
+ ctx.route.query === null &&
43
+ ctx.route.body === null)
44
+ return typescript_1.default.factory.createCallExpression(fetch, undefined, [connection]);
45
+ const random = typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier(ctx.importer.external({
46
+ type: "default",
47
+ library: "typia",
48
+ name: "typia",
49
+ })), "random");
50
+ if (ctx.config.keyword === true)
51
+ return typescript_1.default.factory.createCallExpression(fetch, undefined, [
52
+ connection,
53
+ core_1.LiteralFactory.write(Object.fromEntries([...ctx.route.parameters, ctx.route.query, ctx.route.body]
54
+ .filter((x) => x !== null)
55
+ .map(({ key, schema: value }) => [
56
+ key,
57
+ typescript_1.default.factory.createCallExpression(random, [
58
+ NestiaMigrateSchemaProgrammer_1.NestiaMigrateSchemaProgrammer.write({
59
+ components: ctx.components,
60
+ importer: ctx.importer,
61
+ schema: value,
62
+ }),
63
+ ], undefined),
64
+ ]))),
65
+ ]);
66
+ return typescript_1.default.factory.createCallExpression(fetch, undefined, [
67
+ connection,
68
+ ...[...ctx.route.parameters, ctx.route.query, ctx.route.body]
69
+ .filter((p) => !!p)
70
+ .map((p) => typescript_1.default.factory.createCallExpression(random, [
71
+ NestiaMigrateSchemaProgrammer_1.NestiaMigrateSchemaProgrammer.write({
72
+ components: ctx.components,
73
+ importer: ctx.importer,
74
+ schema: p.schema,
75
+ }),
76
+ ], undefined)),
77
+ ]);
78
+ };
79
+ })(NestiaMigrateE2eFunctionProgrammer || (exports.NestiaMigrateE2eFunctionProgrammer = NestiaMigrateE2eFunctionProgrammer = {}));
80
+ //# sourceMappingURL=NestiaMigrateE2eFileProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestiaMigrateE2eFileProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateE2eFileProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { INestiaMigrateContext } from "../structures/INestiaMigrateContext";
2
+ export declare namespace NestiaMigrateE2eProgrammer {
3
+ const write: (ctx: INestiaMigrateContext) => Record<string, string>;
4
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NestiaMigrateE2eProgrammer = void 0;
4
+ const FilePrinter_1 = require("../utils/FilePrinter");
5
+ const NestiaMigrateE2eFileProgrammer_1 = require("./NestiaMigrateE2eFileProgrammer");
6
+ const NestiaMigrateImportProgrammer_1 = require("./NestiaMigrateImportProgrammer");
7
+ var NestiaMigrateE2eProgrammer;
8
+ (function (NestiaMigrateE2eProgrammer) {
9
+ NestiaMigrateE2eProgrammer.write = (ctx) => Object.fromEntries(ctx.application.routes
10
+ .map((r) => writeFile(ctx.config, ctx.application.document().components, r))
11
+ .map((r) => [`${r.location}/${r.file}`, r.content]));
12
+ const writeFile = (config, components, route) => {
13
+ const importer = new NestiaMigrateImportProgrammer_1.NestiaMigrateImportProgrammer();
14
+ const func = NestiaMigrateE2eFileProgrammer_1.NestiaMigrateE2eFunctionProgrammer.write({
15
+ config,
16
+ components,
17
+ importer,
18
+ route,
19
+ });
20
+ const statements = [
21
+ ...importer.toStatements((name) => `@ORGANIZATION/PROJECT-api/lib/structures/${name}`),
22
+ FilePrinter_1.FilePrinter.newLine(),
23
+ func,
24
+ ];
25
+ return {
26
+ location: `test/features/api`,
27
+ file: `${["test", "api", ...route.accessor].join("_")}.ts`,
28
+ content: FilePrinter_1.FilePrinter.write({ statements }),
29
+ };
30
+ };
31
+ })(NestiaMigrateE2eProgrammer || (exports.NestiaMigrateE2eProgrammer = NestiaMigrateE2eProgrammer = {}));
32
+ //# sourceMappingURL=NestiaMigrateE2eProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestiaMigrateE2eProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateE2eProgrammer.ts"],"names":[],"mappings":";;;AAMA,sDAAmD;AACnD,qFAAsF;AACtF,mFAAgF;AAEhF,IAAiB,0BAA0B,CAqC1C;AArCD,WAAiB,0BAA0B;IAC5B,gCAAK,GAAG,CAAC,GAA0B,EAA0B,EAAE,CAC1E,MAAM,CAAC,WAAW,CAChB,GAAG,CAAC,WAAW,CAAC,MAAM;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAChE;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CACtD,CAAC;IAEJ,MAAM,SAAS,GAAG,CAChB,MAA4B,EAC5B,UAA+B,EAC/B,KAAwB,EACJ,EAAE;QACtB,MAAM,QAAQ,GACZ,IAAI,6DAA6B,EAAE,CAAC;QACtC,MAAM,IAAI,GACR,mEAAkC,CAAC,KAAK,CAAC;YACvC,MAAM;YACN,UAAU;YACV,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;QACL,MAAM,UAAU,GAAmB;YACjC,GAAG,QAAQ,CAAC,YAAY,CACtB,CAAC,IAAI,EAAE,EAAE,CAAC,4CAA4C,IAAI,EAAE,CAC7D;YACD,yBAAW,CAAC,OAAO,EAAE;YACrB,IAAI;SACL,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,mBAAmB;YAC7B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK;YAC1D,OAAO,EAAE,yBAAW,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;SAC3C,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,EArCgB,0BAA0B,0CAA1B,0BAA0B,QAqC1C"}
@@ -0,0 +1,18 @@
1
+ import ts from "typescript";
2
+ export declare class NestiaMigrateImportProgrammer {
3
+ private external_;
4
+ private dtos_;
5
+ constructor();
6
+ empty(): boolean;
7
+ external(props: MigrateImportProgrammer.IProps): string;
8
+ dto(name: string, namespace?: string): ts.TypeReferenceNode;
9
+ tag(type: string, arg?: any): ts.TypeReferenceNode;
10
+ toStatements(dtoPath: (name: string) => string, current?: string): ts.Statement[];
11
+ }
12
+ export declare namespace MigrateImportProgrammer {
13
+ interface IProps {
14
+ type: "default" | "instance";
15
+ library: string;
16
+ name: string;
17
+ }
18
+ }
@@ -0,0 +1,65 @@
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.NestiaMigrateImportProgrammer = void 0;
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const TypeLiteralFactory_1 = require("../factories/TypeLiteralFactory");
9
+ const FilePrinter_1 = require("../utils/FilePrinter");
10
+ const MapUtil_1 = require("../utils/MapUtil");
11
+ class NestiaMigrateImportProgrammer {
12
+ constructor() {
13
+ this.external_ = new Map();
14
+ this.dtos_ = new Set();
15
+ }
16
+ empty() {
17
+ return this.external_.size === 0 && this.dtos_.size === 0;
18
+ }
19
+ external(props) {
20
+ const clause = MapUtil_1.MapUtil.take(this.external_)(props.library)(() => ({
21
+ default: null,
22
+ instances: new Set(),
23
+ }));
24
+ const name = props.name.split(".")[0];
25
+ if (props.type === "default")
26
+ clause.default = props.name;
27
+ else
28
+ clause.instances.add(name);
29
+ return name;
30
+ }
31
+ dto(name, namespace) {
32
+ const file = name.split(".")[0];
33
+ this.dtos_.add(file);
34
+ return typescript_1.default.factory.createTypeReferenceNode((namespace === null || namespace === void 0 ? void 0 : namespace.length)
35
+ ? typescript_1.default.factory.createQualifiedName(typescript_1.default.factory.createIdentifier(namespace), typescript_1.default.factory.createIdentifier(file))
36
+ : name);
37
+ }
38
+ tag(type, arg) {
39
+ const instance = this.external({
40
+ type: "instance",
41
+ library: "typia",
42
+ name: "tags",
43
+ });
44
+ return typescript_1.default.factory.createTypeReferenceNode(`${instance}.${type}`, arg === undefined ? [] : [TypeLiteralFactory_1.TypeLiteralFactory.generate(arg)]);
45
+ }
46
+ toStatements(dtoPath, current) {
47
+ return [
48
+ ...[...this.external_.entries()].map(([library, props]) => typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, props.default !== null
49
+ ? typescript_1.default.factory.createIdentifier(props.default)
50
+ : undefined, props.instances.size
51
+ ? typescript_1.default.factory.createNamedImports([...props.instances].map((i) => typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier(i))))
52
+ : undefined), typescript_1.default.factory.createStringLiteral(library))),
53
+ ...(this.external_.size && this.dtos_.size
54
+ ? [FilePrinter_1.FilePrinter.newLine()]
55
+ : []),
56
+ ...[...this.dtos_]
57
+ .filter(current ? (name) => name !== current.split(".")[0] : () => true)
58
+ .map((i) => typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, undefined, typescript_1.default.factory.createNamedImports([
59
+ typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier(i)),
60
+ ])), typescript_1.default.factory.createStringLiteral(dtoPath(i)))),
61
+ ];
62
+ }
63
+ }
64
+ exports.NestiaMigrateImportProgrammer = NestiaMigrateImportProgrammer;
65
+ //# sourceMappingURL=NestiaMigrateImportProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestiaMigrateImportProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateImportProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { OpenApi } from "@typia/interface";
2
+ import ts from "typescript";
3
+ import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
4
+ import { INestiaMigrateController } from "../structures/INestiaMigrateController";
5
+ export declare namespace NestiaMigrateNestControllerProgrammer {
6
+ interface IProps {
7
+ config: INestiaMigrateConfig;
8
+ components: OpenApi.IComponents;
9
+ controller: INestiaMigrateController;
10
+ }
11
+ const write: (props: IProps) => ts.Statement[];
12
+ }
@@ -0,0 +1,46 @@
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.NestiaMigrateNestControllerProgrammer = void 0;
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const FilePrinter_1 = require("../utils/FilePrinter");
9
+ const StringUtil_1 = require("../utils/StringUtil");
10
+ const NestiaMigrateImportProgrammer_1 = require("./NestiaMigrateImportProgrammer");
11
+ const NestiaMigrateNestMethodProgrammer_1 = require("./NestiaMigrateNestMethodProgrammer");
12
+ var NestiaMigrateNestControllerProgrammer;
13
+ (function (NestiaMigrateNestControllerProgrammer) {
14
+ NestiaMigrateNestControllerProgrammer.write = (props) => {
15
+ const importer = new NestiaMigrateImportProgrammer_1.NestiaMigrateImportProgrammer();
16
+ const $class = typescript_1.default.factory.createClassDeclaration([
17
+ typescript_1.default.factory.createDecorator(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.external({
18
+ type: "instance",
19
+ library: "@nestjs/common",
20
+ name: "Controller",
21
+ })), [], [typescript_1.default.factory.createStringLiteral(props.controller.path)])),
22
+ typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.ExportKeyword),
23
+ ], props.controller.name, [], [], props.controller.routes
24
+ .map((route, index) => {
25
+ var _a, _b;
26
+ return [
27
+ ...(index !== 0 ? [FilePrinter_1.FilePrinter.newLine()] : []),
28
+ ((_b = (_a = props.config.programmer) === null || _a === void 0 ? void 0 : _a.controllerMethod) !== null && _b !== void 0 ? _b : NestiaMigrateNestMethodProgrammer_1.NestiaMigrateNestMethodProgrammer.write)({
29
+ config: props.config,
30
+ components: props.components,
31
+ controller: props.controller,
32
+ importer,
33
+ route,
34
+ }),
35
+ ];
36
+ })
37
+ .flat());
38
+ return [
39
+ ...importer.toStatements((ref) => `${"../".repeat(StringUtil_1.StringUtil.splitWithNormalization(props.controller.location)
40
+ .length - 1)}api/structures/${ref}`),
41
+ ...(importer.empty() ? [] : [FilePrinter_1.FilePrinter.newLine()]),
42
+ $class,
43
+ ];
44
+ };
45
+ })(NestiaMigrateNestControllerProgrammer || (exports.NestiaMigrateNestControllerProgrammer = NestiaMigrateNestControllerProgrammer = {}));
46
+ //# sourceMappingURL=NestiaMigrateNestControllerProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestiaMigrateNestControllerProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateNestControllerProgrammer.ts"],"names":[],"mappings":";;;;;;AACA,4DAA4B;AAI5B,sDAAmD;AACnD,oDAAiD;AACjD,mFAAgF;AAChF,2FAAwF;AAExF,IAAiB,qCAAqC,CA0DrD;AA1DD,WAAiB,qCAAqC;IAOvC,2CAAK,GAAG,CAAC,KAAa,EAAkB,EAAE;QACrD,MAAM,QAAQ,GACZ,IAAI,6DAA6B,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC9C;YACE,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,QAAQ,CAAC,QAAQ,CAAC;gBAChB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,gBAAgB;gBACzB,IAAI,EAAE,YAAY;aACnB,CAAC,CACH,EACD,EAAE,EACF,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACxD,CACF;YACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;SACpD,EACD,KAAK,CAAC,UAAU,CAAC,IAAI,EACrB,EAAE,EACF,EAAE,EACF,KAAK,CAAC,UAAU,CAAC,MAAM;aACpB,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;;YAAC,OAAA;gBACrB,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,OAAO,EAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,CACE,MAAA,MAAA,KAAK,CAAC,MAAM,CAAC,UAAU,0CAAE,gBAAgB,mCACzC,qEAAiC,CAAC,KAAK,CACxC,CAAC;oBACA,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,QAAQ;oBACR,KAAK;iBACN,CAAC;aACH,CAAA;SAAA,CAAC;aACD,IAAI,EAAE,CACV,CAAC;QACF,OAAO;YACL,GAAG,QAAQ,CAAC,YAAY,CACtB,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,KAAK,CAAC,MAAM,CACb,uBAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;iBACzD,MAAM,GAAG,CAAC,CACd,kBAAkB,GAAG,EAAE,CAC3B;YACD,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACpD,MAAM;SACP,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,EA1DgB,qCAAqC,qDAArC,qCAAqC,QA0DrD"}
@@ -0,0 +1,16 @@
1
+ import { IHttpMigrateRoute } from "@typia/interface";
2
+ import ts from "typescript";
3
+ import { OpenApi } from "typia";
4
+ import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
5
+ import { INestiaMigrateController } from "../structures/INestiaMigrateController";
6
+ import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
7
+ export declare namespace NestiaMigrateNestMethodProgrammer {
8
+ interface IContext {
9
+ config: INestiaMigrateConfig;
10
+ components: OpenApi.IComponents;
11
+ importer: NestiaMigrateImportProgrammer;
12
+ controller: INestiaMigrateController;
13
+ route: IHttpMigrateRoute;
14
+ }
15
+ const write: (ctx: IContext) => ts.MethodDeclaration;
16
+ }