@nestia/sdk 2.5.0-dev.20240129 → 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 (60) 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 +12 -16
  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 +5 -5
  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 +19 -18
  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 +2 -2
  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/FormatUtil.js +3 -1
  38. package/lib/utils/FormatUtil.js.map +1 -1
  39. package/package.json +3 -3
  40. package/src/NestiaSdkApplication.ts +1 -1
  41. package/src/generates/CloneGenerator.ts +75 -0
  42. package/src/generates/E2eGenerator.ts +3 -1
  43. package/src/generates/SdkGenerator.ts +3 -3
  44. package/src/generates/internal/E2eFileProgrammer.ts +12 -19
  45. package/src/generates/internal/SdkAliasCollection.ts +145 -0
  46. package/src/generates/internal/SdkFileProgrammer.ts +5 -3
  47. package/src/generates/internal/SdkFunctionProgrammer.ts +9 -9
  48. package/src/generates/internal/SdkInterfaceProgrammer.ts +211 -0
  49. package/src/generates/internal/SdkNamespaceProgrammer.ts +31 -19
  50. package/src/generates/internal/SdkRouteProgrammer.ts +5 -1
  51. package/src/generates/internal/SdkSimulationProgrammer.ts +14 -16
  52. package/src/generates/internal/SdkTypeProgrammer.ts +252 -0
  53. package/src/utils/FormatUtil.ts +2 -1
  54. package/lib/generates/internal/SdkDtoGenerator.js +0 -295
  55. package/lib/generates/internal/SdkDtoGenerator.js.map +0 -1
  56. package/lib/generates/internal/SdkTypeDefiner.d.ts +0 -11
  57. package/lib/generates/internal/SdkTypeDefiner.js +0 -82
  58. package/lib/generates/internal/SdkTypeDefiner.js.map +0 -1
  59. package/src/generates/internal/SdkDtoGenerator.ts +0 -429
  60. 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
