@nestia/migrate 0.2.13 → 0.3.0

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 (31) hide show
  1. package/lib/NestiaMigrateApplication.js +49 -6
  2. package/lib/NestiaMigrateApplication.js.map +1 -1
  3. package/lib/bundles/TEMPLATE.js +3 -3
  4. package/lib/bundles/TEMPLATE.js.map +1 -1
  5. package/lib/programmers/ControllerProgrammer.js +4 -14
  6. package/lib/programmers/ControllerProgrammer.js.map +1 -1
  7. package/lib/programmers/DtoProgrammer.js +8 -13
  8. package/lib/programmers/DtoProgrammer.js.map +1 -1
  9. package/lib/programmers/ImportProgrammer.d.ts +7 -3
  10. package/lib/programmers/ImportProgrammer.js +28 -7
  11. package/lib/programmers/ImportProgrammer.js.map +1 -1
  12. package/lib/programmers/MigrateProgrammer.js +5 -5
  13. package/lib/programmers/MigrateProgrammer.js.map +1 -1
  14. package/lib/programmers/RouteProgrammer.d.ts +2 -1
  15. package/lib/programmers/RouteProgrammer.js +19 -19
  16. package/lib/programmers/RouteProgrammer.js.map +1 -1
  17. package/lib/programmers/SchemaProgrammer.d.ts +2 -1
  18. package/lib/programmers/SchemaProgrammer.js +80 -51
  19. package/lib/programmers/SchemaProgrammer.js.map +1 -1
  20. package/lib/structures/IMigrateRoute.d.ts +1 -1
  21. package/lib/structures/ISwaggerRoute.d.ts +1 -1
  22. package/package.json +5 -5
  23. package/src/bundles/TEMPLATE.ts +3 -3
  24. package/src/programmers/ControllerProgrammer.ts +13 -29
  25. package/src/programmers/DtoProgrammer.ts +9 -17
  26. package/src/programmers/ImportProgrammer.ts +41 -13
  27. package/src/programmers/MigrateProgrammer.ts +5 -5
  28. package/src/programmers/RouteProgrammer.ts +31 -31
  29. package/src/programmers/SchemaProgrammer.ts +128 -61
  30. package/src/structures/IMigrateRoute.ts +1 -1
  31. package/src/structures/ISwaggerRoute.ts +1 -1
@@ -3,10 +3,11 @@ import { ISwaggerSchema } from "../structures/ISwaggeSchema";
3
3
  import { ISwagger } from "../structures/ISwagger";
4
4
  import { ISwaggerComponents } from "../structures/ISwaggerComponents";
5
5
  import { ISwaggerRoute } from "../structures/ISwaggerRoute";
6
+ import { ImportProgrammer } from "./ImportProgrammer";
6
7
  export declare namespace RouteProgrammer {
7
8
  const analyze: (swagger: ISwagger) => (props: {
8
9
  path: string;
9
10
  method: string;
10
11
  }) => (route: ISwaggerRoute) => IMigrateRoute | null;
11
- const write: (importer: (module: string) => (instance: string) => string) => (components: ISwaggerComponents) => (references: ISwaggerSchema.IReference[]) => (route: IMigrateRoute) => string;
12
+ const write: (components: ISwaggerComponents) => (references: ISwaggerSchema.IReference[]) => (importer: ImportProgrammer) => (route: IMigrateRoute) => string;
12
13
  }
@@ -237,30 +237,31 @@ var RouteProgrammer;
237
237
  swagger.components.schemas[name] = schema;
238
238
  return { $ref: `#/components/schemas/${name}` };
239
239
  };
