@nestia/migrate 0.6.2 → 0.7.0-dev.20240201

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 (59) hide show
  1. package/lib/IMigrateConfig.d.ts +4 -0
  2. package/lib/IMigrateConfig.js +3 -0
  3. package/lib/IMigrateConfig.js.map +1 -0
  4. package/lib/MigrateApplication.d.ts +2 -12
  5. package/lib/MigrateApplication.js +20 -60
  6. package/lib/MigrateApplication.js.map +1 -1
  7. package/lib/analyzers/MigrateAnalyzer.d.ts +2 -1
  8. package/lib/analyzers/MigrateAnalyzer.js +2 -1
  9. package/lib/analyzers/MigrateAnalyzer.js.map +1 -1
  10. package/lib/bundles/NEST_TEMPLATE.d.ts +5 -0
  11. package/{src/bundles/TEMPLATE.ts → lib/bundles/NEST_TEMPLATE.js} +71 -27
  12. package/lib/bundles/NEST_TEMPLATE.js.map +1 -0
  13. package/lib/bundles/SDK_TEMPLATE.d.ts +5 -0
  14. package/lib/bundles/SDK_TEMPLATE.js +61 -0
  15. package/lib/bundles/SDK_TEMPLATE.js.map +1 -0
  16. package/lib/bundles/TEMPLATE.d.ts +1 -1
  17. package/lib/bundles/TEMPLATE.js +23 -23
  18. package/lib/bundles/TEMPLATE.js.map +1 -1
  19. package/lib/executable/bundle.js +70 -51
  20. package/lib/executable/bundle.js.map +1 -1
  21. package/lib/executable/migrate.js +2 -59
  22. package/lib/executable/migrate.js.map +1 -1
  23. package/lib/internal/MigrateCli.d.ts +3 -0
  24. package/lib/internal/MigrateCli.js +59 -0
  25. package/lib/internal/MigrateCli.js.map +1 -0
  26. package/lib/internal/MigrateCommander.d.ts +9 -0
  27. package/lib/internal/MigrateCommander.js +70 -0
  28. package/lib/internal/MigrateCommander.js.map +1 -0
  29. package/lib/programmers/ApiFileProgrammer.d.ts +2 -1
  30. package/lib/programmers/ApiFileProgrammer.js +3 -3
  31. package/lib/programmers/ApiFileProgrammer.js.map +1 -1
  32. package/lib/programmers/ApiFunctionProgrammer.d.ts +3 -1
  33. package/lib/programmers/ApiFunctionProgrammer.js +34 -23
  34. package/lib/programmers/ApiFunctionProgrammer.js.map +1 -1
  35. package/lib/programmers/ApiNamespaceProgrammer.d.ts +3 -1
  36. package/lib/programmers/ApiNamespaceProgrammer.js +15 -2
  37. package/lib/programmers/ApiNamespaceProgrammer.js.map +1 -1
  38. package/lib/programmers/ApiProgrammer.js +48 -3
  39. package/lib/programmers/ApiProgrammer.js.map +1 -1
  40. package/lib/programmers/ApiSimulatationProgrammer.d.ts +14 -0
  41. package/lib/programmers/ApiSimulatationProgrammer.js +127 -0
  42. package/lib/programmers/ApiSimulatationProgrammer.js.map +1 -0
  43. package/lib/structures/IMigrateProgram.d.ts +2 -0
  44. package/package.json +68 -64
  45. package/src/IMigrateConfig.ts +4 -0
  46. package/src/MigrateApplication.ts +20 -63
  47. package/src/analyzers/MigrateAnalyzer.ts +8 -4
  48. package/src/bundles/NEST_TEMPLATE.ts +202 -0
  49. package/src/bundles/SDK_TEMPLATE.ts +57 -0
  50. package/src/executable/bundle.ts +80 -50
  51. package/src/executable/migrate.ts +2 -54
  52. package/src/internal/MigrateCommander.ts +52 -0
  53. package/src/internal/MigrateInquirer.ts +79 -0
  54. package/src/programmers/ApiFileProgrammer.ts +4 -2
  55. package/src/programmers/ApiFunctionProgrammer.ts +47 -20
  56. package/src/programmers/ApiNamespaceProgrammer.ts +24 -1
  57. package/src/programmers/ApiProgrammer.ts +63 -3
  58. package/src/programmers/ApiSimulatationProgrammer.ts +328 -0
  59. package/src/structures/IMigrateProgram.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/executable/migrate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,4CAAoB;AACpB,gDAAwB;AAExB,8DAA2D;AAE3D,sDAAmD;AAEnD,MAAM,KAAK,GAAG;;;;;CAKb,CAAC;AAEF,SAAS,IAAI,CAAC,IAAY;IACxB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,IAAI,GAAG,CAAO,IAAc,EAAiB,EAAE;IACnD,MAAM,OAAO,GAAG,CAAC,GAAuB,EAAE,EAAE,CAC1C,GAAG,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,MAAM,KAAK,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpD,qBAAqB;IACrB,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAE7D,4BAA4B;IAC5B,MAAM,MAAM,GAAW,OAAO,CAAC,MAAM,GAAG,KAAK,CAAE,CAAC;IAChD,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,iCAAiC,CAAC,CAAC;SAC9D,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,KAAK;QACtC,IAAI,CAAC,qDAAqD,CAAC,CAAC;SACzD,IAAI,YAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;QAClD,IAAI,CAAC,+CAA+C,CAAC,CAAC;IAExD,eAAe;IACf,MAAM,OAAO,GAAa,CAAC,GAAG,EAAE;QAC9B,IAAI,YAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,KAAK;YAChC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QACtD,MAAM,KAAK,GAAa,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK;YAAE,IAAI,CAAC,uCAAuC,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAW,YAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,OAAO,GAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,EAAE,CAAC;IAEL,cAAc;IACd,MAAM,GAAG,GAAuB,IAAI,uCAAkB,CAAC,OAAO,CAAC,CAAC;IAChE,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE3B,cAAc;IACd,yBAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC,CAAA,CAAC;AACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACxC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/executable/migrate.ts"],"names":[],"mappings":";;;AACA,uDAAoD;AAEpD,uBAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IAC9B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare namespace MigrateCli {
2
+ const main: () => Promise<void>;
3
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.MigrateCli = void 0;
16
+ const fs_1 = __importDefault(require("fs"));
17
+ const path_1 = __importDefault(require("path"));
18
+ const FileArchiver_1 = require("../archivers/FileArchiver");
19
+ const module_1 = require("../module");
20
+ const MigrateCommander_1 = require("./MigrateCommander");
21
+ var MigrateCli;
22
+ (function (MigrateCli) {
23
+ MigrateCli.main = () => __awaiter(this, void 0, void 0, function* () {
24
+ const resolve = (str) => str ? path_1.default.resolve(str).split("\\").join("/") : undefined;
25
+ const options = yield MigrateCommander_1.MigrateCommander.parse();
26
+ // VALIDATE OUTPUT DIRECTORY
27
+ const parent = resolve(options.output + "/..");
28
+ if (fs_1.default.existsSync(options.output))
29
+ halt("Output directory alreay exists.");
30
+ else if (fs_1.default.existsSync(parent) === false)
31
+ halt("Output directory's parent directory does not exist.");
32
+ else if (fs_1.default.statSync(parent).isDirectory() === false)
33
+ halt("Output directory's parent is not a directory.");
34
+ // READ SWAGGER
35
+ const swagger = (() => {
36
+ if (fs_1.default.existsSync(options.input) === false)
37
+ halt("Unable to find the input swagger.json file.");
38
+ const stats = fs_1.default.statSync(options.input);
39
+ if (stats.isFile() === false)
40
+ halt("The input swagger.json is not a file.");
41
+ const content = fs_1.default.readFileSync(options.input, "utf-8");
42
+ const swagger = JSON.parse(content);
43
+ return swagger;
44
+ })();
45
+ const app = new module_1.MigrateApplication(swagger);
46
+ const files = options.mode === "nest"
47
+ ? app.nest(options.simulate)
48
+ : app.sdk(options.simulate);
49
+ yield FileArchiver_1.FileArchiver.archive({
50
+ mkdir: fs_1.default.promises.mkdir,
51
+ writeFile: (file, content) => fs_1.default.promises.writeFile(file, content, "utf-8"),
52
+ })(options.output)(files);
53
+ });
54
+ const halt = (desc) => {
55
+ console.error(desc);
56
+ process.exit(-1);
57
+ };
58
+ })(MigrateCli || (exports.MigrateCli = MigrateCli = {}));
59
+ //# sourceMappingURL=MigrateCli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrateCli.js","sourceRoot":"","sources":["../../src/internal/MigrateCli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,4DAAyD;AACzD,sCAA+C;AAG/C,yDAAsD;AAEtD,IAAiB,UAAU,CA0C1B;AA1CD,WAAiB,UAAU;IACZ,eAAI,GAAG,GAAwB,EAAE;QAC5C,MAAM,OAAO,GAAG,CAAC,GAAuB,EAAE,EAAE,CAC1C,GAAG,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5D,MAAM,OAAO,GAA6B,MAAM,mCAAgB,CAAC,KAAK,EAAE,CAAC;QAEzE,4BAA4B;QAC5B,MAAM,MAAM,GAAW,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAE,CAAC;QACxD,IAAI,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,iCAAiC,CAAC,CAAC;aACtE,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,KAAK;YACtC,IAAI,CAAC,qDAAqD,CAAC,CAAC;aACzD,IAAI,YAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;YAClD,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAExD,eAAe;QACf,MAAM,OAAO,GAAa,CAAC,GAAG,EAAE;YAC9B,IAAI,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK;gBACxC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YACtD,MAAM,KAAK,GAAa,YAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK;gBAC1B,IAAI,CAAC,uCAAuC,CAAC,CAAC;YAChD,MAAM,OAAO,GAAW,YAAE,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAChE,MAAM,OAAO,GAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9C,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,GAAG,GAAuB,IAAI,2BAAkB,CAAC,OAAO,CAAC,CAAC;QAChE,MAAM,KAAK,GACT,OAAO,CAAC,IAAI,KAAK,MAAM;YACrB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC5B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,2BAAY,CAAC,OAAO,CAAC;YACzB,KAAK,EAAE,YAAE,CAAC,QAAQ,CAAC,KAAK;YACxB,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAC3B,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC;SAChD,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAA,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,IAAY,EAAS,EAAE;QACnC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC,EA1CgB,UAAU,0BAAV,UAAU,QA0C1B"}
@@ -0,0 +1,9 @@
1
+ export declare namespace MigrateCommander {
2
+ interface IOutput {
3
+ mode: "nest" | "sdk";
4
+ simulate: boolean;
5
+ input: string;
6
+ output: string;
7
+ }
8
+ const parse: () => Promise<IOutput>;
9
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.MigrateCommander = void 0;
16
+ const commander_1 = __importDefault(require("commander"));
17
+ const inquirer_1 = __importDefault(require("inquirer"));
18
+ var MigrateCommander;
19
+ (function (MigrateCommander) {
20
+ MigrateCommander.parse = () => __awaiter(this, void 0, void 0, function* () {
21
+ // PREPARE ASSETS
22
+ commander_1.default.program.option("--mode [nest/sdk]", "migration mode");
23
+ commander_1.default.program.option("--input [swagger.json]", "location of target swagger.json file");
24
+ commander_1.default.program.option("--output [directory]", "output directory path");
25
+ commander_1.default.program.option("--simulate", "Mockup simulator");
26
+ // INTERNAL PROCEDURES
27
+ const questioned = { value: false };
28
+ const action = (closure) => new Promise((resolve, reject) => {
29
+ commander_1.default.program.action((options) => __awaiter(this, void 0, void 0, function* () {
30
+ try {
31
+ resolve(yield closure(options));
32
+ }
33
+ catch (exp) {
34
+ reject(exp);
35
+ }
36
+ }));
37
+ commander_1.default.program.parseAsync().catch(reject);
38
+ });
39
+ const select = (name) => (message) => (choices, filter) => __awaiter(this, void 0, void 0, function* () {
40
+ questioned.value = true;
41
+ return (yield inquirer_1.default.createPromptModule()({
42
+ type: "list",
43
+ name: name,
44
+ message: message,
45
+ choices: choices,
46
+ filter,
47
+ }))[name];
48
+ });
49
+ const input = (name) => (message) => __awaiter(this, void 0, void 0, function* () {
50
+ return (yield inquirer_1.default.createPromptModule()({
51
+ type: "input",
52
+ name,
53
+ message,
54
+ }))[name];
55
+ });
56
+ // DO CONSTRUCT
57
+ return action((partial) => __awaiter(this, void 0, void 0, function* () {
58
+ var _a, _b, _c;
59
+ (_a = partial.mode) !== null && _a !== void 0 ? _a : (partial.mode = yield select("mode")("Migration mode")(["NestJS", "SDK"], (value) => (value === "NestJS" ? "nest" : "sdk")));
60
+ (_b = partial.input) !== null && _b !== void 0 ? _b : (partial.input = yield input("input")("Swagger file location"));
61
+ (_c = partial.output) !== null && _c !== void 0 ? _c : (partial.output = yield input("output")("Output directory path"));
62
+ if (partial.simulate)
63
+ partial.simulate = partial.simulate === "true";
64
+ else
65
+ partial.simulate = yield select("simulate")("Mokup Simulator")(["true", "false"], (str) => str === "Y");
66
+ return partial;
67
+ }));
68
+ });
69
+ })(MigrateCommander || (exports.MigrateCommander = MigrateCommander = {}));
70
+ //# sourceMappingURL=MigrateCommander.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrateCommander.js","sourceRoot":"","sources":["../../src/internal/MigrateCommander.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import ts from "typescript";
2
+ import { IMigrateConfig } from "../IMigrateConfig";
2
3
  import { IMigrateController } from "../structures/IMigrateController";
3
4
  import { IMigrateRoute } from "../structures/IMigrateRoute";
4
5
  import { ISwaggerComponents } from "../structures/ISwaggerComponents";
@@ -13,5 +14,5 @@ export declare namespace ApiFileProgrammer {
13
14
  route: IMigrateRoute;
14
15
  alias: string;
15
16
  }
16
- const write: (components: ISwaggerComponents) => (props: IProps) => ts.Statement[];
17
+ const write: (config: IMigrateConfig) => (components: ISwaggerComponents) => (props: IProps) => ts.Statement[];
17
18
  }
@@ -10,12 +10,12 @@ const ApiNamespaceProgrammer_1 = require("./ApiNamespaceProgrammer");
10
10
  const ImportProgrammer_1 = require("./ImportProgrammer");
11
11
  var ApiFileProgrammer;
12
12
  (function (ApiFileProgrammer) {
13
- ApiFileProgrammer.write = (components) => (props) => {
13
+ ApiFileProgrammer.write = (config) => (components) => (props) => {
14
14
  const importer = new ImportProgrammer_1.ImportProgrammer();
15
15
  const statements = props.entries
16
16
  .map((p) => [
17
- ApiFunctionProgrammer_1.ApiFunctionProgrammer.write(components)(importer)(p),
18
- ApiNamespaceProgrammer_1.ApiNamespaceProgrammer.write(components)(importer)(p),
17
+ ApiFunctionProgrammer_1.ApiFunctionProgrammer.write(config)(components)(importer)(p),
18
+ ApiNamespaceProgrammer_1.ApiNamespaceProgrammer.write(config)(components)(importer)(p),
19
19
  ])
20
20
  .flat();
21
21
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"ApiFileProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiFileProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAK5B,mEAAgE;AAChE,qEAAkE;AAClE,yDAAsD;AAEtD,IAAiB,iBAAiB,CAyCjC;AAzCD,WAAiB,iBAAiB;IAYnB,uBAAK,GAChB,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,KAAa,EAAkB,EAAE;QAChC,MAAM,QAAQ,GAAqB,IAAI,mCAAgB,EAAE,CAAC;QAC1D,MAAM,UAAU,GAAmB,KAAK,CAAC,OAAO;aAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACV,6CAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACpD,+CAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACtD,CAAC;aACD,IAAI,EAAE,CAAC;QACV,OAAO;YACL,GAAG,QAAQ,CAAC,YAAY,CACtB,CAAC,GAAG,EAAE,EAAE,CACN,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,GAAG,EAAE,CAChE;YACD,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACnC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,SAAS,EACT,KAAK,EACL,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CACnC,EACD,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,KAAK,EAAE,CAAC,EAC5C,SAAS,CACV,CACF;YACD,GAAG,UAAU;SACd,CAAC;IACJ,CAAC,CAAC;AACN,CAAC,EAzCgB,iBAAiB,iCAAjB,iBAAiB,QAyCjC"}
1
+ {"version":3,"file":"ApiFileProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiFileProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAM5B,mEAAgE;AAChE,qEAAkE;AAClE,yDAAsD;AAEtD,IAAiB,iBAAiB,CA0CjC;AA1CD,WAAiB,iBAAiB;IAYnB,uBAAK,GAChB,CAAC,MAAsB,EAAE,EAAE,CAC3B,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,KAAa,EAAkB,EAAE;QAChC,MAAM,QAAQ,GAAqB,IAAI,mCAAgB,EAAE,CAAC;QAC1D,MAAM,UAAU,GAAmB,KAAK,CAAC,OAAO;aAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACV,6CAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5D,+CAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAC9D,CAAC;aACD,IAAI,EAAE,CAAC;QACV,OAAO;YACL,GAAG,QAAQ,CAAC,YAAY,CACtB,CAAC,GAAG,EAAE,EAAE,CACN,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,GAAG,EAAE,CAChE;YACD,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACnC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,SAAS,EACT,KAAK,EACL,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CACnC,EACD,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,KAAK,EAAE,CAAC,EAC5C,SAAS,CACV,CACF;YACD,GAAG,UAAU;SACd,CAAC;IACJ,CAAC,CAAC;AACN,CAAC,EA1CgB,iBAAiB,iCAAjB,iBAAiB,QA0CjC"}
@@ -1,4 +1,5 @@
1
1
  import ts from "typescript";
2
+ import { IMigrateConfig } from "../IMigrateConfig";
2
3
  import { IMigrateController } from "../structures/IMigrateController";
3
4
  import { IMigrateRoute } from "../structures/IMigrateRoute";
4
5
  import { ISwaggerComponents } from "../structures/ISwaggerComponents";
@@ -9,5 +10,6 @@ export declare namespace ApiFunctionProgrammer {
9
10
  route: IMigrateRoute;
10
11
  alias: string;
11
12
  }
12
- const write: (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.FunctionDeclaration;
13
+ const write: (config: IMigrateConfig) => (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.FunctionDeclaration;
14
+ const writeParameterDeclarations: (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.ParameterDeclaration[];
13
15
  }
@@ -10,26 +10,13 @@ const FilePrinter_1 = require("../utils/FilePrinter");
10
10
  const SchemaProgrammer_1 = require("./SchemaProgrammer");
11
11
  var ApiFunctionProgrammer;
12
12
  (function (ApiFunctionProgrammer) {
13
- ApiFunctionProgrammer.write = (components) => (importer) => (props) => FilePrinter_1.FilePrinter.description(typescript_1.default.factory.createFunctionDeclaration([
13
+ ApiFunctionProgrammer.write = (config) => (components) => (importer) => (props) => FilePrinter_1.FilePrinter.description(typescript_1.default.factory.createFunctionDeclaration([
14
14
  typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword),
15
15
  typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword),
16
- ], undefined, props.alias, undefined, writeParameteers(components)(importer)(props), typescript_1.default.factory.createTypeReferenceNode("Promise", [
16
+ ], undefined, props.alias, undefined, ApiFunctionProgrammer.writeParameterDeclarations(components)(importer)(props), typescript_1.default.factory.createTypeReferenceNode("Promise", [
17
17
  typescript_1.default.factory.createTypeReferenceNode(props.route.success === null ? "void" : `${props.alias}.Output`),
18
- ]), typescript_1.default.factory.createBlock(writeBody(importer)(props), true)), writeDescription(props));
19
- const writeDescription = (props) => {
20
- var _a;
21
- return [
22
- ...(((_a = props.route.description) === null || _a === void 0 ? void 0 : _a.length)
23
- ? [props.route.description.length, ""]
24
- : []),
25
- ...(props.route.deprecated ? ["@deprecated"] : []),
26
- ...props.route.tags.map((value) => `@tag ${value}`),
27
- `@controller ${props.controller.name}`,
28
- `@path ${props.route.path}`,
29
- "@nestia Generated by Nestia - https://github.com/samchon/nestia",
30
- ].join("\n");
31
- };
32
- const writeParameteers = (components) => (importer) => (props) => [
18
+ ]), typescript_1.default.factory.createBlock(writeBody(config)(importer)(props), true)), writeDescription(props));
19
+ ApiFunctionProgrammer.writeParameterDeclarations = (components) => (importer) => (props) => [
33
20
  IdentifierFactory_1.IdentifierFactory.parameter("connection", typescript_1.default.factory.createTypeReferenceNode(importer.external({
34
21
  type: "instance",
35
22
  library: "@nestia/Fetcher",
@@ -40,16 +27,29 @@ var ApiFunctionProgrammer;
40
27
  ...props.route.parameters.map((p) => IdentifierFactory_1.IdentifierFactory.parameter(p.key, SchemaProgrammer_1.SchemaProgrammer.write(components)(importer)(p.schema))),
41
28
  ...(props.route.query
42
29
  ? [
43
- IdentifierFactory_1.IdentifierFactory.parameter("query", typescript_1.default.factory.createTypeReferenceNode(`${props.alias}.Query`)),
30
+ IdentifierFactory_1.IdentifierFactory.parameter(props.route.query.key, typescript_1.default.factory.createTypeReferenceNode(`${props.alias}.Query`)),
44
31
  ]
45
32
  : []),
46
33
  ...(props.route.body
47
34
  ? [
48
- IdentifierFactory_1.IdentifierFactory.parameter("input", typescript_1.default.factory.createTypeReferenceNode(`${props.alias}.Input`)),
35
+ IdentifierFactory_1.IdentifierFactory.parameter(props.route.body.key, typescript_1.default.factory.createTypeReferenceNode(`${props.alias}.Input`)),
49
36
  ]
50
37
  : []),
51
38
  ];
52
- const writeBody = (importer) => (props) => {
39
+ const writeDescription = (props) => {
40
+ var _a;
41
+ return [
42
+ ...(((_a = props.route.description) === null || _a === void 0 ? void 0 : _a.length)
43
+ ? [props.route.description.length, ""]
44
+ : []),
45
+ ...(props.route.deprecated ? ["@deprecated"] : []),
46
+ ...props.route.tags.map((value) => `@tag ${value}`),
47
+ `@controller ${props.controller.name}`,
48
+ `@path ${props.route.path}`,
49
+ "@nestia Generated by Nestia - https://github.com/samchon/nestia",
50
+ ].join("\n");
51
+ };
52
+ const writeBody = (config) => (importer) => (props) => {
53
53
  var _a, _b, _c;
54
54
  const encrypted = !!((_a = props.route.success) === null || _a === void 0 ? void 0 : _a["x-nestia-encrypted"]);
55
55
  const contentType = (_c = (_b = props.route.success) === null || _b === void 0 ? void 0 : _b.type) !== null && _c !== void 0 ? _c : "application/json";
@@ -72,14 +72,25 @@ var ApiFunctionProgrammer;
72
72
  typescript_1.default.factory.createPropertyAssignment("path", typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(props.alias))("path"), undefined, [
73
73
  ...props.route.parameters.map((p) => typescript_1.default.factory.createIdentifier(p.key)),
74
74
  ...(props.route.query
75
- ? [typescript_1.default.factory.createIdentifier("query")]
75
+ ? [typescript_1.default.factory.createIdentifier(props.route.query.key)]
76
76
  : []),
77
77
  ])),
78
78
  typescript_1.default.factory.createPropertyAssignment("status", typescript_1.default.factory.createNull()),
79
79
  ], true),
80
- ...(props.route.body ? [typescript_1.default.factory.createIdentifier("input")] : []),
80
+ ...(props.route.body
81
+ ? [typescript_1.default.factory.createIdentifier(props.route.body.key)]
82
+ : []),
81
83
  ]);
82
- return [typescript_1.default.factory.createReturnStatement(caller())];
84
+ if (config.simulate !== true)
85
+ return [typescript_1.default.factory.createReturnStatement(caller())];
86
+ return [
87
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createIdentifier("!!connection.simulate"), undefined, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(`${props.alias}.simulate`), [], [
88
+ "connection",
89
+ ...props.route.parameters.map((p) => p.key),
90
+ ...(props.route.query ? [props.route.query.key] : []),
91
+ ...(props.route.body ? [props.route.body.key] : []),
92
+ ].map((key) => typescript_1.default.factory.createIdentifier(key))), undefined, caller())),
93
+ ];
83
94
  };
84
95
  })(ApiFunctionProgrammer || (exports.ApiFunctionProgrammer = ApiFunctionProgrammer = {}));
85
96
  //# sourceMappingURL=ApiFunctionProgrammer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApiFunctionProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiFunctionProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApiFunctionProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiFunctionProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import ts from "typescript";
2
+ import { IMigrateConfig } from "../IMigrateConfig";
2
3
  import { IMigrateController } from "../structures/IMigrateController";
3
4
  import { IMigrateRoute } from "../structures/IMigrateRoute";
4
5
  import { ISwaggerComponents } from "../structures/ISwaggerComponents";
@@ -9,5 +10,6 @@ export declare namespace ApiNamespaceProgrammer {
9
10
  route: IMigrateRoute;
10
11
  alias: string;
11
12
  }
12
- const write: (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.ModuleDeclaration;
13
+ const write: (config: IMigrateConfig) => (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.ModuleDeclaration;
14
+ const writePathCallExpression: (props: IProps) => ts.CallExpression;
13
15
  }
@@ -10,10 +10,11 @@ const IdentifierFactory_1 = require("typia/lib/factories/IdentifierFactory");
10
10
  const LiteralFactory_1 = require("typia/lib/factories/LiteralFactory");
11
11
  const TypeFactory_1 = require("typia/lib/factories/TypeFactory");
12
12
  const FilePrinter_1 = require("../utils/FilePrinter");
13
+ const ApiSimulatationProgrammer_1 = require("./ApiSimulatationProgrammer");
13
14
  const SchemaProgrammer_1 = require("./SchemaProgrammer");
14
15
  var ApiNamespaceProgrammer;
15
16
  (function (ApiNamespaceProgrammer) {
16
- ApiNamespaceProgrammer.write = (components) => (importer) => (props) => {
17
+ ApiNamespaceProgrammer.write = (config) => (components) => (importer) => (props) => {
17
18
  const types = writeTypes(components)(importer)(props.route);
18
19
  return typescript_1.default.factory.createModuleDeclaration([typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.ExportKeyword)], typescript_1.default.factory.createIdentifier(props.alias), typescript_1.default.factory.createModuleBlock([
19
20
  ...types,
@@ -21,8 +22,20 @@ var ApiNamespaceProgrammer;
21
22
  writeMetadata(components)(importer)(props),
22
23
  FilePrinter_1.FilePrinter.enter(),
23
24
  writePath(components)(importer)(props),
25
+ ...(config.simulate
26
+ ? [
27
+ ApiSimulatationProgrammer_1.ApiSimulatationProgrammer.random(components)(importer)(props),
28
+ ApiSimulatationProgrammer_1.ApiSimulatationProgrammer.simulate(components)(importer)(props),
29
+ ]
30
+ : []),
24
31
  ]), typescript_1.default.NodeFlags.Namespace);
25
32
  };
33
+ ApiNamespaceProgrammer.writePathCallExpression = (props) => typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(`${props.alias}.path`), undefined, [
34
+ ...props.route.parameters.map((p) => typescript_1.default.factory.createIdentifier(p.key)),
35
+ ...(props.route.query
36
+ ? [typescript_1.default.factory.createIdentifier(props.route.query.key)]
37
+ : []),
38
+ ]);
26
39
  const writeTypes = (components) => (importer) => (route) => {
27
40
  const array = [];
28
41
  const declare = (name, type) => array.push(typescript_1.default.factory.createTypeAliasDeclaration([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword)], name, undefined, type));
@@ -104,7 +117,7 @@ var ApiNamespaceProgrammer;
104
117
  typescript_1.default.factory.createBindingElement(undefined, undefined, typescript_1.default.factory.createIdentifier("value"), undefined),
105
118
  ]), undefined, undefined, undefined),
