@nestia/sdk 1.3.3 → 1.3.4
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.
- package/lib/generates/internal/SdkFileProgrammer.js +4 -4
- package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkFunctionProgrammer.js +27 -15
- package/lib/generates/internal/SdkFunctionProgrammer.js.map +1 -1
- package/package.json +3 -1
- package/src/generates/internal/SdkFileProgrammer.ts +6 -4
- package/src/generates/internal/SdkFunctionProgrammer.ts +30 -15
|
@@ -97,12 +97,12 @@ var SdkFileProgrammer;
|
|
|
97
97
|
route.method === "PATCH");
|
|
98
98
|
const random = config.random === true &&
|
|
99
99
|
directory.routes.some((s) => s.output.name !== "void");
|
|
100
|
-
const
|
|
100
|
+
const typings = ["IConnection"];
|
|
101
101
|
if (primitived)
|
|
102
|
-
|
|
102
|
+
typings.push("Primitive");
|
|
103
103
|
const head = [
|
|
104
|
-
`import {
|
|
105
|
-
`import type {
|
|
104
|
+
`import { Fetcher } from "@nestia/fetcher";`,
|
|
105
|
+
`import type { ${typings.join(", ")} } from "@nestia/fetcher";`,
|
|
106
106
|
];
|
|
107
107
|
if (asserted || json || random)
|
|
108
108
|
head.push(`import typia from "typia";`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFileProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AAIpB,mEAAgE;AAChE,mEAAgE;AAChE,2DAAwD;AAExD,IAAiB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"SdkFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFileProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,19 +40,26 @@ var SdkFunctionProgrammer;
|
|
|
40
40
|
const caller = (awa) => {
|
|
41
41
|
const random = () => route.output.name === "void"
|
|
42
42
|
? "undefined"
|
|
43
|
-
:
|
|
43
|
+
: [
|
|
44
|
+
`${route.name}.random(`,
|
|
45
|
+
`${space(14)}typeof connection.random === "object" &&`,
|
|
46
|
+
`${space(18)}connection.random !== null`,
|
|
47
|
+
`${space(18)}? connection.random`,
|
|
48
|
+
`${space(18)}: undefined`,
|
|
49
|
+
`${space(10)})`,
|
|
50
|
+
].join("\n");
|
|
44
51
|
const fetch = (tab) => [
|
|
45
|
-
`${awa ? "await " : ""}
|
|
52
|
+
`${awa ? "await " : ""}Fetcher.fetch(`,
|
|
46
53
|
fetchArguments
|
|
47
|
-
.map((param) => `${tab} ${param}
|
|
48
|
-
.join("
|
|
54
|
+
.map((param) => `${tab} ${param},`)
|
|
55
|
+
.join("\n"),
|
|
49
56
|
`${tab})`,
|
|
50
57
|
].join("\n");
|
|
51
58
|
if (!config.random)
|
|
52
|
-
return fetch(
|
|
53
|
-
return (
|
|
59
|
+
return fetch(space(4));
|
|
60
|
+
return (`!!connection.random\n` +
|
|
54
61
|
` ? ${random()}\n` +
|
|
55
|
-
` : ${fetch(
|
|
62
|
+
` : ${fetch(space(10))}`);
|
|
56
63
|
};
|
|
57
64
|
if (route.setHeaders.length === 0)
|
|
58
65
|
return `{\n${assertions} return ${caller(false)};\n}`;
|
|
@@ -119,9 +126,9 @@ var SdkFunctionProgrammer;
|
|
|
119
126
|
comments.map((str) => ` * ${str}`).join("\n") +
|
|
120
127
|
"\n" +
|
|
121
128
|
" */\n" +
|
|
122
|
-
`export async function ${route.name}
|
|
123
|
-
|
|
124
|
-
`
|
|
129
|
+
`export async function ${route.name}(\n` +
|
|
130
|
+
parameters.map((str) => ` ${str},\n`).join("") +
|
|
131
|
+
`): Promise<${output}>`);
|
|
125
132
|
};
|
|
126
133
|
const tail = (config) => (route) => (props) => {
|
|
127
134
|
// LIST UP TYPES
|
|
@@ -158,11 +165,15 @@ var SdkFunctionProgrammer;
|
|
|
158
165
|
: "") +
|
|
159
166
|
` };\n` +
|
|
160
167
|
"\n" +
|
|
161
|
-
` export
|
|
168
|
+
` export const path = (${parameters
|
|
162
169
|
.map((param) => `${param.name}: ${param.type.name}`)
|
|
163
|
-
.join(", ")}): string {\n` +
|
|
170
|
+
.join(", ")}): string => {\n` +
|
|
164
171
|
`${path};\n` +
|
|
165
172
|
` }\n` +
|
|
173
|
+
(config.random && route.output.name !== "void"
|
|
174
|
+
? ` export const random = (g?: Partial<typia.IRandomGenerator>): Output =>\n` +
|
|
175
|
+
` typia.random<Output>(g);\n`
|
|
176
|
+
: "") +
|
|
166
177
|
(config.json === true &&
|
|
167
178
|
route.parameters.find((param) => param.category === "body") !==
|
|
168
179
|
undefined
|
|
@@ -177,7 +188,7 @@ var SdkFunctionProgrammer;
|
|
|
177
188
|
// NO QUERY PARAMETER
|
|
178
189
|
const queryParams = props.parameters.filter((param) => param.category === "query" && param.field !== undefined);
|
|
179
190
|
if (props.query === undefined && queryParams.length === 0)
|
|
180
|
-
return `${
|
|
191
|
+
return `${space(8)}return \`${props.path}\``;
|
|
181
192
|
const computeName = (str) => props.parameters.find((p) => p.name === str) !== undefined
|
|
182
193
|
? computeName("_" + str)
|
|
183
194
|
: str;
|
|
@@ -196,7 +207,7 @@ var SdkFunctionProgrammer;
|
|
|
196
207
|
`const ${encoded}: string = ${search}.toString();`,
|
|
197
208
|
`return \`${props.path}\${${encoded}.length ? \`?\${${encoded}}\` : ""}\`;`,
|
|
198
209
|
]
|
|
199
|
-
.map((str) => `${
|
|
210
|
+
.map((str) => `${space(8)}${str}`)
|
|
200
211
|
.join("\n");
|
|
201
212
|
if (props.query !== undefined && queryParams.length === 0)
|
|
202
213
|
return wrapper(`${props.query.name} as any`);
|
|
@@ -217,6 +228,7 @@ var SdkFunctionProgrammer;
|
|
|
217
228
|
: `${Escaper_1.Escaper.variable(param.field)
|
|
218
229
|
? param.field
|
|
219
230
|
: JSON.stringify(param.field)}: ${param.name}`)
|
|
220
|
-
.join(`,\n${
|
|
231
|
+
.join(`,\n${space(12)}`);
|
|
221
232
|
})(SdkFunctionProgrammer = exports.SdkFunctionProgrammer || (exports.SdkFunctionProgrammer = {}));
|
|
233
|
+
const space = (count) => " ".repeat(count);
|
|
222
234
|
//# sourceMappingURL=SdkFunctionProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFunctionProgrammer.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AAEzC,qDAAkD;AAKlD,IAAiB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"SdkFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFunctionProgrammer.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AAEzC,qDAAkD;AAKlD,IAAiB,qBAAqB,CAgVrC;AAhVD,WAAiB,qBAAqB;IACrB,8BAAQ,GACjB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,KAAa,EAAU,EAAE;QACtB,MAAM,KAAK,GAAkC,KAAK,CAAC,UAAU,CAAC,IAAI,CAC9D,CAAC,KAAK,EAAE,EAAE,CACN,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAC9D,CAAC;QACF,MAAM,KAAK,GAAkC,KAAK,CAAC,UAAU,CAAC,IAAI,CAC9D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,MAAM,CACvC,CAAC;QAEF,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACjD,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAC3C,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEN;;gEAE4D;IAC5D,MAAM,IAAI,GACN,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,KAAa,EAAE,EAAE,CAClB,CAAC,KAGA,EAAU,EAAE;;QACT,mCAAmC;QACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,cAAc,GAAa;YAC7B,YAAY;YACZ,GAAG,KAAK,CAAC,IAAI,YAAY;YACzB,GAAG,KAAK,CAAC,IAAI,SAAS;YACtB,GAAG,KAAK,CAAC,IAAI,SAAS,UAAU;iBAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iBAClB,IAAI,CAAC,IAAI,CAAC,GAAG;SACrB,CAAC;QACF,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE;YAC3B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;gBACpB,cAAc,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC;SACtD;QAED,MAAM,UAAU,GACZ,MAAM,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YACnD,CAAC,CAAC,KAAK,CAAC,UAAU;iBACX,GAAG,CACA,CAAC,KAAK,EAAE,EAAE,CACN,2BAA2B,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,CAC/D;iBACA,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM;YAC1B,CAAC,CAAC,EAAE,CAAC;QAEb,0BAA0B;QAC1B,MAAM,MAAM,GAAG,CAAC,GAAY,EAAE,EAAE;YAC5B,MAAM,MAAM,GAAG,GAAG,EAAE,CAChB,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;gBACxB,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC;oBACI,GAAG,KAAK,CAAC,IAAI,UAAU;oBACvB,GAAG,KAAK,CACJ,EAAE,CACL,0CAA0C;oBAC3C,GAAG,KAAK,CAAC,EAAE,CAAC,4BAA4B;oBACxC,GAAG,KAAK,CAAC,EAAE,CAAC,qBAAqB;oBACjC,GAAG,KAAK,CAAC,EAAE,CAAC,aAAa;oBACzB,GAAG,KAAK,CAAC,EAAE,CAAC,GAAG;iBAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,EAAE,CAC1B;gBACI,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,gBAAgB;gBACtC,cAAc;qBACT,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,OAAO,KAAK,GAAG,CAAC;qBACrC,IAAI,CAAC,IAAI,CAAC;gBACf,GAAG,GAAG,GAAG;aACZ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,OAAO,CACH,uBAAuB;gBACvB,aAAa,MAAM,EAAE,IAAI;gBACzB,aAAa,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAClC,CAAC;QACN,CAAC,CAAC;QACF,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAC7B,OAAO,MAAM,UAAU,cAAc,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAE7D,cAAc;QACd,MAAM,OAAO,GAAa;YACtB,KAAK;YACL,UAAU;YACV,qBAAqB,KAAK,CAAC,IAAI,aAAa,MAAM,CAAC,IAAI,CAAC,KAAK;YAC7D,IAAI;YACJ,8BAA8B;YAC9B,kCAAkC;SACrC,CAAC;QAEF,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,UAAU,EAAE;YACnC,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;gBAC1B,OAAO,CAAC,IAAI,CACR,MAAM,EACN,qCAAqC,MAAM,CAAC,QAAQ,CAAC,CACjD,MAAM,CAAC,MAAM,CAChB,MAAM,CACV,CAAC;;gBAEF,OAAO,CAAC,IAAI,CACR,MAAM,EACN,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAC3B,MAAA,MAAM,CAAC,MAAM,mCAAI,MAAM,CAAC,MAAM,CACjC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAC9C,CAAC;SACT;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;QAChD,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEN,MAAM,iBAAiB,GACnB,CAAC,KAAa,EAAE,EAAE,CAClB,CAAC,KAAoC,EAAuB,EAAE;QAC1D,MAAM,UAAU,GAAwB,KAAK,CAAC,UAAU,CAAC,MAAM,CAC3D,CAAC,KAAK,EAAE,EAAE,CACN,KAAK,CAAC,QAAQ,KAAK,OAAO;YAC1B,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAChE,CAAC;QACF,IAAI,KAAK;YAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,UAAU,CAAC;IACtB,CAAC,CAAC;IAEN,MAAM,MAAM,GACR,CAAC,CAAS,EAAE,EAAE,CACd,CAAC,CAAS,EAAU,EAAE,CAClB,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;IAEhD;;gEAE4D;IAC5D,MAAM,IAAI,GACN,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,KAAa,EAAE,EAAE,CAClB,CAAC,KAGA,EAAU,EAAE;QACT,MAAM;QACN,oBAAoB;QACpB,MAAM;QACN,mBAAmB;QACnB,MAAM,QAAQ,GAAa,KAAK,CAAC,WAAW;YACxC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;YAC/B,CAAC,CAAC,EAAE,CAAC;QAET,uBAAuB;QACvB,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzC,QAAQ,CAAC,IAAI,CACT,eAAe,KAAK,CAAC,MAAM,EAAE,EAC7B,SAAS,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,EACrC,iEAAiE,CACpE,CAAC;QAEF,MAAM;QACN,eAAe;QACf,MAAM;QACN,yBAAyB;QACzB,MAAM,UAAU,GAAa;YACzB,yBAAyB;YACzB,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC9B,MAAM,IAAI,GACN,MAAM,CAAC,SAAS,KAAK,KAAK;oBAC1B,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC;oBAC5C,CAAC,CAAC,aAAa,KAAK,CAAC,IAAI,IACnB,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OACtC,GAAG;oBACL,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1B,OAAO,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YAChE,CAAC,CAAC;SACL,CAAC;QAEF,cAAc;QACd,MAAM,MAAM,GACR,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,SAAS,CAAC;QAEnE,4BAA4B;QAC5B,OAAO,CACH,EAAE;YACF,OAAO;YACP,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7C,IAAI;YACJ,OAAO;YACP,yBAAyB,KAAK,CAAC,IAAI,KAAK;YACxC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACjD,cAAc,MAAM,GAAG,CAC1B,CAAC;IACN,CAAC,CAAC;IAEN,MAAM,IAAI,GACN,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,KAAa,EAAE,EAAE,CAClB,CAAC,KAGA,EAAU,EAAE;QACT,gBAAgB;QAChB,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YACzB,KAAK,CAAC,IAAI,CAAC,IAAI,WAAI,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YACzB,KAAK,CAAC,IAAI,CAAC,IAAI,WAAI,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;YAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,WAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtD,uBAAuB;QACvB,MAAM,UAAU,GAAwB,iBAAiB,CAAC,KAAK,CAAC,CAC5D,KAAK,CAAC,KAAK,CACd,CAAC;QACF,MAAM,IAAI,GAAW,YAAY,CAAC;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,UAAU;SACb,CAAC,CAAC;QAEH,OAAO,CACH,oBAAoB,KAAK,CAAC,IAAI,MAAM;YACpC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBACf,CAAC,CAAC,KAAK;qBACA,GAAG,CACA,CAAC,KAAK,EAAE,EAAE,CACN,mBAAmB,KAAK,CAAC,KAAK,MAC1B,MAAM,CAAC,SAAS,KAAK,KAAK;oBACtB,CAAC,CAAC,aAAa,KAAK,CAAC,MAAM,GAAG;oBAC9B,CAAC,CAAC,KAAK,CAAC,MAChB,GAAG,CACV;qBACA,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI;gBACxB,CAAC,CAAC,EAAE,CAAC;YACT,IAAI;YACJ,8BAA8B,KAAK,CAAC,MAAM,eAAe;YACzD,oCAAoC,KAAK,CAAC,IAAI,MAAM;YACpD,sDAAsD;YACtD,oBACI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,SAC7C,KAAK;YACL,qBAAqB,KAAK,CAAC,SAAS,KAAK;YACzC,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS;gBACvB,CAAC,CAAC,mBAAmB,KAAK,CAAC,MAAM,KAAK;gBACtC,CAAC,CAAC,EAAE,CAAC;YACT,UAAU;YACV,IAAI;YACJ,4BAA4B,UAAU;iBACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;iBACnD,IAAI,CAAC,IAAI,CAAC,kBAAkB;YACjC,GAAG,IAAI,KAAK;YACZ,SAAS;YACT,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;gBAC1C,CAAC,CAAC,8EAA8E;oBAC9E,oCAAoC;gBACtC,CAAC,CAAC,EAAE,CAAC;YACT,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI;gBACrB,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,MAAM,CAAC;oBACvD,SAAS;gBACT,CAAC,CAAC,gFAAgF;gBAClF,CAAC,CAAC,EAAE,CAAC;YACT,GAAG,CACN,CAAC;IACN,CAAC,CAAC;IAEN,MAAM,YAAY,GAAG,CAAC,KAIrB,EAAU,EAAE;QACT,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,UAAU;YAChC,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO;gBAC1B,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAC3B,IAAI,KAAK,CAAC,KAAK,EAAE,EACjB,yBAAyB,KAAK,CAAC,IAAI,cAAc,CACpD,CAAC;QAEV,qBAAqB;QACrB,MAAM,WAAW,GAAwB,KAAK,CAAC,UAAU,CAAC,MAAM,CAC5D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CACrE,CAAC;QACF,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;YACrD,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,IAAI,IAAI,CAAC;QAEjD,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE,CACxC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,KAAK,SAAS;YACtD,CAAC,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC;YACxB,CAAC,CAAC,GAAG,CAAC;QACd,MAAM,SAAS,GAAW,WAAW,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,MAAM,GAAW,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAW,WAAW,CAAC,SAAS,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAC7B;YACI,SAAS,SAAS,wBAAwB,IAAI,GAAG;YACjD,SAAS,MAAM,4CAA4C;YAC3D,6CAA6C,SAAS,IAAI;YAC1D,wCAAwC;YACxC,oCAAoC;YACpC,mCAAmC,MAAM,8BAA8B;YACvE,UAAU;YACV,WAAW,MAAM,2BAA2B;YAC5C,SAAS,OAAO,cAAc,MAAM,cAAc;YAClD,YAAY,KAAK,CAAC,IAAI,MAAM,OAAO,mBAAmB,OAAO,cAAc;SAC9E;aACI,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC;aACjC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpB,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;YACrD,OAAO,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC;aAC5C,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YAC9B,OAAO,OAAO,CAAC;;cAEb,qBAAqB,CAAC,WAAW,CAAC;iBAC/B,CAAC,CAAC;QAEX,OAAO,OAAO,CAAC;;iBAEN,KAAK,CAAC,KAAK,CAAC,IAAI;cACnB,qBAAqB,CAAC,WAAW,CAAC;iBAC/B,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAAC,UAA+B,EAAU,EAAE,CACtE,UAAU;SACL,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACX,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK;QACtB,CAAC,CAAC,KAAK,CAAC,IAAI;QACZ,CAAC,CAAC,GACI,iBAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAM,CAAC;YAC1B,CAAC,CAAC,KAAK,CAAC,KAAK;YACb,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CACpC,KAAK,KAAK,CAAC,IAAI,EAAE,CAC1B;SACA,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC,EAhVgB,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAgVrC;AAED,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nestia/sdk",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.4",
|
|
4
4
|
"description": "Nestia SDK and Swagger generator",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
},
|
|
36
36
|
"homepage": "https://nestia.io",
|
|
37
37
|
"dependencies": {
|
|
38
|
+
"@nestia/fetcher": "^1.3.1",
|
|
38
39
|
"cli": "^1.0.1",
|
|
39
40
|
"glob": "^7.2.0",
|
|
40
41
|
"path-to-regexp": "^6.2.1",
|
|
@@ -45,6 +46,7 @@
|
|
|
45
46
|
"typia": "^4.0.3"
|
|
46
47
|
},
|
|
47
48
|
"peerDependencies": {
|
|
49
|
+
"@nestia/fetcher": ">= 1.3.1",
|
|
48
50
|
"@nestjs/common": ">= 7.0.1",
|
|
49
51
|
"@nestjs/core": ">= 7.0.1",
|
|
50
52
|
"reflect-metadata": ">= 0.1.12",
|
|
@@ -120,12 +120,14 @@ export namespace SdkFileProgrammer {
|
|
|
120
120
|
config.random === true &&
|
|
121
121
|
directory.routes.some((s) => s.output.name !== "void");
|
|
122
122
|
|
|
123
|
-
const
|
|
124
|
-
if (primitived)
|
|
123
|
+
const typings: string[] = ["IConnection"];
|
|
124
|
+
if (primitived) typings.push("Primitive");
|
|
125
125
|
|
|
126
126
|
const head: string[] = [
|
|
127
|
-
`import {
|
|
128
|
-
`import type {
|
|
127
|
+
`import { Fetcher } from "@nestia/fetcher";`,
|
|
128
|
+
`import type { ${typings.join(
|
|
129
|
+
", ",
|
|
130
|
+
)} } from "@nestia/fetcher";`,
|
|
129
131
|
];
|
|
130
132
|
if (asserted || json || random)
|
|
131
133
|
head.push(`import typia from "typia";`);
|
|
@@ -64,20 +64,29 @@ export namespace SdkFunctionProgrammer {
|
|
|
64
64
|
const random = () =>
|
|
65
65
|
route.output.name === "void"
|
|
66
66
|
? "undefined"
|
|
67
|
-
:
|
|
67
|
+
: [
|
|
68
|
+
`${route.name}.random(`,
|
|
69
|
+
`${space(
|
|
70
|
+
14,
|
|
71
|
+
)}typeof connection.random === "object" &&`,
|
|
72
|
+
`${space(18)}connection.random !== null`,
|
|
73
|
+
`${space(18)}? connection.random`,
|
|
74
|
+
`${space(18)}: undefined`,
|
|
75
|
+
`${space(10)})`,
|
|
76
|
+
].join("\n");
|
|
68
77
|
const fetch = (tab: string) =>
|
|
69
78
|
[
|
|
70
|
-
`${awa ? "await " : ""}
|
|
79
|
+
`${awa ? "await " : ""}Fetcher.fetch(`,
|
|
71
80
|
fetchArguments
|
|
72
|
-
.map((param) => `${tab} ${param}
|
|
73
|
-
.join("
|
|
81
|
+
.map((param) => `${tab} ${param},`)
|
|
82
|
+
.join("\n"),
|
|
74
83
|
`${tab})`,
|
|
75
84
|
].join("\n");
|
|
76
|
-
if (!config.random) return fetch(
|
|
85
|
+
if (!config.random) return fetch(space(4));
|
|
77
86
|
return (
|
|
78
|
-
|
|
87
|
+
`!!connection.random\n` +
|
|
79
88
|
` ? ${random()}\n` +
|
|
80
|
-
` : ${fetch(
|
|
89
|
+
` : ${fetch(space(10))}`
|
|
81
90
|
);
|
|
82
91
|
};
|
|
83
92
|
if (route.setHeaders.length === 0)
|
|
@@ -185,9 +194,9 @@ export namespace SdkFunctionProgrammer {
|
|
|
185
194
|
comments.map((str) => ` * ${str}`).join("\n") +
|
|
186
195
|
"\n" +
|
|
187
196
|
" */\n" +
|
|
188
|
-
`export async function ${route.name}
|
|
189
|
-
|
|
190
|
-
`
|
|
197
|
+
`export async function ${route.name}(\n` +
|
|
198
|
+
parameters.map((str) => ` ${str},\n`).join("") +
|
|
199
|
+
`): Promise<${output}>`
|
|
191
200
|
);
|
|
192
201
|
};
|
|
193
202
|
|
|
@@ -244,11 +253,15 @@ export namespace SdkFunctionProgrammer {
|
|
|
244
253
|
: "") +
|
|
245
254
|
` };\n` +
|
|
246
255
|
"\n" +
|
|
247
|
-
` export
|
|
256
|
+
` export const path = (${parameters
|
|
248
257
|
.map((param) => `${param.name}: ${param.type.name}`)
|
|
249
|
-
.join(", ")}): string {\n` +
|
|
258
|
+
.join(", ")}): string => {\n` +
|
|
250
259
|
`${path};\n` +
|
|
251
260
|
` }\n` +
|
|
261
|
+
(config.random && route.output.name !== "void"
|
|
262
|
+
? ` export const random = (g?: Partial<typia.IRandomGenerator>): Output =>\n` +
|
|
263
|
+
` typia.random<Output>(g);\n`
|
|
264
|
+
: "") +
|
|
252
265
|
(config.json === true &&
|
|
253
266
|
route.parameters.find((param) => param.category === "body") !==
|
|
254
267
|
undefined
|
|
@@ -275,7 +288,7 @@ export namespace SdkFunctionProgrammer {
|
|
|
275
288
|
(param) => param.category === "query" && param.field !== undefined,
|
|
276
289
|
);
|
|
277
290
|
if (props.query === undefined && queryParams.length === 0)
|
|
278
|
-
return `${
|
|
291
|
+
return `${space(8)}return \`${props.path}\``;
|
|
279
292
|
|
|
280
293
|
const computeName = (str: string): string =>
|
|
281
294
|
props.parameters.find((p) => p.name === str) !== undefined
|
|
@@ -298,7 +311,7 @@ export namespace SdkFunctionProgrammer {
|
|
|
298
311
|
`const ${encoded}: string = ${search}.toString();`,
|
|
299
312
|
`return \`${props.path}\${${encoded}.length ? \`?\${${encoded}}\` : ""}\`;`,
|
|
300
313
|
]
|
|
301
|
-
.map((str) => `${
|
|
314
|
+
.map((str) => `${space(8)}${str}`)
|
|
302
315
|
.join("\n");
|
|
303
316
|
|
|
304
317
|
if (props.query !== undefined && queryParams.length === 0)
|
|
@@ -327,5 +340,7 @@ export namespace SdkFunctionProgrammer {
|
|
|
327
340
|
: JSON.stringify(param.field)
|
|
328
341
|
}: ${param.name}`,
|
|
329
342
|
)
|
|
330
|
-
.join(`,\n${
|
|
343
|
+
.join(`,\n${space(12)}`);
|
|
331
344
|
}
|
|
345
|
+
|
|
346
|
+
const space = (count: number) => " ".repeat(count);
|