+ };
@@ -6,6 +6,7 @@ export namespace FormatUtil {
6
6
  node: Node,
7
7
  comment: string,
8
8
  ): Node => {
9
+ if (comment.length === 0) return node;
9
10
  ts.addSyntheticLeadingComment(
10
11
  node,
11
12
  ts.SyntaxKind.MultiLineCommentTrivia,
@@ -20,7 +21,7 @@ export namespace FormatUtil {
20
21
 
21
22
  export const beautify = async (script: string): Promise<string> => {
22
23
  try {
23
- return format(script, {
24
+ return await format(script, {
24
25
  parser: "typescript",
25
26
  });
26
27
  } catch {
@@ -1,295 +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 FormatUtil_1 = require("../../utils/FormatUtil");
21
- const ImportDictionary_1 = require("../../utils/ImportDictionary");
22
- const MapUtil_1 = require("../../utils/MapUtil");
23
- var SdkDtoGenerator;
24
- (function (SdkDtoGenerator) {
25
- SdkDtoGenerator.generate = (checker) => (config) => (routes) => __awaiter(this, void 0, void 0, function* () {
26
- try {
27
- yield fs_1.default.promises.mkdir(`${config.output}/structures`);
28
- }
29
- catch (_a) { }
30
- const collection = new MetadataCollection_1.MetadataCollection({
31
- replace: MetadataCollection_1.MetadataCollection.replace,
32
- });
33
- for (const r of routes) {
34
- for (const p of r.parameters) {
35
- const res = MetadataFactory_1.MetadataFactory.analyze(checker)({
36
- escape: false,
37
- constant: true,
38
- absorb: false,
39
- })(collection)(p.type);
40
- if (res.success)
41
- p.metadata = res.data;
42
- }
43
- for (const e of Object.values(r.exceptions)) {
44
- const res = MetadataFactory_1.MetadataFactory.analyze(checker)({
45
- escape: true,
46
- constant: true,
47
- absorb: false,
48
- })(collection)(e.type);
49
- if (res.success)
50
- e.metadata = res.data;
51
- }
52
- const res = MetadataFactory_1.MetadataFactory.analyze(checker)({
53
- escape: true,
54
- constant: true,
55
- absorb: false,
56
- })(collection)(r.output.type);
57
- if (res.success)
58
- r.output.metadata = res.data;
59
- }
60
- const modules = new Map();
61
- for (const alias of collection.aliases())
62
- prepare(modules)(alias.name)((importer) => defineAlias(config)(importer)(alias));
63
- for (const object of collection.objects())
64
- prepare(modules)(object.name)((importer) => defineObject(config)(importer)(object));
65
- for (const module of modules.values())
66
- yield generateFile(config)(module);
67
- });
68
- const prepare = (dict) => (name) => (programmer) => {
69
- const accessors = name.split(".");
70
- let module;
71
- accessors.forEach((acc, i) => {
72
- module = MapUtil_1.MapUtil.take(dict, acc, () => ({
73
- name: accessors.slice(0, i + 1).join("."),
74
- children: new Map(),
75
- }));
76
- if (i === accessors.length - 1)
77
- module.programmer = programmer;
78
- dict = module.children;
79
- });
80
- return module;
81
- };
82
- const generateFile = (config) => (module) => __awaiter(this, void 0, void 0, function* () {
83
- const importer = new ImportDictionary_1.ImportDictionary(`${config.output}/structures/${module.name}.ts`);
84
- const body = writeModule(importer)(module);
85
- const content = [];
86
- if (!importer.empty())
87
- content.push(importer.toScript(`${config.output}/structures`), "");
88
- content.push(body);
89
- yield fs_1.default.promises.writeFile(importer.file, yield FormatUtil_1.FormatUtil.beautify(content.join("\n")), "utf8");
90
- });
91
- const writeModule = (importer) => (module) => {
92
- const content = [];
93
- if (module.programmer)
94
- content.push(module.programmer(importer));
95
- if (module.children.size) {
96
- content.push(`export namespace ${module.name.split(".").at(-1)} {`);
97
- for (const child of module.children.values())
98
- content.push(writeModule(importer)(child)
99
- .split("\n")
100
- .map((l) => ` ${l}`)
101
- .join("\n"));
102
- content.push("}");
103
- }
104
- return content.join("\n");
105
- };
106
- const defineAlias = (config) => (importer) => (alias) => [
107
- ...writeComment(alias.value.atomics)(alias.description, alias.jsDocTags),
108
- `export type ${alias.name.split(".").at(-1)} = ${SdkDtoGenerator.decode(config)(importer)(alias.value)};`,
109
- ].join("\n");
110
- const defineObject = (config) => (importer) => (object) => {
111
- var _a;
112
- const top = [
113
- ...writeComment([])((_a = object.description) !== null && _a !== void 0 ? _a : null, object.jsDocTags),
114
- `export type ${object.name.split(".").at(-1)} = `,
115
- ].join("\n");
116
- if (object.properties.length === 0)
117
- return top + "{};";
118
- const regular = object.properties.filter((p) => p.key.isSoleLiteral());
119
- const dynamic = object.properties.filter((p) => !p.key.isSoleLiteral());
120
- const brackets = [];
121
- if (regular.length) {
122
- const row = ["{"];
123
- for (const p of regular) {
124
- const key = p.key.constants[0].values[0];
125
- const identifier = Escaper_1.Escaper.variable(key)
126
- ? key
127
- : JSON.stringify(key);
128
- row.push(...writeComment(p.value.atomics)(p.description, p.jsDocTags).map((l) => ` ${l}`), ` ${identifier}${p.value.isRequired() === false ? "?" : ""}: ${SdkDtoGenerator.decode(config)(importer)(p.value)};`);
129
- }
130
- row.push("}");
131
- brackets.push(row);
132
- }
133
- for (const p of dynamic) {
134
- const row = ["{"];
135
- 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)};`);
136
- row.push("}");
137
- brackets.push(row);
138
- }
139
- return top + brackets.map((row) => row.join("\n")).join(" & ");
140
- };
141
- const writeComment = (atomics) => (description, jsDocTags) => {
142
- const lines = [];
143
- if (description === null || description === void 0 ? void 0 : description.length)
144
- lines.push(...description.split("\n").map((s) => `${s}`));
145
- const filtered = !!atomics.length && !!(jsDocTags === null || jsDocTags === void 0 ? void 0 : jsDocTags.length)
146
- ? jsDocTags.filter((tag) => !atomics.some((a) => a.tags.some((r) => r.some((t) => t.kind === tag.name))))
147
- : jsDocTags !== null && jsDocTags !== void 0 ? jsDocTags : [];
148
- if ((description === null || description === void 0 ? void 0 : description.length) && filtered.length)
149
- lines.push("");
150
- if (filtered.length)
151
- lines.push(...filtered.map((t) => {
152
- var _a;
153
- return ((_a = t.text) === null || _a === void 0 ? void 0 : _a.length)
154
- ? `@${t.name} ${t.text.map((e) => e.text).join("")}`
155
- : `@${t.name}`;
156
- }));
157
- if (lines.length === 0)
158
- return [];
159
- return ["/**", ...lines.map((s) => ` * ${s}`), " */"];
160
- };
161
- SdkDtoGenerator.decode = (config) => (importer) => (meta, parentEscaped = false) => {
162
- const union = [];
163
- // COALESCES
164
- if (meta.any)
165
- union.push("any");
166
- if (meta.nullable)
167
- union.push("null");
168
- if (meta.isRequired() === false)
169
- union.push("undefined");
170
- if (parentEscaped === false && meta.escaped)
171
- union.push(decodeEscaped(config)(importer)(meta.escaped));
172
- // ATOMICS
173
- for (const atomic of meta.atomics)
174
- union.push(decodeAtomic(importer)(atomic));
175
- for (const constant of meta.constants)
176
- union.push(decodeConstant(constant));
177
- for (const tpl of meta.templates)
178
- union.push(decodeTemplate(config)(importer)(tpl));
179
- // ARRAYS
180
- for (const array of meta.arrays)
181
- union.push(decodeArray(config)(importer)(array));
182
- for (const tuple of meta.tuples)
183
- union.push(decodeTuple(config)(importer)(tuple));
184
- // OBJECTS
185
- for (const obj of meta.objects)
186
- union.push(decodeObject(config)(importer)(obj));
187
- for (const alias of meta.aliases)
188
- union.push(decodeAlias(config)(importer)(alias));
189
- // NATIVES
190
- for (const native of meta.natives)
191
- union.push(native);
192
- for (const set of meta.sets)
193
- union.push(`Set<${SdkDtoGenerator.decode(config)(importer)(set)}>`);
194
- for (const map of meta.maps)
195
- union.push(`Map<${SdkDtoGenerator.decode(config)(importer)(map.key)}, ${SdkDtoGenerator.decode(config)(importer)(map.value)}>`);
196
- return union.join(" | ");
197
- };
198
- const decodeEscaped = (config) => (importer) => (escaped) => {
199
- if (escaped.original.size() === 1 &&
200
- escaped.original.natives.length === 1 &&
201
- escaped.original.natives[0] === "Date")
202
- return `(string & ${importer.external({
203
- type: true,
204
- library: `typia/lib/tags/Format`,
205
- instance: "Format",
206
- })}<"date-time">)`;
207
- return `(${SdkDtoGenerator.decode(config)(importer)(escaped.returns, true)})`;
208
- };
209
- const decodeTypeTag = (importer) => (tag) => {
210
- const front = tag.name.split("<")[0];
211
- if (NATIVE_TYPE_TAGS.has(front)) {
212
- importer.external({
213
- type: true,
214
- library: `typia/lib/tags/${front}`,
215
- instance: front,
216
- });
217
- return tag.name;
218
- }
219
- importer.external({
220
- type: true,
221
- library: `typia/lib/tags/TagBase`,
222
- instance: "TagBase",
223
- });
224
- return `TagBase<${JSON.stringify(tag)}>`;
225
- };
226
- const decodeTypeTagMatrix = (importer) => (base, tags) => {
227
- if (tags.length === 0)
228
- return base;
229
- else if (tags.length === 1)
230
- return `(${base} & ${tags[0]
231
- .map((t) => decodeTypeTag(importer)(t))
232
- .join(" & ")})`;
233
- return ("(" +
234
- [
235
- base,
236
- ...tags.map((row) => `(${row.map((t) => decodeTypeTag(importer)(t)).join(" & ")})`),
237
- ] +
238
- ")");
239
- };
240
- const decodeAtomic = (importer) => (atomic) => decodeTypeTagMatrix(importer)(atomic.type, atomic.tags);
241
- const decodeTemplate = (config) => (importer) => (template) => "`" +
242
- template
243
- .map((meta) => meta.size() === 1 &&
244
- meta.isRequired() &&
245
- meta.nullable === false &&
246
- meta.constants.length === 1
247
- ? String(meta.constants[0].values[0]).split("`").join("\\`")
248
- : `\${${SdkDtoGenerator.decode(config)(importer)(meta)}}`)
249
- .join("") +
250
- "`";
251
- const decodeConstant = (constant) => {
252
- if (constant.values.length === 0)
253
- return JSON.stringify(constant.values[0]);
254
- return `(${constant.values.map((val) => JSON.stringify(val)).join(" | ")})`;
255
- };
256
- const decodeArray = (config) => (importer) => (array) => decodeTypeTagMatrix(importer)(`Array<${SdkDtoGenerator.decode(config)(importer)(array.type.value)}>`, array.tags);
257
- const decodeTuple = (config) => (importer) => (tuple) => "[" +
258
- tuple.type.elements.map((e) => e.rest
259
- ? `...${SdkDtoGenerator.decode(config)(importer)(e.rest)}[]`
260
- : SdkDtoGenerator.decode(config)(importer)(e)) +
261
- "]";
262
- const decodeAlias = (config) => (importer) => (alias) => {
263
- importInternalFile(config)(importer)(alias.name);
264
- return alias.name;
265
- };
266
- const decodeObject = (config) => (importer) => (object) => {
267
- importInternalFile(config)(importer)(object.name);
268
- return object.name;
269
- };
270
- const importInternalFile = (config) => (importer) => (name) => {
271
- const top = name.split(".")[0];
272
- if (importer.file === `${config.output}/structures/${top}.ts`)
273
- return;
274
- importer.internal({
275
- type: true,
276
- file: `${config.output}/structures/${name.split(".")[0]}`,
277
- instance: top,
278
- });
279
- };
280
- })(SdkDtoGenerator || (exports.SdkDtoGenerator = SdkDtoGenerator = {}));
281
- const NATIVE_TYPE_TAGS = new Set([
282
- "ExclusiveMinimum",
283
- "ExclusiveMaximum",
284
- "Format",
285
- "Maximum",
286
- "MaxItems",
287
- "MaxLength",
288
- "Minimum",
289
- "MinItems",
290
- "MinLength",
291
- "MultipleOf",
292
- "Pattern",
293
- "Type",
294
- ]);
295
- //# sourceMappingURL=SdkDtoGenerator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SdkDtoGenerator.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkDtoGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AAEpB,+EAA4E;AAC5E,yEAAsE;AAYtE,qDAAkD;AAIlD,uDAAoD;AACpD,mEAAgE;AAChE,iDAA8C;AAE9C,IAAiB,eAAe,CAgY/B;AAhYD,WAAiB,eAAe;IACjB,wBAAQ,GACnB,CAAC,OAAuB,EAAE,EAAE,CAC5B,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,MAAgB,EAAiB,EAAE;QACxC,IAAI,CAAC;YACH,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,aAAa,CAAC,CAAC;QACzD,CAAC;QAAC,WAAM,CAAC,CAAA,CAAC;QAEV,MAAM,UAAU,GAAG,IAAI,uCAAkB,CAAC;YACxC,OAAO,EAAE,uCAAkB,CAAC,OAAO;SACpC,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,iCAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC3C,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,KAAK;iBACd,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,GAAG,CAAC,OAAO;oBAAE,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;YACzC,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,MAAM,GAAG,GAAG,iCAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC3C,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,KAAK;iBACd,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,GAAG,CAAC,OAAO;oBAAE,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;YACzC,CAAC;YACD,MAAM,GAAG,GAAG,iCAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC3C,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,KAAK;aACd,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,IAAI,GAAG,CAAC,OAAO;gBAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;QAChD,CAAC;QAED,MAAM,OAAO,GAAyB,IAAI,GAAG,EAAE,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,OAAO,EAAE;YACtC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CACxC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CACrC,CAAC;QACJ,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE;YACvC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CACzC,YAAY,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CACvC,CAAC;QAEJ,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE;YAAE,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,CAAC,CAAA,CAAC;IAEJ,MAAM,OAAO,GACX,CAAC,IAA0B,EAAE,EAAE,CAC/B,CAAC,IAAY,EAAE,EAAE,CACjB,CAAC,UAAkD,EAAE,EAAE;QACrD,MAAM,SAAS,GAAa,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,MAAe,CAAC;QAEpB,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,GAAG,iBAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;gBACtC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;gBACzC,QAAQ,EAAE,IAAI,GAAG,EAAE;aACpB,CAAC,CAAC,CAAC;YACJ,IAAI,CAAC,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;YAC/D,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,OAAO,MAAO,CAAC;IACjB,CAAC,CAAC;IAEJ,MAAM,YAAY,GAChB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,MAAe,EAAiB,EAAE;QACvC,MAAM,QAAQ,GAAqB,IAAI,mCAAgB,CACrD,GAAG,MAAM,CAAC,MAAM,eAAe,MAAM,CAAC,IAAI,KAAK,CAChD,CAAC;QAEF,MAAM,IAAI,GAAW,WAAW,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YACnB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnB,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACzB,QAAQ,CAAC,IAAI,EACb,MAAM,uBAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAC7C,MAAM,CACP,CAAC;IACJ,CAAC,CAAA,CAAC;IAEJ,MAAM,WAAW,GACf,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,MAAe,EAAU,EAAE;QAC1B,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACpE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;gBAC1C,OAAO,CAAC,IAAI,CACV,WAAW,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;qBACzB,KAAK,CAAC,IAAI,CAAC;qBACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;qBACtB,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;QACD,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEJ,MAAM,WAAW,GACf,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAoB,EAAE,EAAE,CACvB;QACE,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAClC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,SAAS,CAChB;QACD,eAAe,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,gBAAA,MAAM,CAAC,MAAM,CAAC,CAC7D,QAAQ,CACT,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG;KAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,YAAY,GAChB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,MAAsB,EAAE,EAAE;;QACzB,MAAM,GAAG,GAAW;YAClB,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,MAAA,MAAM,CAAC,WAAW,mCAAI,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC;YACjE,eAAe,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK;SAClD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,GAAG,KAAK,CAAC;QAEvD,MAAM,OAAO,GAAuB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACjE,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,CACtB,CAAC;QACF,MAAM,OAAO,GAAuB,MAAM,CAAC,UAAU,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,CAC9B,CAAC;QAEF,MAAM,QAAQ,GAAe,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,GAAG,GAAa,CAAC,GAAG,CAAC,CAAC;YAC5B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,MAAM,GAAG,GAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAW,CAAC;gBAC3D,MAAM,UAAU,GAAW,iBAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAC9C,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACxB,GAAG,CAAC,IAAI,CACN,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAClB,EACD,OAAO,UAAU,GACf,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EACzC,KAAK,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAC1C,CAAC;YACJ,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,GAAa,CAAC,GAAG,CAAC,CAAC;YAC5B,GAAG,CAAC,IAAI,CACN,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAClB,EACD,aAAa,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,gBAAA,MAAM,CAAC,MAAM,CAAC,CAC9D,QAAQ,CACT,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CACd,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC,CAAC;IAEJ,MAAM,YAAY,GAChB,CAAC,OAAyB,EAAE,EAAE,CAC9B,CAAC,WAA0B,EAAE,SAA0B,EAAY,EAAE;QACnE,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM;YACrB,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5D,MAAM,QAAQ,GACZ,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA;YACrC,CAAC,CAAC,SAAS,CAAC,MAAM,CACd,CAAC,GAAG,EAAE,EAAE,CACN,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAClB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CACvD,CACJ;YACH,CAAC,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAC;QAEtB,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,KAAI,QAAQ,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3D,IAAI,QAAQ,CAAC,MAAM;YACjB,KAAK,CAAC,IAAI,CACR,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;gBACpB,OAAA,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,MAAM;oBACZ,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;oBACpD,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;aAAA,CACjB,CACF,CAAC;QACJ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC;IAES,sBAAM,GACjB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,IAAc,EAAE,gBAAyB,KAAK,EAAU,EAAE;QACzD,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,YAAY;QACZ,IAAI,IAAI,CAAC,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,aAAa,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO;YACzC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5D,UAAU;QACV,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO;YAC/B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7C,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YACnC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS;YAC9B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAEpD,SAAS;QACT,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;YAC7B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;YAC7B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnD,UAAU;QACV,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO;YAC5B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO;YAC9B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnD,UAAU;QACV,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI;YACzB,KAAK,CAAC,IAAI,CAAC,OAAO,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI;YACzB,KAAK,CAAC,IAAI,CACR,OAAO,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CACnE,GAAG,CAAC,KAAK,CACV,GAAG,CACL,CAAC;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEJ,MAAM,aAAa,GACjB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,OAAwB,EAAE,EAAE;QAC3B,IACE,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;YAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM;YAEtC,OAAO,aAAa,QAAQ,CAAC,QAAQ,CAAC;gBACpC,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,uBAAuB;gBAChC,QAAQ,EAAE,QAAQ;aACnB,CAAC,gBAAgB,CAAC;QACrB,OAAO,IAAI,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC;IAChE,CAAC,CAAC;IAEJ,MAAM,aAAa,GACjB,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,GAAqB,EAAU,EAAE;QAChC,MAAM,KAAK,GAAW,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,QAAQ,CAAC,QAAQ,CAAC;gBAChB,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,kBAAkB,KAAK,EAAE;gBAClC,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;QACD,QAAQ,CAAC,QAAQ,CAAC;YAChB,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;QACH,OAAO,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;IAC3C,CAAC,CAAC;IAEJ,MAAM,mBAAmB,GACvB,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,IAAY,EAAE,IAA0B,EAAU,EAAE;QACnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;aAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YACxB,OAAO,IAAI,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;iBACtC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QACpB,OAAO,CACL,GAAG;YACH;gBACE,IAAI;gBACJ,GAAG,IAAI,CAAC,GAAG,CACT,CAAC,GAAG,EAAE,EAAE,CACN,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAChE;aACF;YACD,GAAG,CACJ,CAAC;IACJ,CAAC,CAAC;IAEJ,MAAM,YAAY,GAChB,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,MAAsB,EAAU,EAAE,CACjC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAE5D,MAAM,cAAc,GAClB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,QAAoB,EAAU,EAAE,CAC/B,GAAG;QACH,QAAQ;aACL,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;YACjB,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,QAAQ,KAAK,KAAK;YACvB,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YACzB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5D,CAAC,CAAC,MAAM,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAC5C;aACA,IAAI,CAAC,EAAE,CAAC;QACX,GAAG,CAAC;IAER,MAAM,cAAc,GAAG,CAAC,QAA0B,EAAU,EAAE;QAC5D,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC9E,CAAC,CAAC;IAEF,MAAM,WAAW,GACf,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAoB,EAAU,EAAE,CAC/B,mBAAmB,CAAC,QAAQ,CAAC,CAC3B,SAAS,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EACtD,KAAK,CAAC,IAAI,CACX,CAAC;IAEN,MAAM,WAAW,GACf,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAoB,EAAU,EAAE,CAC/B,GAAG;QACH,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5B,CAAC,CAAC,IAAI;YACJ,CAAC,CAAC,MAAM,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YAC5C,CAAC,CAAC,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAChC;QACD,GAAG,CAAC;IAER,MAAM,WAAW,GACf,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAoB,EAAE,EAAE;QACvB,kBAAkB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC,IAAI,CAAC;IACpB,CAAC,CAAC;IAEJ,MAAM,YAAY,GAChB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,MAAsB,EAAE,EAAE;QACzB,kBAAkB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC,CAAC;IAEJ,MAAM,kBAAkB,GACtB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,IAAY,EAAE,EAAE;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK;YAAE,OAAO;QACtE,QAAQ,CAAC,QAAQ,CAAC;YAChB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,eAAe,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YACzD,QAAQ,EAAE,GAAG;SACd,CAAC,CAAC;IACL,CAAC,CAAC;AACN,CAAC,EAhYgB,eAAe,+BAAf,eAAe,QAgY/B;AAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,kBAAkB;IAClB,kBAAkB;IAClB,QAAQ;IACR,SAAS;IACT,UAAU;IACV,WAAW;IACX,SAAS;IACT,UAAU;IACV,WAAW;IACX,YAAY;IACZ,SAAS;IACT,MAAM;CACP,CAAC,CAAC"}
@@ -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
- }