106
119
  ], typescript_1.default.NodeFlags.Const), typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.entries"), undefined, [
107
- typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createIdentifier("query"), TypeFactory_1.TypeFactory.keyword("any")),
120
+ typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createIdentifier(props.route.query.key), TypeFactory_1.TypeFactory.keyword("any")),
108
121
  ]), typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createIdentifier("undefined"), typescript_1.default.factory.createIdentifier("value")), typescript_1.default.factory.createContinueStatement(), typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Array.isArray"), undefined, [typescript_1.default.factory.createIdentifier("value")]), typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(typescript_1.default.factory.createIdentifier("value"), typescript_1.default.factory.createIdentifier("forEach")), undefined, [
109
122
  typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("elem")], undefined, undefined, typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(variables))("append"), undefined, [
110
123
  typescript_1.default.factory.createIdentifier("key"),
@@ -1 +1 @@
1
- {"version":3,"file":"ApiNamespaceProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiNamespaceProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAC5B,6EAA0E;AAC1E,6EAA0E;AAC1E,uEAAoE;AACpE,iEAA8D;AAK9D,sDAAmD;AAEnD,yDAAsD;AAEtD,IAAiB,sBAAsB,CA0VtC;AA1VD,WAAiB,sBAAsB;IAOxB,4BAAK,GAChB,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAa,EAAwB,EAAE;QACtC,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5D,OAAO,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CACvC,CAAC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EACrD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,EACxC,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAC3B,GAAG,KAAK;YACR,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,aAAa,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;YAC1C,yBAAW,CAAC,KAAK,EAAE;YACnB,SAAS,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;SACvC,CAAC,EACF,oBAAE,CAAC,SAAS,CAAC,SAAS,CACvB,CAAC;IACJ,CAAC,CAAC;IAEJ,MAAM,UAAU,GACd,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAoB,EAA6B,EAAE;QAClD,MAAM,KAAK,GAA8B,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,IAAiB,EAAE,EAAE,CAClD,KAAK,CAAC,IAAI,CACR,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACnC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EACxD,IAAI,EACJ,SAAS,EACT,IAAI,CACL,CACF,CAAC;QACJ,IAAI,KAAK,CAAC,OAAO;YACf,OAAO,CACL,SAAS,EACT,mCAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CACnE,CAAC;QACJ,IAAI,KAAK,CAAC,KAAK;YACb,OAAO,CACL,OAAO,EACP,mCAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CACjE,CAAC;QACJ,IAAI,KAAK,CAAC,IAAI;YACZ,OAAO,CACL,OAAO,EACP,mCAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAChE,CAAC;QACJ,IAAI,KAAK,CAAC,OAAO;YACf,OAAO,CACL,QAAQ,EACR,mCAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CACnE,CAAC;QACJ,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEJ,MAAM,aAAa,GACjB,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAa,EAAwB,EAAE;;QACtC,OAAA,QAAQ,CAAC,UAAU,CAAC,CAClB,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;YACE,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CACjC,CACF;YACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,MAAM,EACN,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC/C;YACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,SAAS,EACT,KAAK,CAAC,KAAK,CAAC,IAAI;gBACd,CAAC,CAAC,+BAAc,CAAC,QAAQ,CAAC;oBACtB,IAAI,EAAE,kBAAkB;oBACxB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC;iBACpD,CAAC;gBACJ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAC5B;YACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,UAAU,EACV,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM;gBACzC,CAAC,CAAC,+BAAc,CAAC,QAAQ,CAAC;oBACtB,IAAI,EAAE,MAAA,MAAA,KAAK,CAAC,KAAK,CAAC,OAAO,0CAAE,IAAI,mCAAI,kBAAkB;oBACrD,SAAS,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,OAAO,0CAAG,oBAAoB,CAAC,CAAA;iBACzD,CAAC;gBACJ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAC5B;YACD,GAAG,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,OAAO,0CAAE,IAAI;gBAC7B,mCAAmC;gBACjC,CAAC,CAAC;oBACE,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,YAAY,EACZ,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,GAAG,QAAQ,CAAC,QAAQ,CAAC;wBACnB,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,OAAO;qBACd,CAAC,yBAAyB,CAC5B,EACD;wBACE,mCAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAC1C,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAC3B;qBACF,EACD,SAAS,CACV,CACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,EACD,IAAI,CACL,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CACrC,CACF,CACF,CAAA;KAAA,CAAC;IAEN,MAAM,SAAS,GACb,CAAC,UAA8B,EAAE,EAAE,CACnC,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAa,EAAwB,EAAE;QACtC,MAAM,GAAG,GAAG,CAAC,IAAoB,EAAE,EAAE,CACnC,QAAQ,CAAC,MAAM,CAAC,CACd,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,EAAE,EACF,EAAE,EACF;YACE,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAClC,qCAAiB,CAAC,SAAS,CACzB,CAAC,CAAC,GAAG,EACL,mCAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CACvD,CACF;YACD,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK;gBACnB,CAAC,CAAC;oBACE,qCAAiB,CAAC,SAAS,CACzB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EACrB,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,GAAG,KAAK,CAAC,KAAK,QAAQ,CACvB,CACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,EACD,SAAS,EACT,SAAS,EACT,IAAI,CACL,CACF,CAAC;QACJ,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,MAAM,IAAI,GAAW,OAAO,CAAC,KAAK,CAAC,CAAC;YACpC,MAAM,QAAQ,GAAa,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACvE,OAAO,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACxC,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC1C,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAClC,MAAM,IAAI,GAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrC,OAAO,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,EACjD,SAAS,EACT;oBACE,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC/B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAE,CAAC,GAAG,CACxD,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAC3D,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CACvC;iBACF,CACF,EACD,CAAC,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC;oBACnB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB;oBACjC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAC7D,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE/C,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE,CAC1C,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,SAAS;YAC7D,CAAC,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC;YACxB,CAAC,CAAC,GAAG,CAAC;QACV,MAAM,SAAS,GAAW,WAAW,CAAC,WAAW,CAAC,CAAC;QACnD,OAAO,GAAG,CACR,oBAAE,CAAC,OAAO,CAAC,WAAW,CACpB;YACE,KAAK,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CACjC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAC9C,EAAE,EACF,EAAE,CACH,CACF;YACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;gBACE,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC;oBACnC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAClC,SAAS,CACV;oBACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,CACV;iBACF,CAAC,EACF,SAAS,EACT,SAAS,EACT,SAAS,CACV;aACF,EACD,oBAAE,CAAC,SAAS,CAAC,KAAK,CACnB,EACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,SAAS,EACT;gBACE,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC3B;aACF,CACF,EACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CACrC,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE,EACpC,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAC5C,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,EACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CACvC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACvC,EACD,SAAS,EACT;gBACE,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EACrC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACvC,CAAC,QAAQ,CAAC,EACX,SAAS,EACT;oBACE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC;oBAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CACtC;iBACF,CACF,CACF;aACF,CACF,CACF,EACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACvC,CAAC,KAAK,CAAC,EACR,SAAS,EACT;gBACE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC;gBAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC;aACF,CACF,CACF,CACF,CACF,CACF;YACD,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;YACvC,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CACpC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAC3B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACvC,CAAC,MAAM,CAAC,CACV,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,EACjC;gBACE,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CACrC;gBACD,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACvC,CAAC,UAAU,CAAC,EACb,SAAS,EACT,SAAS,CACV,EACD,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAClC;aACF,CACF,CACF,CACF;SACF,EACD,IAAI,CACL,CACF,CAAC;IACJ,CAAC,CAAC;AACN,CAAC,EA1VgB,sBAAsB,sCAAtB,sBAAsB,QA0VtC;AAED,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,UAAyB,EAAE,EAAE,CAC/D,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EACxD,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;IACE,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,IAAI,EACJ,SAAS,EACT,SAAS,EACT,UAAU,CACX;CACF,EACD,oBAAE,CAAC,SAAS,CAAC,KAAK,CACnB,CACF,CAAC;AACJ,MAAM,OAAO,GAAG,CAAC,KAAoC,EAAE,EAAE,CACvD,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KAClE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;KAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,UAAyB,EAAE,EAAE,CAC9E,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,EAAE,EACF,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;IACE,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,IAAI,EACJ,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,EACxC,UAAU,CACX;CACF,EACD,oBAAE,CAAC,SAAS,CAAC,KAAK,CACnB,CACF,CAAC"}
1
+ {"version":3,"file":"ApiNamespaceProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiNamespaceProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.ApiProgrammer = void 0;
4
7
  const tstl_1 = require("tstl");
8
+ const typescript_1 = __importDefault(require("typescript"));
5
9
  const Escaper_1 = require("typia/lib/utils/Escaper");
6
10
  const FilePrinter_1 = require("../utils/FilePrinter");
7
11
  const StringUtil_1 = require("../utils/StringUtil");
8
12
  const ApiFileProgrammer_1 = require("./ApiFileProgrammer");
13
+ const DtoProgrammer_1 = require("./DtoProgrammer");
14
+ const ImportProgrammer_1 = require("./ImportProgrammer");
9
15
  var ApiProgrammer;
10
16
  (function (ApiProgrammer) {
11
17
  ApiProgrammer.write = (program) => {
@@ -41,6 +47,13 @@ var ApiProgrammer;
41
47
  props.children.add(last.value.namespace.at(-1));
42
48
  last.value = props;
43
49
  });
50
+ const top = dict.take([], () => ({
51
+ namespace: [],
52
+ children: new Set(),
53
+ entries: [],
54
+ }));
55
+ if (namespace.length)
56
+ top.children.add(namespace[0]);
44
57
  }
45
58
  for (const { second: props } of dict)
46
59
  props.entries.forEach((entry, i) => (entry.alias = StringUtil_1.StringUtil.escapeDuplicate([
@@ -50,13 +63,45 @@ var ApiProgrammer;
50
63
  ...(entry.route.query ? [entry.route.query.key] : []),
51
64
  ...props.entries.filter((_, j) => i !== j).map((e) => e.alias),
52
65
  ])(entry.alias)));
53
- return [...dict].map(({ second: props }) => ({
54
- location: `src/api/functional/${props.namespace.join("/")}`,
66
+ const output = [...dict].map(({ second: props }) => ({
67
+ location: `src/${program.config.mode === "nest" ? "api/" : ""}functional/${props.namespace.join("/")}`,
55
68
  file: "index.ts",
56
69
  content: FilePrinter_1.FilePrinter.write({
57
- statements: ApiFileProgrammer_1.ApiFileProgrammer.write(program.swagger.components)(props),
70
+ statements: ApiFileProgrammer_1.ApiFileProgrammer.write(program.config)(program.swagger.components)(props),
58
71
  }),
59
72
  }));
73
+ if (program.config.mode === "sdk")
74
+ output.push(...[...DtoProgrammer_1.DtoProgrammer.write(program.swagger.components).entries()].map(([key, value]) => ({
75
+ location: "src/structures",
76
+ file: `${key}.ts`,
77
+ content: FilePrinter_1.FilePrinter.write({
78
+ statements: writeDtoFile(key, value),
79
+ }),
80
+ })));
81
+ return output;
82
+ };
83
+ const writeDtoFile = (key, modulo) => {
84
+ const importer = new ImportProgrammer_1.ImportProgrammer();
85
+ const statements = iterate(importer)(modulo);
86
+ if (statements.length === 0)
87
+ return [];
88
+ return [
89
+ ...importer.toStatements((name) => `./${name}`, key),
90
+ ...(importer.empty() ? [] : [FilePrinter_1.FilePrinter.enter()]),
91
+ ...statements,
92
+ ];
93
+ };
94
+ const iterate = (importer) => (modulo) => {
95
+ const output = [];
96
+ if (modulo.programmer !== null)
97
+ output.push(modulo.programmer(importer));
98
+ if (modulo.children.size) {
99
+ const internal = [];
100
+ for (const child of modulo.children.values())
101
+ internal.push(...iterate(importer)(child));
102
+ output.push(typescript_1.default.factory.createModuleDeclaration([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword)], typescript_1.default.factory.createIdentifier(modulo.name), typescript_1.default.factory.createModuleBlock(internal), typescript_1.default.NodeFlags.Namespace));
103
+ }
104
+ return output;
60
105
  };
61
106
  })(ApiProgrammer || (exports.ApiProgrammer = ApiProgrammer = {}));
62
107
  //# sourceMappingURL=ApiProgrammer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApiProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApiProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ApiProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import ts from "typescript";
2
+ import { IMigrateController } from "../structures/IMigrateController";
3
+ import { IMigrateRoute } from "../structures/IMigrateRoute";
4
+ import { ISwaggerComponents } from "../structures/ISwaggerComponents";
5
+ import { ImportProgrammer } from "./ImportProgrammer";
6
+ export declare namespace ApiSimulatationProgrammer {
7
+ interface IProps {
8
+ controller: IMigrateController;
9
+ route: IMigrateRoute;
10
+ alias: string;
11
+ }
12
+ const random: (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.VariableStatement;
13
+ const simulate: (components: ISwaggerComponents) => (importer: ImportProgrammer) => (props: IProps) => ts.VariableStatement;
14
+ }