@nestia/sdk 2.5.0-dev.20240128 → 2.5.0-dev.20240129-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/lib/NestiaSdkApplication.js +1 -1
  2. package/lib/NestiaSdkApplication.js.map +1 -1
  3. package/lib/generates/CloneGenerator.d.ts +6 -0
  4. package/lib/generates/CloneGenerator.js +60 -0
  5. package/lib/generates/CloneGenerator.js.map +1 -0
  6. package/lib/generates/E2eGenerator.d.ts +2 -1
  7. package/lib/generates/E2eGenerator.js +2 -2
  8. package/lib/generates/E2eGenerator.js.map +1 -1
  9. package/lib/generates/SdkGenerator.js +3 -3
  10. package/lib/generates/SdkGenerator.js.map +1 -1
  11. package/lib/generates/internal/E2eFileProgrammer.d.ts +2 -1
  12. package/lib/generates/internal/E2eFileProgrammer.js +45 -51
  13. package/lib/generates/internal/E2eFileProgrammer.js.map +1 -1
  14. package/lib/generates/internal/SdkAliasCollection.d.ts +12 -0
  15. package/lib/generates/internal/SdkAliasCollection.js +89 -0
  16. package/lib/generates/internal/SdkAliasCollection.js.map +1 -0
  17. package/lib/generates/internal/SdkFileProgrammer.d.ts +2 -1
  18. package/lib/generates/internal/SdkFileProgrammer.js +12 -19
  19. package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
  20. package/lib/generates/internal/SdkFunctionProgrammer.js +6 -6
  21. package/lib/generates/internal/SdkFunctionProgrammer.js.map +1 -1
  22. package/lib/generates/internal/SdkInterfaceProgrammer.d.ts +12 -0
  23. package/lib/generates/internal/SdkInterfaceProgrammer.js +112 -0
  24. package/lib/generates/internal/SdkInterfaceProgrammer.js.map +1 -0
  25. package/lib/generates/internal/SdkNamespaceProgrammer.d.ts +1 -1
  26. package/lib/generates/internal/SdkNamespaceProgrammer.js +24 -23
  27. package/lib/generates/internal/SdkNamespaceProgrammer.js.map +1 -1
  28. package/lib/generates/internal/SdkRouteProgrammer.d.ts +1 -1
  29. package/lib/generates/internal/SdkRouteProgrammer.js +4 -4
  30. package/lib/generates/internal/SdkRouteProgrammer.js.map +1 -1
  31. package/lib/generates/internal/SdkSimulationProgrammer.d.ts +1 -1
  32. package/lib/generates/internal/SdkSimulationProgrammer.js +11 -12
  33. package/lib/generates/internal/SdkSimulationProgrammer.js.map +1 -1
  34. package/lib/generates/internal/{SdkDtoGenerator.d.ts → SdkTypeProgrammer.d.ts} +2 -4
  35. package/lib/generates/internal/SdkTypeProgrammer.js +160 -0
  36. package/lib/generates/internal/SdkTypeProgrammer.js.map +1 -0
  37. package/lib/utils/{NodeUtil.d.ts → FormatUtil.d.ts} +2 -1
  38. package/lib/utils/FormatUtil.js +38 -0
  39. package/lib/utils/FormatUtil.js.map +1 -0
  40. package/lib/utils/ImportDictionary.js +2 -2
  41. package/lib/utils/ImportDictionary.js.map +1 -1
  42. package/package.json +3 -3
  43. package/src/NestiaSdkApplication.ts +1 -1
  44. package/src/generates/CloneGenerator.ts +75 -0
  45. package/src/generates/E2eGenerator.ts +3 -1
  46. package/src/generates/SdkGenerator.ts +3 -3
  47. package/src/generates/internal/E2eFileProgrammer.ts +145 -77
  48. package/src/generates/internal/SdkAliasCollection.ts +145 -0
  49. package/src/generates/internal/SdkFileProgrammer.ts +16 -16
  50. package/src/generates/internal/SdkFunctionProgrammer.ts +9 -9
  51. package/src/generates/internal/SdkInterfaceProgrammer.ts +211 -0
  52. package/src/generates/internal/SdkNamespaceProgrammer.ts +36 -24
  53. package/src/generates/internal/SdkRouteProgrammer.ts +7 -3
  54. package/src/generates/internal/SdkSimulationProgrammer.ts +14 -16
  55. package/src/generates/internal/SdkTypeProgrammer.ts +252 -0
  56. package/src/utils/{NodeUtil.ts → FormatUtil.ts} +13 -1
  57. package/src/utils/ImportDictionary.ts +2 -2
  58. package/lib/generates/internal/SdkDtoGenerator.js +0 -294
  59. package/lib/generates/internal/SdkDtoGenerator.js.map +0 -1
  60. package/lib/generates/internal/SdkTypeDefiner.d.ts +0 -11
  61. package/lib/generates/internal/SdkTypeDefiner.js +0 -82
  62. package/lib/generates/internal/SdkTypeDefiner.js.map +0 -1
  63. package/lib/utils/NodeUtil.js +0 -16
  64. package/lib/utils/NodeUtil.js.map +0 -1
  65. package/src/generates/internal/SdkDtoGenerator.ts +0 -424
  66. package/src/generates/internal/SdkTypeDefiner.ts +0 -119