240
- RouteProgrammer.write = (importer) => (components) => (references) => (route) => {
240
+ RouteProgrammer.write = (components) => (references) => (importer) => (route) => {
241
241
  var _a, _b, _c;
242
242
  const output = route.success
243
- ? SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(route.success.schema)
243
+ ? SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(importer)(route.success.schema)
244
244
  : "void";
245
245
  const methoder = (composer) => `${composer(StringUtil_1.StringUtil.capitalize(route.method))}(${JSON.stringify(route.path)})`;
246
+ const external = (lib) => (instance) => importer.external({ library: lib, instance });
246
247
  const decorator = ((_a = route.success) === null || _a === void 0 ? void 0 : _a["x-nestia-encrypted"]) === true
247
248
  ? [
248
- `@${importer("@nestia/core")("EncryptedRoute")}.${methoder((str) => str)}`,
249
+ `@${external("@nestia/core")("EncryptedRoute")}.${methoder((str) => str)}`,
249
250
  ]
250
251
  : ((_b = route.success) === null || _b === void 0 ? void 0 : _b.type) === "text/plain"
251
252
  ? [
252
- `@${importer("@nestjs/common")("Header")}("Content-Type", "text/plain")`,
253
- `@${methoder((str) => importer("@nestjs/common")(str))}`,
253
+ `@${external("@nestjs/common")("Header")}("Content-Type", "text/plain")`,
254
+ `@${methoder((str) => external("@nestjs/common")(str))}`,
254
255
  ]
255
256
  : route.method === "head"
256
257
  ? [
257
- `@${importer("@nestjs/common")("Head")}${methoder(() => "")}`,
258
+ `@${external("@nestjs/common")("Head")}${methoder(() => "")}`,
258
259
  ]
259
260
  : [
260
- `@${importer("@nestia/core")("TypedRoute")}.${methoder((str) => str)}`,
261
+ `@${external("@nestia/core")("TypedRoute")}.${methoder((str) => str)}`,
261
262
  ];
262
263
  for (const [key, value] of Object.entries((_c = route.exceptions) !== null && _c !== void 0 ? _c : {}))
263
- decorator.push(`@${importer("@nestia/core")("TypedException")}<${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(value.schema)}>(${isNaN(Number(key)) ? JSON.stringify(key) : key}, ${JSON.stringify(value.description)})`);
264
+ decorator.push(`@${external("@nestia/core")("TypedException")}<${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(importer)(value.schema)}>(${isNaN(Number(key)) ? JSON.stringify(key) : key}, ${JSON.stringify(value.description)})`);
264
265
  const content = [
265
266
  ...(route.description
266
267
  ? [
@@ -276,25 +277,25 @@ var RouteProgrammer;
276
277
  ...route.parameters.map((param) => ` ${writeParameter(components)(importer)(param)},`),
277
278
  ...(route.headers
278
279
  ? [
279
- ` @${importer("@nestia/core")("TypedHeaders")}() headers: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(route.headers)},`,
280
+ ` @${external("@nestia/core")("TypedHeaders")}() headers: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(importer)(route.headers)},`,
280
281
  ]
281
282
  : []),
282
283
  ...(route.query
283
284
  ? [
284
- ` @${importer("@nestia/core")("TypedQuery")}() query: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(route.query)},`,
285
+ ` @${external("@nestia/core")("TypedQuery")}() query: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(importer)(route.query)},`,
285
286
  ]
286
287
  : []),
287
288
  ...(route.body
288
289
  ? route.body["x-nestia-encrypted"] === true
289
290
  ? [
290
- ` @${importer("@nestia/core")("EncryptedBody")}() body: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(route.body.schema)},`,
291
+ ` @${external("@nestia/core")("EncryptedBody")}() body: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(importer)(route.body.schema)},`,
291
292
  ]
292
293
  : route.body.type === "application/json"
293
294
  ? [
294
- ` @${importer("@nestia/core")("TypedBody")}() body: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(route.body.schema)},`,
295
+ ` @${external("@nestia/core")("TypedBody")}() body: ${SchemaProgrammer_1.SchemaProgrammer.write(components)(references)(importer)(route.body.schema)},`,
295
296
  ]
296
297
  : [
297
- ` @${importer("@nestia/core")("PlainBody")}() body: string,`,
298
+ ` @${external("@nestia/core")("PlainBody")}() body: string,`,
298
299
  ]
299
300
  : []),
300
301
  `): Promise<${output}> {`,
@@ -304,7 +305,7 @@ var RouteProgrammer;
304
305
  ...(route.body ? [" body;"] : []),
305
306
  ...(output !== "void"
306
307
  ? [
307
- ` return ${importer("typia")("random")}<${output}>();`,
308
+ ` return ${external("typia")("random")}<${output}>();`,
308
309
  ]
309
310
  : []),
310
311
  `}`,
@@ -313,11 +314,10 @@ var RouteProgrammer;
313
314
  };
314
315
  const writeParameter = (components) => (importer) => ({ key, schema }) => {
315
316
  const variable = StringUtil_1.StringUtil.normalize(key);
316
- const format = JsonTypeChecker_1.JsonTypeChecker.isString(schema) &&
317
- (schema.format === "uuid" || schema.format === "date")
318
- ? schema.format
319
- : null;
320
- return `@${importer("@nestia/core")("TypedParam")}(${JSON.stringify(key)}${format ? `, ${JSON.stringify(format)}` : ""}) ${variable}: ${SchemaProgrammer_1.SchemaProgrammer.write(components)([])(schema)}`;
317
+ return `@${importer.external({
318
+ library: "@nestia/core",
319
+ instance: "TypedParam",
320
+ })}(${JSON.stringify(key)}) ${variable}: ${SchemaProgrammer_1.SchemaProgrammer.write(components)([])(importer)(schema)}`;
321
321
  };
322
322
  })(RouteProgrammer || (exports.RouteProgrammer = RouteProgrammer = {}));
323
323
  const SUPPORTED_METHODS = new Set([
@@ -1 +1 @@
1
- {"version":3,"file":"RouteProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RouteProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RouteProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RouteProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { ISwaggerSchema } from "../structures/ISwaggeSchema";
2
2
  import { ISwaggerComponents } from "../structures/ISwaggerComponents";
3
+ import { ImportProgrammer } from "./ImportProgrammer";
3
4
  export declare namespace SchemaProgrammer {
4
- const write: (components: ISwaggerComponents) => (references: ISwaggerSchema.IReference[]) => (schema: ISwaggerSchema) => string;
5
+ const write: (components: ISwaggerComponents) => (references: ISwaggerSchema.IReference[]) => (importer: ImportProgrammer) => (schema: ISwaggerSchema) => string;
5
6
  }
@@ -5,8 +5,8 @@ const Escaper_1 = require("typia/lib/utils/Escaper");
5
5
  const JsonTypeChecker_1 = require("../utils/JsonTypeChecker");
6
6
  var SchemaProgrammer;
7
7
  (function (SchemaProgrammer) {
8
- SchemaProgrammer.write = (components) => (references) => (schema) => writeSchema(components)(references)(() => () => { })(true)(schema);
9
- const writeSchema = (components) => (references) => (tagger) => (final) => (schema) => {
8
+ SchemaProgrammer.write = (components) => (references) => (importer) => (schema) => writeSchema(components)(references)(importer)(() => () => { })(true)(schema);
9
+ const writeSchema = (components) => (references) => (importer) => (commentTagger) => (final) => (schema) => {
10
10
  // SPECIAL TYPES
11
11
  if (JsonTypeChecker_1.JsonTypeChecker.isUnknown(schema))
12
12
  return "any";
@@ -14,37 +14,36 @@ var SchemaProgrammer;
14
14
  if (JsonTypeChecker_1.JsonTypeChecker.isAnyOf(schema))
15
15
  return ("(" +
16
16
  schema.anyOf
17
- .map(writeSchema(components)(references)(tagger)(false))
17
+ .map(writeSchema(components)(references)(importer)(commentTagger)(false))
18
18
  .join(" | ") +
19
19
  ")");
20
20
  else if (JsonTypeChecker_1.JsonTypeChecker.isOneOf(schema))
21
21
  return schema.oneOf
22
- .map(writeSchema(components)(references)(tagger)(false))
22
+ .map(writeSchema(components)(references)(importer)(commentTagger)(false))
23
23
  .join(" | ");
24
24
  // ATOMIC TYPES
25
25
  else if (JsonTypeChecker_1.JsonTypeChecker.isBoolean(schema))
26
- return writeBoolean(tagger)(schema);
27
- else if (JsonTypeChecker_1.JsonTypeChecker.isInteger(schema))
28
- return writeInteger(tagger)(schema);
29
- else if (JsonTypeChecker_1.JsonTypeChecker.isNumber(schema))
30
- return writeNumber(tagger)(schema);
26
+ return writeBoolean(commentTagger)(schema);
27
+ else if (JsonTypeChecker_1.JsonTypeChecker.isInteger(schema) ||
28
+ JsonTypeChecker_1.JsonTypeChecker.isNumber(schema))
29
+ return writeNumber(importer)(commentTagger)(schema);
31
30
  else if (JsonTypeChecker_1.JsonTypeChecker.isString(schema))
32
- return writeString(tagger)(schema);
31
+ return writeString(importer)(commentTagger)(schema);
33
32
  // INSTANCE TYPES
34
33
  else if (JsonTypeChecker_1.JsonTypeChecker.isArray(schema))
35
- return writeArray(components)(references)(tagger)(schema);
34
+ return writeArray(components)(references)(importer)(commentTagger)(schema);
36
35
  else if (JsonTypeChecker_1.JsonTypeChecker.isObject(schema))
37
- return writeObject(components)(references)(schema);
36
+ return writeObject(components)(references)(importer)(schema);
38
37
  else if (JsonTypeChecker_1.JsonTypeChecker.isReference(schema)) {
39
38
  references.push(schema);
40
- return schema.$ref.replace(`#/components/schemas/`, ``);
39
+ return importer.dto(schema.$ref.replace(`#/components/schemas/`, ``));
41
40
  }
42
41
  else
43
42
  return "any";
44
43
  })();
45
44
  if (type === "any" || final === false)
46
45
  return type;
47
- return isNullable(components)(schema) ? `${type} | null` : type;
46
+ return isNullable(components)(schema) ? `null | ${type}` : type;
48
47
  };
49
48
  const isNullable = (components) => (schema) => {
50
49
  var _a;
@@ -66,86 +65,107 @@ var SchemaProgrammer;
66
65
  tagger("default")(schema.default.toString());
67
66
  return schema.enum ? schema.enum.join(" | ") : "boolean";
68
67
  };
69
- const writeInteger = (tagger) => (schema) => {
70
- tagger("type")("int");
71
- return writeNumber(tagger)(schema);
72
- };
73
- const writeNumber = (tagger) => (schema) => {
68
+ const writeNumber = (importer) => (commentTagger) => (schema) => {
74
69
  var _a;
75
70
  if (schema.default)
76
- tagger("default")(schema.default.toString());
71
+ commentTagger("default")(schema.default.toString());
77
72
  if ((_a = schema.enum) === null || _a === void 0 ? void 0 : _a.length)
78
73
  return schema.enum.join(" | ");
74
+ const intersection = ["number"];
75
+ if (schema.type === "integer")
76
+ intersection.push(importer.tag("Type", "int32"));
79
77
  if (schema.minimum !== undefined)
80
- tagger(schema.exclusiveMinimum ? "exclusiveMinimum" : "minimum")(schema.minimum.toString());
78
+ intersection.push(importer.tag(schema.exclusiveMinimum
79
+ ? "ExclusiveMinimum"
80
+ : "Minimum", schema.minimum));
81
81
  if (schema.maximum !== undefined)
82
- tagger(schema.exclusiveMaximum ? "exclusiveMaximum" : "maximum")(schema.maximum.toString());
82
+ intersection.push(importer.tag(schema.exclusiveMaximum
83
+ ? "ExclusiveMaximum"
84
+ : "Maximum", schema.maximum));
83
85
  if (schema.multipleOf !== undefined)
84
- tagger("multipleOf")(schema.multipleOf.toString());
85
- return "number";
86
+ intersection.push(importer.tag("MultipleOf", schema.multipleOf));
87
+ return intersection.length === 1
88
+ ? intersection[0]
89
+ : "(" + intersection.join(" & ") + ")";
86
90
  };
87
- const writeString = (tagger) => (schema) => {
91
+ const writeString = (importer) => (commentTagger) => (schema) => {
88
92
  var _a;
89
93
  if (schema.default)
90
- tagger("default")(schema.default);
94
+ commentTagger("default")(schema.default);
91
95
  if ((_a = schema.enum) === null || _a === void 0 ? void 0 : _a.length)
92
96
  return schema.enum
93
97
  .map((str) => JSON.stringify(str))
94
98
  .join(" | ");
99
+ const intersection = ["string"];
100
+ if (schema.format !== undefined && FORMATS.has(schema.format))
101
+ intersection.push(importer.tag("Format", schema.format));
102
+ if (schema.pattern !== undefined)
103
+ intersection.push(importer.tag("Pattern", schema.pattern));
95
104
  if (schema.minLength !== undefined)
96
- tagger("minLength")(schema.minLength.toString());
105
+ intersection.push(importer.tag("MinLength", schema.minLength));
97
106
  if (schema.maxLength !== undefined)
98
- tagger("maxLength")(schema.maxLength.toString());
99
- if (schema.pattern !== undefined)
100
- tagger("pattern")(schema.pattern);
101
- return "string";
107
+ intersection.push(importer.tag("MaxLength", schema.maxLength));
108
+ return intersection.length === 1
109
+ ? intersection[0]
110
+ : "(" + intersection.join(" & ") + ")";
111
+ };
112
+ const writeArray = (components) => (references) => (importer) => (commentTagger) => (schema) => {
113
+ if (schema["x-typia-tuple"])
114
+ return `[${schema["x-typia-tuple"].items
115
+ .map(writeTupleElement(components)(references)(importer))
116
+ .join(", ")}]`;
117
+ const intersection = [
118
+ `Array<${writeSchema(components)(references)(importer)(commentTagger)(true)(schema.items)}>`,
119
+ ];
120
+ if (schema.minItems !== undefined)
121
+ intersection.push(importer.tag("MinItems", schema.minItems));
122
+ if (schema.maxItems !== undefined)
123
+ intersection.push(importer.tag("MaxItems", schema.maxItems));
124
+ return intersection.length === 1
125
+ ? intersection[0]
126
+ : "(" + intersection.join(" & ") + ")";
102
127
  };
103
- const writeArray = (components) => (references) => (tagger) => (schema) => schema["x-typia-tuple"]
104
- ? `[${schema["x-typia-tuple"].items
105
- .map(writeTupleElement(components)(references))
106
- .join(", ")}]`
107
- : `Array<${writeSchema(components)(references)(tagger)(true)(schema.items)}>`;
108
- const writeTupleElement = (components) => (references) => (schema) => {
109
- const name = writeSchema(components)(references)(() => () => { })(true)(schema);
128
+ const writeTupleElement = (components) => (references) => (importer) => (schema) => {
129
+ const name = writeSchema(components)(references)(importer)(() => () => { })(true)(schema);
110
130
  return schema["x-typia-optional"]
111
131
  ? `${name}?`
112
132
  : schema["x-typia-rest"]
113
133
  ? `...${name}`
114
134
  : name;
115
135
  };
116
- const writeObject = (components) => (references) => (schema) => {
136
+ const writeObject = (components) => (references) => (importer) => (schema) => {
117
137
  var _a;
118
138
  const entries = Object.entries((_a = schema.properties) !== null && _a !== void 0 ? _a : {});
119
139
  return typeof schema.additionalProperties === "object"
120
140
  ? entries.length
121
- ? `${writeStaticObject(components)(references)(schema)} & ${writeDynamicObject(components)(references)(schema.additionalProperties)}`
122
- : writeDynamicObject(components)(references)(schema.additionalProperties)
123
- : writeStaticObject(components)(references)(schema);
141
+ ? `${writeStaticObject(components)(references)(importer)(schema)} & ${writeDynamicObject(components)(references)(importer)(schema.additionalProperties)}`
142
+ : writeDynamicObject(components)(references)(importer)(schema.additionalProperties)
143
+ : writeStaticObject(components)(references)(importer)(schema);
124
144
  };
125
- const writeStaticObject = (components) => (references) => (schema) => {
145
+ const writeStaticObject = (components) => (references) => (importer) => (schema) => {
126
146
  var _a;
127
147
  return [
128
148
  "{",
129
149
  ...Object.entries((_a = schema.properties) !== null && _a !== void 0 ? _a : {})
130
150
  .map(([key, value]) => {
131
151
  var _a;
132
- return writeProperty(components)(references)(key)(((_a = schema.required) !== null && _a !== void 0 ? _a : []).some((r) => r === key))(value);
152
+ return writeProperty(components)(references)(importer)(key)(((_a = schema.required) !== null && _a !== void 0 ? _a : []).some((r) => r === key))(value);
133
153
  })
134
154
  .map(tab(4)),
135
155
  "}",
136
156
  ].join("\n");
137
157
  };
138
- const writeDynamicObject = (components) => (references) => (additional) => {
158
+ const writeDynamicObject = (components) => (references) => (importer) => (additional) => {
139
159
  return [
140
160
  "{",
141
- tab(4)(writeProperty(components)(references)("[key: string]", true)(true)(additional)),
161
+ tab(4)(writeProperty(components)(references)(importer)("[key: string]", true)(true)(additional)),
142
162
  "}",
143
163
  ].join("\n");
144
164
  };
145
- const writeProperty = (components) => (references) => (key, ensureVariable = false) => (required) => (schema) => {
165
+ const writeProperty = (components) => (references) => (importer) => (key, ensureVariable = false) => (required) => (schema) => {
146
166
  var _a;
147
167
  const content = [];
148
- const tagger = (tag) => (value) => {
168
+ const commentTagger = (tag) => (value) => {
149
169
  var _a;
150
170
  const exists = (!!((_a = schema.description) === null || _a === void 0 ? void 0 : _a.length) &&
151
171
  schema.description.includes(`@${tag}`)) ||
@@ -163,12 +183,12 @@ var SchemaProgrammer;
163
183
  }
164
184
  // STARTS FROM TITLE
165
185
  if (schema.title)
166
- tagger("@title")(schema.title);
186
+ commentTagger("@title")(schema.title);
167
187
  // GET TYPE WITH SPECIAL TAGS
168
- const type = writeSchema(components)(references)(tagger)(true)(schema);
188
+ const type = writeSchema(components)(references)(importer)(commentTagger)(true)(schema);
169
189
  // ENDS WITH DEPRECATED TAG
170
190
  if (schema.deprecated)
171
- tagger("@deprecated")();
191
+ commentTagger("@deprecated")();
172
192
  const description = content.length === 0
173
193
  ? ""
174
194
  : [
@@ -186,4 +206,13 @@ var SchemaProgrammer;
186
206
  .map((l) => `${" ".repeat(size)}${l}`)
187
207
  .join("\n");
188
208
  })(SchemaProgrammer || (exports.SchemaProgrammer = SchemaProgrammer = {}));
209
+ const FORMATS = new Set([
210
+ "email",
211
+ "uuid",
212
+ "ipv4",
213
+ "ipv6",
214
+ "url",
215
+ "date",
216
+ "date-time",
217
+ ]);
189
218
  //# sourceMappingURL=SchemaProgrammer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaProgrammer.js","sourceRoot":"","sources":["../../src/programmers/SchemaProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaProgrammer.js","sourceRoot":"","sources":["../../src/programmers/SchemaProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { IJsDocTagInfo } from "typia/lib/metadata/IJsDocTagInfo";
1
+ import { IJsDocTagInfo } from "typia/lib/schemas/metadata/IJsDocTagInfo";
2
2
  import { ISwaggerSchema } from "./ISwaggeSchema";
3
3
  export interface IMigrateRoute {
4
4
  name: string;
@@ -1,4 +1,4 @@
1
- import { IJsDocTagInfo } from "typia/lib/metadata/IJsDocTagInfo";
1
+ import { IJsDocTagInfo } from "typia/lib/schemas/metadata/IJsDocTagInfo";
2
2
  import { ISwaggerSchema } from "./ISwaggeSchema";
3
3
  export interface ISwaggerRoute {
4
4
  parameters?: ISwaggerRoute.IParameter[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestia/migrate",
3
- "version": "0.2.13",
3
+ "version": "0.3.0",
4
4
  "description": "Migration program from swagger to NestJS",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -30,8 +30,8 @@
30
30
  },
31
31
  "homepage": "https://github.com/samchon/nestia#readme",
32
32
  "devDependencies": {
33
- "@nestia/core": "^1.6.7",
34
- "@nestia/fetcher": "^1.6.7",
33
+ "@nestia/core": "^2.0.1",
34
+ "@nestia/fetcher": "^2.0.1",
35
35
  "@trivago/prettier-plugin-sort-imports": "^4.1.1",
36
36
  "@types/node": "^20.3.3",
37
37
  "prettier": "^2.8.8",
@@ -41,11 +41,11 @@
41
41
  "ts-node": "^10.9.1",
42
42
  "ts-patch": "^3.0.2",
43
43
  "tstl": "^2.5.13",
44
- "typescript": "^5.1.6",
44
+ "typescript": "^5.2.2",
45
45
  "typescript-transform-paths": "^3.4.6"
46
46
  },
47
47
  "dependencies": {
48
- "typia": "^5.0.0"
48
+ "typia": "^5.0.2"
49
49
  },
50
50
  "files": [
51
51
  "lib",