@nestia/sdk 4.2.0-dev.20241211 → 4.2.0-dev.20241214

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.
@@ -9,6 +9,7 @@ const ExpressionFactory_1 = require("typia/lib/factories/ExpressionFactory");
9
9
  const TypeFactory_1 = require("typia/lib/factories/TypeFactory");
10
10
  const Escaper_1 = require("typia/lib/utils/Escaper");
11
11
  const FilePrinter_1 = require("./FilePrinter");
12
+ const SdkTypeTagProgrammer_1 = require("./SdkTypeTagProgrammer");
12
13
  var SdkTypeProgrammer;
13
14
  (function (SdkTypeProgrammer) {
14
15
  /* -----------------------------------------------------------
@@ -76,7 +77,7 @@ var SdkTypeProgrammer;
76
77
  meta.original.natives[0].name === "Date")
77
78
  return typescript_1.default.factory.createIntersectionTypeNode([
78
79
  TypeFactory_1.TypeFactory.keyword("string"),
79
- writeTag(importer)({
80
+ SdkTypeTagProgrammer_1.SdkTypeTagProgrammer.write(importer, "string", {
80
81
  name: "Format",
81
82
  value: "date-time",
82
83
  }),
@@ -126,7 +127,7 @@ var SdkTypeProgrammer;
126
127
  ? typescript_1.default.factory.createTemplateMiddle
127
128
  : typescript_1.default.factory.createTemplateTail)(str !== null && str !== void 0 ? str : ""))));
128
129
  };
129
- const write_atomic = (importer) => (meta) => write_type_tag_matrix(importer)(typescript_1.default.factory.createKeywordTypeNode(meta.type === "boolean"
130
+ const write_atomic = (importer) => (meta) => write_type_tag_matrix(importer)(meta.type, typescript_1.default.factory.createKeywordTypeNode(meta.type === "boolean"
130
131
  ? typescript_1.default.SyntaxKind.BooleanKeyword
131
132
  : meta.type === "bigint"
132
133
  ? typescript_1.default.SyntaxKind.BigIntKeyword
@@ -136,7 +137,7 @@ var SdkTypeProgrammer;
136
137
  /* -----------------------------------------------------------
137
138
  INSTANCES
138
139
  ----------------------------------------------------------- */
139
- const write_array = (project) => (importer) => (meta) => write_type_tag_matrix(importer)(typescript_1.default.factory.createArrayTypeNode(SdkTypeProgrammer.write(project)(importer)(meta.type.value)), meta.tags);
140
+ const write_array = (project) => (importer) => (meta) => write_type_tag_matrix(importer)("array", typescript_1.default.factory.createArrayTypeNode(SdkTypeProgrammer.write(project)(importer)(meta.type.value)), meta.tags);
140
141
  const write_tuple = (project) => (importer) => (meta) => typescript_1.default.factory.createTupleTypeNode(meta.type.elements.map((elem) => elem.rest
141
142
  ? typescript_1.default.factory.createRestTypeNode(typescript_1.default.factory.createArrayTypeNode(SdkTypeProgrammer.write(project)(importer)(elem.rest)))
142
143
  : elem.optional
@@ -160,44 +161,24 @@ var SdkTypeProgrammer;
160
161
  /* -----------------------------------------------------------
161
162
  MISCELLANEOUS
162
163
  ----------------------------------------------------------- */
163
- const write_type_tag_matrix = (importer) => (base, matrix) => {
164
+ const write_type_tag_matrix = (importer) => (from, base, matrix) => {
164
165
  matrix = matrix.filter((row) => row.length !== 0);
165
166
  if (matrix.length === 0)
166
167
  return base;
167
168
  else if (matrix.length === 1)
168
169
  return typescript_1.default.factory.createIntersectionTypeNode([
169
170
  base,
170
- ...matrix[0].map((tag) => writeTag(importer)(tag)),
171
+ ...matrix[0].map((tag) => SdkTypeTagProgrammer_1.SdkTypeTagProgrammer.write(importer, from, tag)),
171
172
  ]);
172
173
  return typescript_1.default.factory.createIntersectionTypeNode([
173
174
  base,
174
175
  typescript_1.default.factory.createUnionTypeNode(matrix.map((row) => row.length === 1
175
- ? writeTag(importer)(row[0])
176
- : typescript_1.default.factory.createIntersectionTypeNode(row.map((tag) => writeTag(importer)(tag))))),
176
+ ? SdkTypeTagProgrammer_1.SdkTypeTagProgrammer.write(importer, from, row[0])
177
+ : typescript_1.default.factory.createIntersectionTypeNode(row.map((tag) => SdkTypeTagProgrammer_1.SdkTypeTagProgrammer.write(importer, from, tag))))),
177
178
  ]);
178
179
  };
179
180
  })(SdkTypeProgrammer || (exports.SdkTypeProgrammer = SdkTypeProgrammer = {}));
180
181
  const writeNode = (text) => typescript_1.default.factory.createTypeReferenceNode(text);
181
- const writeTag = (importer) => (tag) => {
182
- const instance = tag.name.split("<")[0];
183
- return typescript_1.default.factory.createTypeReferenceNode(importer.external({
184
- type: true,
185
- library: `typia/lib/tags/${instance}`,
186
- instance,
187
- }), [
188
- typescript_1.default.factory.createLiteralTypeNode(typeof tag.value === "boolean"
189
- ? tag.value
190
- ? typescript_1.default.factory.createTrue()
191
- : typescript_1.default.factory.createFalse()
192
- : typeof tag.value === "bigint"
193
- ? tag.value < BigInt(0)
194
- ? typescript_1.default.factory.createPrefixUnaryExpression(typescript_1.default.SyntaxKind.MinusToken, typescript_1.default.factory.createBigIntLiteral((-tag.value).toString()))
195
- : typescript_1.default.factory.createBigIntLiteral(tag.value.toString())
196
- : typeof tag.value === "number"
197
- ? ExpressionFactory_1.ExpressionFactory.number(tag.value)
198
- : typescript_1.default.factory.createStringLiteral(tag.value)),
199
- ]);
200
- };
201
182
  const writeComment = (atomics) => (description, jsDocTags) => {
202
183
  const lines = [];
203
184
  if (description === null || description === void 0 ? void 0 : description.length)
@@ -1 +1 @@
1
- {"version":3,"file":"SdkTypeProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkTypeProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdkTypeProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkTypeProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import ts from "typescript";
2
+ import { IMetadataTypeTag } from "typia/lib/schemas/metadata/IMetadataTypeTag";
3
+ import { ImportDictionary } from "./ImportDictionary";
4
+ export declare namespace SdkTypeTagProgrammer {
5
+ const write: (importer: ImportDictionary, from: "object" | "array" | "boolean" | "number" | "bigint" | "string", tag: IMetadataTypeTag) => ts.TypeReferenceNode;
6
+ }
@@ -0,0 +1,81 @@
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.SdkTypeTagProgrammer = void 0;
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const ExpressionFactory_1 = require("typia/lib/factories/ExpressionFactory");
9
+ const LiteralFactory_1 = require("typia/lib/factories/LiteralFactory");
10
+ var SdkTypeTagProgrammer;
11
+ (function (SdkTypeTagProgrammer) {
12
+ SdkTypeTagProgrammer.write = (importer, from, tag) => {
13
+ const instance = tag.name.split("<")[0];
14
+ if (PREDEFINED[from].has(instance))
15
+ return typescript_1.default.factory.createTypeReferenceNode(importer.external({
16
+ type: true,
17
+ library: `typia/lib/tags/${instance}`,
18
+ instance,
19
+ }), instance === "Example"
20
+ ? []
21
+ : [
22
+ typescript_1.default.factory.createLiteralTypeNode(typeof tag.value === "boolean"
23
+ ? tag.value
24
+ ? typescript_1.default.factory.createTrue()
25
+ : typescript_1.default.factory.createFalse()
26
+ : typeof tag.value === "bigint"
27
+ ? tag.value < BigInt(0)
28
+ ? typescript_1.default.factory.createPrefixUnaryExpression(typescript_1.default.SyntaxKind.MinusToken, typescript_1.default.factory.createBigIntLiteral((-tag.value).toString()))
29
+ : typescript_1.default.factory.createBigIntLiteral(tag.value.toString())
30
+ : typeof tag.value === "number"
31
+ ? ExpressionFactory_1.ExpressionFactory.number(tag.value)
32
+ : typescript_1.default.factory.createStringLiteral(tag.value)),
33
+ ]);
34
+ return typescript_1.default.factory.createTypeReferenceNode(importer.external({
35
+ type: true,
36
+ library: `typia/lib/tags/TagBase`,
37
+ instance: "TagBase",
38
+ }), [
39
+ typescript_1.default.factory.createLiteralTypeNode(LiteralFactory_1.LiteralFactory.write({
40
+ target: from,
41
+ kind: tag.kind,
42
+ value: tag.value,
43
+ exclusive: tag.exclusive,
44
+ schema: tag.schema,
45
+ })),
46
+ ]);
47
+ };
48
+ })(SdkTypeTagProgrammer || (exports.SdkTypeTagProgrammer = SdkTypeTagProgrammer = {}));
49
+ const COMMON_KINDS = ["Default", "Example", "Examples", "Sequence"];
50
+ const PREDEFINED = {
51
+ object: new Set([...COMMON_KINDS]),
52
+ array: new Set([...COMMON_KINDS, "MinItems", "MaxItems", "UniqueItems"]),
53
+ boolean: new Set([...COMMON_KINDS]),
54
+ number: new Set([
55
+ ...COMMON_KINDS,
56
+ "Minimum",
57
+ "Maximum",
58
+ "ExclusiveMinimum",
59
+ "ExclusiveMaximum",
60
+ "MultipleOf",
61
+ "Type",
62
+ ]),
63
+ bigint: new Set([
64
+ ...COMMON_KINDS,
65
+ "Minimum",
66
+ "Maximum",
67
+ "ExclusiveMinimum",
68
+ "ExclusiveMaximum",
69
+ "MultipleOf",
70
+ "Type",
71
+ ]),
72
+ string: new Set([
73
+ ...COMMON_KINDS,
74
+ "ContentMediaType",
75
+ "Format",
76
+ "MaxLength",
77
+ "MinLength",
78
+ "Pattern",
79
+ ]),
80
+ };
81
+ //# sourceMappingURL=SdkTypeTagProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SdkTypeTagProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkTypeTagProgrammer.ts"],"names":[],"mappings":"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"}
File without changes
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=TypeLiteralExpression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeLiteralExpression.js","sourceRoot":"","sources":["../../src/utils/TypeLiteralExpression.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestia/sdk",
3
- "version": "4.2.0-dev.20241211",
3
+ "version": "4.2.0-dev.20241214",
4
4
  "description": "Nestia SDK and Swagger generator",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -32,8 +32,8 @@
32
32
  },
33
33
  "homepage": "https://nestia.io",
34
34
  "dependencies": {
35
- "@nestia/core": "^4.2.0-dev.20241211",
36
- "@nestia/fetcher": "^4.2.0-dev.20241211",
35
+ "@nestia/core": "^4.2.0-dev.20241214",
36
+ "@nestia/fetcher": "^4.2.0-dev.20241214",
37
37
  "@samchon/openapi": "^2.0.1",
38
38
  "cli": "^1.0.1",
39
39
  "get-function-location": "^2.0.0",
@@ -44,11 +44,11 @@
44
44
  "tsconfck": "^2.1.2",
45
45
  "tsconfig-paths": "^4.1.1",
46
46
  "tstl": "^3.0.0",
47
- "typia": "^7.2.0"
47
+ "typia": "^7.3.0"
48
48
  },
49
49
  "peerDependencies": {
50
- "@nestia/core": ">=4.2.0-dev.20241211",
51
- "@nestia/fetcher": ">=4.2.0-dev.20241211",
50
+ "@nestia/core": ">=4.2.0-dev.20241214",
51
+ "@nestia/fetcher": ">=4.2.0-dev.20241214",
52
52
  "@nestjs/common": ">=7.0.1",
53
53
  "@nestjs/core": ">=7.0.1",
54
54
  "reflect-metadata": ">=0.1.12",
@@ -17,6 +17,7 @@ import { Escaper } from "typia/lib/utils/Escaper";
17
17
  import { INestiaProject } from "../../structures/INestiaProject";
18
18
  import { FilePrinter } from "./FilePrinter";
19
19
  import { ImportDictionary } from "./ImportDictionary";
20
+ import { SdkTypeTagProgrammer } from "./SdkTypeTagProgrammer";
20
21
 
21
22
  export namespace SdkTypeProgrammer {
22
23
  /* -----------------------------------------------------------
@@ -100,7 +101,7 @@ export namespace SdkTypeProgrammer {
100
101
  )
101
102
  return ts.factory.createIntersectionTypeNode([
102
103
  TypeFactory.keyword("string"),
103
- writeTag(importer)({
104
+ SdkTypeTagProgrammer.write(importer, "string", {
104
105
  name: "Format",
105
106
  value: "date-time",
106
107
  } as IMetadataTypeTag),
@@ -184,6 +185,7 @@ export namespace SdkTypeProgrammer {
184
185
  (importer: ImportDictionary) =>
185
186
  (meta: MetadataAtomic): ts.TypeNode =>
186
187
  write_type_tag_matrix(importer)(
188
+ meta.type as "boolean" | "bigint" | "number" | "string",
187
189
  ts.factory.createKeywordTypeNode(
188
190
  meta.type === "boolean"
189
191
  ? ts.SyntaxKind.BooleanKeyword
@@ -204,6 +206,7 @@ export namespace SdkTypeProgrammer {
204
206
  (importer: ImportDictionary) =>
205
207
  (meta: MetadataArray): ts.TypeNode =>
206
208
  write_type_tag_matrix(importer)(
209
+ "array",
207
210
  ts.factory.createArrayTypeNode(
208
211
  write(project)(importer)(meta.type.value),
209
212
  ),
@@ -298,22 +301,30 @@ export namespace SdkTypeProgrammer {
298
301
  ----------------------------------------------------------- */
299
302
  const write_type_tag_matrix =
300
303
  (importer: ImportDictionary) =>
301
- (base: ts.TypeNode, matrix: IMetadataTypeTag[][]): ts.TypeNode => {
304
+ (
305
+ from: "array" | "boolean" | "number" | "bigint" | "string" | "object",
306
+ base: ts.TypeNode,
307
+ matrix: IMetadataTypeTag[][],
308
+ ): ts.TypeNode => {
302
309
  matrix = matrix.filter((row) => row.length !== 0);
303
310
  if (matrix.length === 0) return base;
304
311
  else if (matrix.length === 1)
305
312
  return ts.factory.createIntersectionTypeNode([
306
313
  base,
307
- ...matrix[0].map((tag) => writeTag(importer)(tag)),
314
+ ...matrix[0].map((tag) =>
315
+ SdkTypeTagProgrammer.write(importer, from, tag),
316
+ ),
308
317
  ]);
309
318
  return ts.factory.createIntersectionTypeNode([
310
319
  base,
311
320
  ts.factory.createUnionTypeNode(
312
321
  matrix.map((row) =>
313
322
  row.length === 1
314
- ? writeTag(importer)(row[0])
323
+ ? SdkTypeTagProgrammer.write(importer, from, row[0])
315
324
  : ts.factory.createIntersectionTypeNode(
316
- row.map((tag) => writeTag(importer)(tag)),
325
+ row.map((tag) =>
326
+ SdkTypeTagProgrammer.write(importer, from, tag),
327
+ ),
317
328
  ),
318
329
  ),
319
330
  ),
@@ -322,34 +333,6 @@ export namespace SdkTypeProgrammer {
322
333
  }
323
334
 
324
335
  const writeNode = (text: string) => ts.factory.createTypeReferenceNode(text);
325
- const writeTag = (importer: ImportDictionary) => (tag: IMetadataTypeTag) => {
326
- const instance: string = tag.name.split("<")[0];
327
- return ts.factory.createTypeReferenceNode(
328
- importer.external({
329
- type: true,
330
- library: `typia/lib/tags/${instance}`,
331
- instance,
332
- }),
333
- [
334
- ts.factory.createLiteralTypeNode(
335
- typeof tag.value === "boolean"
336
- ? tag.value
337
- ? ts.factory.createTrue()
338
- : ts.factory.createFalse()
339
- : typeof tag.value === "bigint"
340
- ? tag.value < BigInt(0)
341
- ? ts.factory.createPrefixUnaryExpression(
342
- ts.SyntaxKind.MinusToken,
343
- ts.factory.createBigIntLiteral((-tag.value).toString()),
344
- )
345
- : ts.factory.createBigIntLiteral(tag.value.toString())
346
- : typeof tag.value === "number"
347
- ? ExpressionFactory.number(tag.value)
348
- : ts.factory.createStringLiteral(tag.value),
349
- ),
350
- ],
351
- );
352
- };
353
336
  const writeComment =
354
337
  (atomics: MetadataAtomic[]) =>
355
338
  (description: string | null, jsDocTags: IJsDocTagInfo[]): string => {
@@ -0,0 +1,119 @@
1
+ import ts from "typescript";
2
+ import { ExpressionFactory } from "typia/lib/factories/ExpressionFactory";
3
+ import { LiteralFactory } from "typia/lib/factories/LiteralFactory";
4
+ import { IMetadataTypeTag } from "typia/lib/schemas/metadata/IMetadataTypeTag";
5
+
6
+ import { ImportDictionary } from "./ImportDictionary";
7
+
8
+ export namespace SdkTypeTagProgrammer {
9
+ export const write = (
10
+ importer: ImportDictionary,
11
+ from: "object" | "array" | "boolean" | "number" | "bigint" | "string",
12
+ tag: IMetadataTypeTag,
13
+ ) => {
14
+ const instance: string = tag.name.split("<")[0];
15
+ if (PREDEFINED[from].has(instance))
16
+ return ts.factory.createTypeReferenceNode(
17
+ importer.external({
18
+ type: true,
19
+ library: `typia/lib/tags/${instance}`,
20
+ instance,
21
+ }),
22
+ instance === "Example"
23
+ ? []
24
+ : [
25
+ ts.factory.createLiteralTypeNode(
26
+ typeof tag.value === "boolean"
27
+ ? tag.value
28
+ ? ts.factory.createTrue()
29
+ : ts.factory.createFalse()
30
+ : typeof tag.value === "bigint"
31
+ ? tag.value < BigInt(0)
32
+ ? ts.factory.createPrefixUnaryExpression(
33
+ ts.SyntaxKind.MinusToken,
34
+ ts.factory.createBigIntLiteral(
35
+ (-tag.value).toString(),
36
+ ),
37
+ )
38
+ : ts.factory.createBigIntLiteral(tag.value.toString())
39
+ : typeof tag.value === "number"
40
+ ? ExpressionFactory.number(tag.value)
41
+ : ts.factory.createStringLiteral(tag.value),
42
+ ),
43
+ ],
44
+ );
45
+ return ts.factory.createTypeReferenceNode(
46
+ importer.external({
47
+ type: true,
48
+ library: `typia/lib/tags/TagBase`,
49
+ instance: "TagBase",
50
+ }),
51
+ [
52
+ ts.factory.createLiteralTypeNode(
53
+ LiteralFactory.write({
54
+ target: from,
55
+ kind: tag.kind,
56
+ value: tag.value,
57
+ exclusive: tag.exclusive,
58
+ schema: tag.schema,
59
+ }) as any,
60
+ ),
61
+ ],
62
+ );
63
+ };
64
+ }
65
+
66
+ const COMMON_KINDS = ["Default", "Example", "Examples", "Sequence"];
67
+ const PREDEFINED = {
68
+ object: new Set([...COMMON_KINDS]),
69
+ array: new Set([...COMMON_KINDS, "MinItems", "MaxItems", "UniqueItems"]),
70
+ boolean: new Set([...COMMON_KINDS]),
71
+ number: new Set([
72
+ ...COMMON_KINDS,
73
+ "Minimum",
74
+ "Maximum",
75
+ "ExclusiveMinimum",
76
+ "ExclusiveMaximum",
77
+ "MultipleOf",
78
+ "Type",
79
+ ]),
80
+ bigint: new Set([
81
+ ...COMMON_KINDS,
82
+ "Minimum",
83
+ "Maximum",
84
+ "ExclusiveMinimum",
85
+ "ExclusiveMaximum",
86
+ "MultipleOf",
87
+ "Type",
88
+ ]),
89
+ string: new Set([
90
+ ...COMMON_KINDS,
91
+ "ContentMediaType",
92
+ "Format",
93
+ "MaxLength",
94
+ "MinLength",
95
+ "Pattern",
96
+ ]),
97
+ };
98
+
99
+ // export * from "./Constant";
100
+ // export * from "./ContentMediaType";
101
+ // export * from "./Default";
102
+ // export * from "./Example";
103
+ // export * from "./Examples";
104
+ // export * from "./ExclusiveMaximum";
105
+ // export * from "./ExclusiveMinimum";
106
+ // export * from "./Format";
107
+ // export * from "./JsonSchemaPlugin";
108
+ // export * from "./Maximum";
109
+ // export * from "./MaxItems";
110
+ // export * from "./MaxLength";
111
+ // export * from "./Minimum";
112
+ // export * from "./MinItems";
113
+ // export * from "./MinLength";
114
+ // export * from "./MultipleOf";
115
+ // export * from "./Pattern";
116
+ // export * from "./Sequence";
117
+ // export * from "./TagBase";
118
+ // export * from "./Type";
119
+ // export * from "./UniqueItems";
File without changes