@@ -0,0 +1,252 @@
1
+ import ts from "typescript";
2
+ import { ExpressionFactory } from "typia/lib/factories/ExpressionFactory";
3
+ import { TypeFactory } from "typia/lib/factories/TypeFactory";
4
+ import { IMetadataTypeTag } from "typia/lib/schemas/metadata/IMetadataTypeTag";
5
+ import { Metadata } from "typia/lib/schemas/metadata/Metadata";
6
+ import { MetadataAlias } from "typia/lib/schemas/metadata/MetadataAlias";
7
+ import { MetadataArray } from "typia/lib/schemas/metadata/MetadataArray";
8
+ import { MetadataAtomic } from "typia/lib/schemas/metadata/MetadataAtomic";
9
+ import { MetadataEscaped } from "typia/lib/schemas/metadata/MetadataEscaped";
10
+ import { MetadataObject } from "typia/lib/schemas/metadata/MetadataObject";
11
+ import { MetadataTuple } from "typia/lib/schemas/metadata/MetadataTuple";
12
+
13
+ import { INestiaConfig } from "../../INestiaConfig";
14
+ import { ImportDictionary } from "../../utils/ImportDictionary";
15
+
16
+ export namespace SdkTypeProgrammer {
17
+ export const decode =
18
+ (config: INestiaConfig) =>
19
+ (importer: ImportDictionary) =>
20
+ (meta: Metadata, parentEscaped: boolean = false): ts.TypeNode => {
21
+ const union: ts.TypeNode[] = [];
22
+
23
+ // COALESCES
24
+ if (meta.any) union.push(TypeFactory.keyword("any"));
25
+ if (meta.nullable) union.push(node("null"));
26
+ if (meta.isRequired() === false) union.push(node("undefined"));
27
+ if (parentEscaped === false && meta.escaped)
28
+ union.push(decode_escaped(config)(importer)(meta.escaped));
29
+
30
+ // ATOMIC TYPES
31
+ for (const c of meta.constants)
32
+ for (const value of c.values) union.push(decode_constant(value));
33
+ for (const tpl of meta.templates)
34
+ union.push(decode_template(config)(importer)(tpl));
35
+ for (const atom of meta.atomics)
36
+ union.push(decode_atomic(importer)(atom));
37
+
38
+ // OBJECT TYPES
39
+ for (const tuple of meta.tuples)
40
+ union.push(decode_tuple(config)(importer)(tuple));
41
+ for (const array of meta.arrays)
42
+ union.push(decode_array(config)(importer)(array));
43
+ for (const object of meta.objects)
44
+ union.push(decode_alias(config)(importer)(object));
45
+ for (const alias of meta.aliases)
46
+ union.push(decode_alias(config)(importer)(alias));
47
+
48
+ return union.length === 1
49
+ ? union[0]
50
+ : ts.factory.createUnionTypeNode(union);
51
+ };
52
+
53
+ const decode_escaped =
54
+ (config: INestiaConfig) =>
55
+ (importer: ImportDictionary) =>
56
+ (meta: MetadataEscaped): ts.TypeNode => {
57
+ if (
58
+ meta.original.size() === 1 &&
59
+ meta.original.natives.length === 1 &&
60
+ meta.original.natives[0] === "Date"
61
+ )
62
+ return ts.factory.createIntersectionTypeNode([
63
+ TypeFactory.keyword("string"),
64
+ decodeTag(importer)({
65
+ name: "Format",
66
+ value: "date-time",
67
+ } as IMetadataTypeTag),
68
+ ]);
69
+ return decode(config)(importer)(meta.returns, true);
70
+ };
71
+
72
+ const decode_constant = (value: boolean | bigint | number | string) => {
73
+ if (typeof value === "boolean")
74
+ return ts.factory.createLiteralTypeNode(
75
+ value ? ts.factory.createTrue() : ts.factory.createFalse(),
76
+ );
77
+ else if (typeof value === "bigint")
78
+ return ts.factory.createLiteralTypeNode(
79
+ value < BigInt(0)
80
+ ? ts.factory.createPrefixUnaryExpression(
81
+ ts.SyntaxKind.MinusToken,
82
+ ts.factory.createBigIntLiteral((-value).toString()),
83
+ )
84
+ : ts.factory.createBigIntLiteral(value.toString()),
85
+ );
86
+ else if (typeof value === "number")
87
+ return ts.factory.createLiteralTypeNode(ExpressionFactory.number(value));
88
+ return ts.factory.createLiteralTypeNode(
89
+ ts.factory.createStringLiteral(value),
90
+ );
91
+ };
92
+
93
+ const decode_template =
94
+ (config: INestiaConfig) =>
95
+ (importer: ImportDictionary) =>
96
+ (meta: Metadata[]): ts.TypeNode => {
97
+ const head: boolean = meta[0].isSoleLiteral();
98
+ const spans: [ts.TypeNode | null, string | null][] = [];
99
+ for (const elem of meta.slice(head ? 1 : 0)) {
100
+ const last =
101
+ spans.at(-1) ??
102
+ (() => {
103
+ const tuple = [null!, null!] as [ts.TypeNode | null, string | null];
104
+ spans.push(tuple);
105
+ return tuple;
106
+ })();
107
+ if (elem.isSoleLiteral())
108
+ if (last[1] === null) last[1] = String(elem.constants[0].values[0]);
109
+ else
110
+ spans.push([
111
+ ts.factory.createLiteralTypeNode(
112
+ ts.factory.createStringLiteral(
113
+ String(elem.constants[0].values[0]),
114
+ ),
115
+ ),
116
+ null,
117
+ ]);
118
+ else if (last[0] === null) last[0] = decode(config)(importer)(elem);
119
+ else spans.push([decode(config)(importer)(elem), null]);
120
+ }
121
+ return ts.factory.createTemplateLiteralType(
122
+ ts.factory.createTemplateHead(
123
+ head ? (meta[0].constants[0].values[0] as string) : "",
124
+ ),
125
+ spans
126
+ .filter(([node]) => node !== null)
127
+ .map(([node, str], i, array) =>
128
+ ts.factory.createTemplateLiteralTypeSpan(
129
+ node!,
130
+ (i !== array.length - 1
131
+ ? ts.factory.createTemplateMiddle
132
+ : ts.factory.createTemplateTail)(str ?? ""),
133
+ ),
134
+ ),
135
+ );
136
+ };
137
+
138
+ const decode_atomic =
139
+ (importer: ImportDictionary) =>
140
+ (meta: MetadataAtomic): ts.TypeNode =>
141
+ decode_type_tag_matrix(importer)(
142
+ ts.factory.createKeywordTypeNode(
143
+ meta.type === "boolean"
144
+ ? ts.SyntaxKind.BooleanKeyword
145
+ : meta.type === "bigint"
146
+ ? ts.SyntaxKind.BigIntKeyword
147
+ : meta.type === "number"
148
+ ? ts.SyntaxKind.NumberKeyword
149
+ : ts.SyntaxKind.StringKeyword,
150
+ ),
151
+ meta.tags,
152
+ );
153
+
154
+ const decode_array =
155
+ (config: INestiaConfig) =>
156
+ (importer: ImportDictionary) =>
157
+ (meta: MetadataArray): ts.TypeNode =>
158
+ decode_type_tag_matrix(importer)(
159
+ ts.factory.createArrayTypeNode(
160
+ decode(config)(importer)(meta.type.value),
161
+ ),
162
+ meta.tags,
163
+ );
164
+
165
+ const decode_tuple =
166
+ (config: INestiaConfig) =>
167
+ (importer: ImportDictionary) =>
168
+ (meta: MetadataTuple): ts.TypeNode =>
169
+ ts.factory.createTupleTypeNode(
170
+ meta.type.elements.map((elem) =>
171
+ elem.rest
172
+ ? ts.factory.createRestTypeNode(
173
+ ts.factory.createArrayTypeNode(
174
+ decode(config)(importer)(elem.rest),
175
+ ),
176
+ )
177
+ : decode(config)(importer)(elem),
178
+ ),
179
+ );
180
+
181
+ const decode_alias =
182
+ (config: INestiaConfig) =>
183
+ (importer: ImportDictionary) =>
184
+ (meta: MetadataAlias | MetadataObject): ts.TypeNode => {
185
+ importInternalFile(config)(importer)(meta.name);
186
+ return ts.factory.createTypeReferenceNode(meta.name);
187
+ };
188
+
189
+ const decode_type_tag_matrix =
190
+ (importer: ImportDictionary) =>
191
+ (base: ts.TypeNode, matrix: IMetadataTypeTag[][]): ts.TypeNode => {
192
+ matrix = matrix.filter((row) => row.length !== 0);
193
+ if (matrix.length === 0) return base;
194
+ else if (matrix.length === 1)
195
+ return ts.factory.createIntersectionTypeNode([
196
+ base,
197
+ ...matrix[0].map((tag) => decodeTag(importer)(tag)),
198
+ ]);
199
+ return ts.factory.createIntersectionTypeNode([
200
+ base,
201
+ ts.factory.createUnionTypeNode(
202
+ matrix.map((row) =>
203
+ row.length === 1
204
+ ? decodeTag(importer)(row[0])
205
+ : ts.factory.createIntersectionTypeNode(
206
+ row.map((tag) => decodeTag(importer)(tag)),
207
+ ),
208
+ ),
209
+ ),
210
+ ]);
211
+ };
212
+ }
213
+
214
+ const node = (text: string) => ts.factory.createTypeReferenceNode(text);
215
+ const decodeTag = (importer: ImportDictionary) => (tag: IMetadataTypeTag) => {
216
+ const instance: string = tag.name.split("<")[0];
217
+ return ts.factory.createTypeReferenceNode(
218
+ importer.external({
219
+ type: true,
220
+ library: `typia/lib/tags/${instance}`,
221
+ instance,
222
+ }),
223
+ [
224
+ ts.factory.createLiteralTypeNode(
225
+ typeof tag.value === "boolean"
226
+ ? tag.value
227
+ ? ts.factory.createTrue()
228
+ : ts.factory.createFalse()
229
+ : typeof tag.value === "bigint"
230
+ ? tag.value < BigInt(0)
231
+ ? ts.factory.createPrefixUnaryExpression(
232
+ ts.SyntaxKind.MinusToken,
233
+ ts.factory.createBigIntLiteral((-tag.value).toString()),
234
+ )
235
+ : ts.factory.createBigIntLiteral(tag.value.toString())
236
+ : typeof tag.value === "number"
237
+ ? ExpressionFactory.number(tag.value)
238
+ : ts.factory.createStringLiteral(tag.value),
239
+ ),
240
+ ],
241
+ );
242
+ };
243
+ const importInternalFile =
244
+ (config: INestiaConfig) => (importer: ImportDictionary) => (name: string) => {
245
+ const top = name.split(".")[0];
246
+ if (importer.file === `${config.output}/structures/${top}.ts`) return;
247
+ importer.internal({
248
+ type: true,
249
+ file: `${config.output}/structures/${name.split(".")[0]}`,
250
+ instance: top,
251
+ });
252
+ };
@@ -1,10 +1,12 @@
1
+ import { format } from "prettier";
1
2
  import ts from "typescript";
2
3
 
3
- export namespace NodeUtil {
4
+ export namespace FormatUtil {
4
5
  export const description = <Node extends ts.Node>(
5
6
  node: Node,
6
7
  comment: string,
7
8
  ): Node => {
9
+ if (comment.length === 0) return node;
8
10
  ts.addSyntheticLeadingComment(
9
11
  node,
10
12
  ts.SyntaxKind.MultiLineCommentTrivia,
@@ -16,4 +18,14 @@ export namespace NodeUtil {
16
18
 
17
19
  export const enter = () =>
18
20
  ts.factory.createExpressionStatement(ts.factory.createIdentifier("\n"));
21
+
22
+ export const beautify = async (script: string): Promise<string> => {
23
+ try {
24
+ return await format(script, {
25
+ parser: "typescript",
26
+ });
27
+ } catch {
28
+ return script;
29
+ }
30
+ };
19
31
  }
@@ -4,7 +4,7 @@ import { HashSet } from "tstl/container/HashSet";
4
4
  import { Pair } from "tstl/utility/Pair";
5
5
  import ts from "typescript";
6
6
 
7
- import { NodeUtil } from "./NodeUtil";
7
+ import { FormatUtil } from "./FormatUtil";
8
8
 
9
9
  export class ImportDictionary {
10
10
  private readonly components_: HashMap<Pair<string, boolean>, IComposition> =
@@ -119,7 +119,7 @@ export class ImportDictionary {
119
119
  enroll((str) => str.indexOf(NODE_MODULES) === -1)(internal);
120
120
  return [
121
121
  ...external,
122
- ...(external.length && internal.length ? [NodeUtil.enter()] : []),
122
+ ...(external.length && internal.length ? [FormatUtil.enter()] : []),
123
123
  ...internal,
124
124
  ];
125
125
  }
@@ -1,294 +0,0 @@
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.SdkDtoGenerator = void 0;
16
- const fs_1 = __importDefault(require("fs"));
17
- const MetadataCollection_1 = require("typia/lib/factories/MetadataCollection");
18
- const MetadataFactory_1 = require("typia/lib/factories/MetadataFactory");
19
- const Escaper_1 = require("typia/lib/utils/Escaper");
20
- const ImportDictionary_1 = require("../../utils/ImportDictionary");
21
- const MapUtil_1 = require("../../utils/MapUtil");
22
- var SdkDtoGenerator;
23
- (function (SdkDtoGenerator) {
24
- SdkDtoGenerator.generate = (checker) => (config) => (routes) => __awaiter(this, void 0, void 0, function* () {
25
- try {
26
- yield fs_1.default.promises.mkdir(`${config.output}/structures`);
27
- }
28
- catch (_a) { }
29
- const collection = new MetadataCollection_1.MetadataCollection({
30
- replace: MetadataCollection_1.MetadataCollection.replace,
31
- });
32
- for (const r of routes) {
33
- for (const p of r.parameters) {
34
- const res = MetadataFactory_1.MetadataFactory.analyze(checker)({
35
- escape: false,
36
- constant: true,
37
- absorb: false,
38
- })(collection)(p.type);
39
- if (res.success)
40
- p.metadata = res.data;
41
- }
42
- for (const e of Object.values(r.exceptions)) {
43
- const res = MetadataFactory_1.MetadataFactory.analyze(checker)({
44
- escape: true,
45
- constant: true,
46
- absorb: false,
47
- })(collection)(e.type);
48
- if (res.success)
49
- e.metadata = res.data;
50
- }
51
- const res = MetadataFactory_1.MetadataFactory.analyze(checker)({
52
- escape: true,
53
- constant: true,
54
- absorb: false,
55
- })(collection)(r.output.type);
56
- if (res.success)
57
- r.output.metadata = res.data;
58
- }
59
- const modules = new Map();
60
- for (const alias of collection.aliases())
61
- prepare(modules)(alias.name)((importer) => defineAlias(config)(importer)(alias));
62
- for (const object of collection.objects())
63
- prepare(modules)(object.name)((importer) => defineObject(config)(importer)(object));
64
- for (const module of modules.values())
65
- yield generateFile(config)(module);
66
- });
67
- const prepare = (dict) => (name) => (programmer) => {
68
- const accessors = name.split(".");
69
- let module;
70
- accessors.forEach((acc, i) => {
71
- module = MapUtil_1.MapUtil.take(dict, acc, () => ({
72
- name: accessors.slice(0, i + 1).join("."),
73
- children: new Map(),
74
- }));
75
- if (i === accessors.length - 1)
76
- module.programmer = programmer;
77
- dict = module.children;
78
- });
79
- return module;
80
- };
81
- const generateFile = (config) => (module) => __awaiter(this, void 0, void 0, function* () {
82
- const importer = new ImportDictionary_1.ImportDictionary(`${config.output}/structures/${module.name}.ts`);
83
- const body = writeModule(importer)(module);
84
- const content = [];
85
- if (!importer.empty())
86
- content.push(importer.toScript(`${config.output}/structures`), "");
87
- content.push(body);
88
- yield fs_1.default.promises.writeFile(importer.file, content.join("\n"), "utf8");
89
- });
90
- const writeModule = (importer) => (module) => {
91
- const content = [];
92
- if (module.programmer)
93
- content.push(module.programmer(importer));
94
- if (module.children.size) {
95
- content.push(`export namespace ${module.name.split(".").at(-1)} {`);
96
- for (const child of module.children.values())
97
- content.push(writeModule(importer)(child)
98
- .split("\n")
99
- .map((l) => ` ${l}`)
100
- .join("\n"));
101
- content.push("}");
102
- }
103
- return content.join("\n");
104
- };
105
- const defineAlias = (config) => (importer) => (alias) => [
106
- ...writeComment(alias.value.atomics)(alias.description, alias.jsDocTags),
107
- `export type ${alias.name.split(".").at(-1)} = ${SdkDtoGenerator.decode(config)(importer)(alias.value)};`,
108
- ].join("\n");
109
- const defineObject = (config) => (importer) => (object) => {
110
- var _a;
111
- const top = [
112
- ...writeComment([])((_a = object.description) !== null && _a !== void 0 ? _a : null, object.jsDocTags),
113
- `export type ${object.name.split(".").at(-1)} = `,
114
- ].join("\n");
115
- if (object.properties.length === 0)
116
- return top + "{};";
117
- const regular = object.properties.filter((p) => p.key.isSoleLiteral());
118
- const dynamic = object.properties.filter((p) => !p.key.isSoleLiteral());
119
- const brackets = [];
120
- if (regular.length) {
121
- const row = ["{"];
122
- for (const p of regular) {
123
- const key = p.key.constants[0].values[0];
124
- const identifier = Escaper_1.Escaper.variable(key)
125
- ? key
126
- : JSON.stringify(key);
127
- row.push(...writeComment(p.value.atomics)(p.description, p.jsDocTags).map((l) => ` ${l}`), ` ${identifier}${p.value.isRequired() === false ? "?" : ""}: ${SdkDtoGenerator.decode(config)(importer)(p.value)};`);
128
- }
129
- row.push("}");
130
- brackets.push(row);
131
- }
132
- for (const p of dynamic) {
133
- const row = ["{"];
134
- row.push(...writeComment(p.value.atomics)(p.description, p.jsDocTags).map((l) => ` ${l}`), ` [key: ${SdkDtoGenerator.decode(config)(importer)(p.key)}]: ${SdkDtoGenerator.decode(config)(importer)(p.value)};`);
135
- row.push("}");
136
- brackets.push(row);
137
- }
138
- return top + brackets.map((row) => row.join("\n")).join(" & ");
139
- };
140
- const writeComment = (atomics) => (description, jsDocTags) => {
141
- const lines = [];
142
- if (description === null || description === void 0 ? void 0 : description.length)
143
- lines.push(...description.split("\n").map((s) => `${s}`));
144
- const filtered = !!atomics.length && !!(jsDocTags === null || jsDocTags === void 0 ? void 0 : jsDocTags.length)
145
- ? jsDocTags.filter((tag) => !atomics.some((a) => a.tags.some((r) => r.some((t) => t.kind === tag.name))))
146
- : jsDocTags !== null && jsDocTags !== void 0 ? jsDocTags : [];
147
- if ((description === null || description === void 0 ? void 0 : description.length) && filtered.length)
148
- lines.push("");
149
- if (filtered.length)
150
- lines.push(...filtered.map((t) => {
151
- var _a;
152
- return ((_a = t.text) === null || _a === void 0 ? void 0 : _a.length)
153
- ? `@${t.name} ${t.text.map((e) => e.text).join("")}`
154
- : `@${t.name}`;
155
- }));
156
- if (lines.length === 0)
157
- return [];
158
- return ["/**", ...lines.map((s) => ` * ${s}`), " */"];
159
- };
160
- SdkDtoGenerator.decode = (config) => (importer) => (meta, parentEscaped = false) => {
161
- const union = [];
162
- // COALESCES
163
- if (meta.any)
164
- union.push("any");
165
- if (meta.nullable)
166
- union.push("null");
167
- if (meta.isRequired() === false)
168
- union.push("undefined");
169
- if (parentEscaped === false && meta.escaped)
170
- union.push(decodeEscaped(config)(importer)(meta.escaped));
171
- // ATOMICS
172
- for (const atomic of meta.atomics)
173
- union.push(decodeAtomic(importer)(atomic));
174
- for (const constant of meta.constants)
175
- union.push(decodeConstant(constant));
176
- for (const tpl of meta.templates)
177
- union.push(decodeTemplate(config)(importer)(tpl));
178
- // ARRAYS
179
- for (const array of meta.arrays)
180
- union.push(decodeArray(config)(importer)(array));
181
- for (const tuple of meta.tuples)
182
- union.push(decodeTuple(config)(importer)(tuple));
183
- // OBJECTS
184
- for (const obj of meta.objects)
185
- union.push(decodeObject(config)(importer)(obj));
186
- for (const alias of meta.aliases)
187
- union.push(decodeAlias(config)(importer)(alias));
188
- // NATIVES
189
- for (const native of meta.natives)
190
- union.push(native);
191
- for (const set of meta.sets)
192
- union.push(`Set<${SdkDtoGenerator.decode(config)(importer)(set)}>`);
193
- for (const map of meta.maps)
194
- union.push(`Map<${SdkDtoGenerator.decode(config)(importer)(map.key)}, ${SdkDtoGenerator.decode(config)(importer)(map.value)}>`);
195
- return union.join(" | ");
196
- };
197
- const decodeEscaped = (config) => (importer) => (escaped) => {
198
- if (escaped.original.size() === 1 &&
199
- escaped.original.natives.length === 1 &&
200
- escaped.original.natives[0] === "Date")
201
- return `(string & ${importer.external({
202
- type: true,
203
- library: `typia/lib/tags/Format`,
204
- instance: "Format",
205
- })}<"date-time">)`;
206
- return `(${SdkDtoGenerator.decode(config)(importer)(escaped.returns, true)})`;
207
- };
208
- const decodeTypeTag = (importer) => (tag) => {
209
- const front = tag.name.split("<")[0];
210
- if (NATIVE_TYPE_TAGS.has(front)) {
211
- importer.external({
212
- type: true,
213
- library: `typia/lib/tags/${front}`,
214
- instance: front,
215
- });
216
- return tag.name;
217
- }
218
- importer.external({
219
- type: true,
220
- library: `typia/lib/tags/TagBase`,
221
- instance: "TagBase",
222
- });
223
- return `TagBase<${JSON.stringify(tag)}>`;
224
- };
225
- const decodeTypeTagMatrix = (importer) => (base, tags) => {
226
- if (tags.length === 0)
227
- return base;
228
- else if (tags.length === 1)
229
- return `(${base} & ${tags[0]
230
- .map((t) => decodeTypeTag(importer)(t))
231
- .join(" & ")})`;
232
- return ("(" +
233
- [
234
- base,
235
- ...tags.map((row) => `(${row.map((t) => decodeTypeTag(importer)(t)).join(" & ")})`),
236
- ] +
237
- ")");
238
- };
239
- const decodeAtomic = (importer) => (atomic) => decodeTypeTagMatrix(importer)(atomic.type, atomic.tags);
240
- const decodeTemplate = (config) => (importer) => (template) => "`" +
241
- template
242
- .map((meta) => meta.size() === 1 &&
243
- meta.isRequired() &&
244
- meta.nullable === false &&
245
- meta.constants.length === 1
246
- ? String(meta.constants[0].values[0]).split("`").join("\\`")
247
- : `\${${SdkDtoGenerator.decode(config)(importer)(meta)}}`)
248
- .join("") +
249
- "`";
250
- const decodeConstant = (constant) => {
251
- if (constant.values.length === 0)
252
- return JSON.stringify(constant.values[0]);
253
- return `(${constant.values.map((val) => JSON.stringify(val)).join(" | ")})`;
254
- };
255
- const decodeArray = (config) => (importer) => (array) => decodeTypeTagMatrix(importer)(`Array<${SdkDtoGenerator.decode(config)(importer)(array.type.value)}>`, array.tags);
256
- const decodeTuple = (config) => (importer) => (tuple) => "[" +
257
- tuple.type.elements.map((e) => e.rest
258
- ? `...${SdkDtoGenerator.decode(config)(importer)(e.rest)}[]`
259
- : SdkDtoGenerator.decode(config)(importer)(e)) +
260
- "]";
261
- const decodeAlias = (config) => (importer) => (alias) => {
262
- importInternalFile(config)(importer)(alias.name);
263
- return alias.name;
264
- };
265
- const decodeObject = (config) => (importer) => (object) => {
266
- importInternalFile(config)(importer)(object.name);
267
- return object.name;
268
- };
269
- const importInternalFile = (config) => (importer) => (name) => {
270
- const top = name.split(".")[0];
271
- if (importer.file === `${config.output}/structures/${top}.ts`)
272
- return;
273
- importer.internal({
274
- type: true,
275
- file: `${config.output}/structures/${name.split(".")[0]}`,
276
- instance: top,
277
- });
278
- };
279
- })(SdkDtoGenerator || (exports.SdkDtoGenerator = SdkDtoGenerator = {}));
280
- const NATIVE_TYPE_TAGS = new Set([
281
- "ExclusiveMinimum",
282
- "ExclusiveMaximum",
283
- "Format",
284
- "Maximum",
285
- "MaxItems",
286
- "MaxLength",
287
- "Minimum",
288
- "MinItems",
289
- "MinLength",
290
- "MultipleOf",
291
- "Pattern",
292
- "Type",
293
- ]);
294
- //# sourceMappingURL=SdkDtoGenerator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SdkDtoGenerator.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkDtoGenerator.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { INestiaConfig } from "../../INestiaConfig";
2
- import { IRoute } from "../../structures/IRoute";
3
- import { ImportDictionary } from "../../utils/ImportDictionary";
4
- export declare namespace SdkTypeDefiner {
5
- const name: (config: INestiaConfig) => (importer: ImportDictionary) => (p: IRoute.IParameter | IRoute.IOutput) => string;
6
- const headers: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => string;
7
- const query: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => string;
8
- const input: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => string;
9
- const output: (config: INestiaConfig) => (importer: ImportDictionary) => (route: IRoute) => string;
10
- const responseBody: (config: INestiaConfig) => (importer: ImportDictionary) => (route: IRoute) => string;
11
- }