@nestia/sdk 3.0.0-dev.20231209 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -9
- package/assets/config/nestia.config.ts +82 -79
- package/lib/INestiaConfig.d.ts +28 -6
- package/lib/NestiaSdkApplication.js +12 -10
- package/lib/NestiaSdkApplication.js.map +1 -1
- package/lib/analyses/ConfigAnalyzer.js +1 -1
- package/lib/analyses/ConfigAnalyzer.js.map +1 -1
- package/lib/analyses/ControllerAnalyzer.js +30 -15
- package/lib/analyses/ControllerAnalyzer.js.map +1 -1
- package/lib/analyses/ExceptionAnalyzer.js +35 -6
- package/lib/analyses/ExceptionAnalyzer.js.map +1 -1
- package/lib/analyses/ImportAnalyzer.d.ts +1 -2
- package/lib/analyses/ImportAnalyzer.js +2 -2
- package/lib/analyses/ImportAnalyzer.js.map +1 -1
- package/lib/analyses/PathAnalyzer.d.ts +2 -4
- package/lib/analyses/PathAnalyzer.js +27 -11
- package/lib/analyses/PathAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectAnalyzer.js +34 -22
- package/lib/analyses/ReflectAnalyzer.js.map +1 -1
- package/lib/analyses/SecurityAnalyzer.js +13 -8
- package/lib/analyses/SecurityAnalyzer.js.map +1 -1
- package/lib/executable/internal/NestiaConfigLoader.js +300 -220
- package/lib/executable/internal/NestiaConfigLoader.js.map +1 -1
- package/lib/executable/sdk.js +11 -11
- package/lib/generates/CloneGenerator.d.ts +6 -0
- package/lib/generates/CloneGenerator.js +62 -0
- package/lib/generates/CloneGenerator.js.map +1 -0
- package/lib/generates/E2eGenerator.d.ts +2 -1
- package/lib/generates/E2eGenerator.js +2 -2
- package/lib/generates/E2eGenerator.js.map +1 -1
- package/lib/generates/SdkGenerator.js +3 -11
- package/lib/generates/SdkGenerator.js.map +1 -1
- package/lib/generates/SwaggerGenerator.d.ts +2 -0
- package/lib/generates/SwaggerGenerator.js +119 -62
- package/lib/generates/SwaggerGenerator.js.map +1 -1
- package/lib/generates/internal/E2eFileProgrammer.d.ts +2 -1
- package/lib/generates/internal/E2eFileProgrammer.js +49 -53
- package/lib/generates/internal/E2eFileProgrammer.js.map +1 -1
- package/lib/generates/internal/FilePrinter.d.ts +10 -0
- package/lib/generates/internal/FilePrinter.js +46 -0
- package/lib/generates/internal/FilePrinter.js.map +1 -0
- package/lib/{utils → generates/internal}/ImportDictionary.d.ts +2 -1
- package/lib/{utils → generates/internal}/ImportDictionary.js +20 -14
- package/lib/generates/internal/ImportDictionary.js.map +1 -0
- package/lib/generates/internal/SdkAliasCollection.d.ts +12 -0
- package/lib/generates/internal/SdkAliasCollection.js +97 -0
- package/lib/generates/internal/SdkAliasCollection.js.map +1 -0
- package/lib/generates/internal/SdkCloneProgrammer.d.ts +12 -0
- package/lib/generates/internal/SdkCloneProgrammer.js +99 -0
- package/lib/generates/internal/SdkCloneProgrammer.js.map +1 -0
- package/lib/generates/internal/SdkFileProgrammer.d.ts +2 -1
- package/lib/generates/internal/SdkFileProgrammer.js +27 -28
- package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkFunctionProgrammer.d.ts +7 -2
- package/lib/generates/internal/SdkFunctionProgrammer.js +115 -322
- package/lib/generates/internal/SdkFunctionProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkImportWizard.d.ts +1 -1
- package/lib/generates/internal/SdkNamespaceProgrammer.d.ts +11 -0
- package/lib/generates/internal/SdkNamespaceProgrammer.js +180 -0
- package/lib/generates/internal/SdkNamespaceProgrammer.js.map +1 -0
- package/lib/generates/internal/SdkRouteProgrammer.d.ts +7 -0
- package/lib/generates/internal/SdkRouteProgrammer.js +55 -0
- package/lib/generates/internal/SdkRouteProgrammer.js.map +1 -0
- package/lib/generates/internal/SdkSimulationProgrammer.d.ts +8 -2
- package/lib/generates/internal/SdkSimulationProgrammer.js +103 -89
- package/lib/generates/internal/SdkSimulationProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkTypeProgrammer.d.ts +9 -0
- package/lib/generates/internal/SdkTypeProgrammer.js +228 -0
- package/lib/generates/internal/SdkTypeProgrammer.js.map +1 -0
- package/lib/generates/internal/SwaggerSchemaGenerator.d.ts +4 -4
- package/lib/generates/internal/SwaggerSchemaGenerator.js +30 -28
- package/lib/generates/internal/SwaggerSchemaGenerator.js.map +1 -1
- package/lib/structures/IController.d.ts +4 -2
- package/lib/structures/IRoute.d.ts +5 -4
- package/lib/structures/ISwaggerLazyProperty.d.ts +2 -2
- package/lib/structures/ISwaggerLazySchema.d.ts +2 -2
- package/lib/structures/ParamCategory.d.ts +1 -1
- package/lib/structures/TypeEntry.js +2 -2
- package/lib/structures/TypeEntry.js.map +1 -1
- package/lib/utils/StringUtil.d.ts +3 -0
- package/lib/utils/StringUtil.js +8 -0
- package/lib/utils/StringUtil.js.map +1 -0
- package/package.json +12 -16
- package/src/INestiaConfig.ts +30 -6
- package/src/NestiaSdkApplication.ts +255 -253
- package/src/analyses/AccessorAnalyzer.ts +60 -60
- package/src/analyses/ConfigAnalyzer.ts +147 -147
- package/src/analyses/ControllerAnalyzer.ts +42 -19
- package/src/analyses/ExceptionAnalyzer.ts +148 -115
- package/src/analyses/GenericAnalyzer.ts +51 -51
- package/src/analyses/ImportAnalyzer.ts +1 -2
- package/src/analyses/PathAnalyzer.ts +110 -98
- package/src/analyses/ReflectAnalyzer.ts +39 -35
- package/src/analyses/SecurityAnalyzer.ts +24 -20
- package/src/executable/internal/CommandParser.ts +15 -15
- package/src/executable/internal/NestiaConfigLoader.ts +67 -67
- package/src/executable/internal/NestiaSdkCommand.ts +60 -60
- package/src/executable/sdk.ts +73 -73
- package/src/generates/CloneGenerator.ts +62 -0
- package/src/generates/E2eGenerator.ts +66 -64
- package/src/generates/SdkGenerator.ts +84 -96
- package/src/generates/SwaggerGenerator.ts +145 -53
- package/src/generates/internal/E2eFileProgrammer.ts +182 -123
- package/src/generates/internal/FilePrinter.ts +53 -0
- package/src/{utils → generates/internal}/ImportDictionary.ts +35 -13
- package/src/generates/internal/SdkAliasCollection.ts +152 -0
- package/src/generates/internal/SdkCloneProgrammer.ts +155 -0
- package/src/generates/internal/SdkDistributionComposer.ts +91 -91
- package/src/generates/internal/SdkFileProgrammer.ts +115 -106
- package/src/generates/internal/SdkFunctionProgrammer.ts +298 -518
- package/src/generates/internal/SdkImportWizard.ts +55 -55
- package/src/generates/internal/SdkNamespaceProgrammer.ts +510 -0
- package/src/generates/internal/SdkRouteDirectory.ts +17 -17
- package/src/generates/internal/SdkRouteProgrammer.ts +83 -0
- package/src/generates/internal/SdkSimulationProgrammer.ts +365 -133
- package/src/generates/internal/SdkTypeProgrammer.ts +386 -0
- package/src/generates/internal/SwaggerSchemaGenerator.ts +437 -427
- package/src/generates/internal/SwaggerSchemaValidator.ts +198 -198
- package/src/index.ts +4 -4
- package/src/module.ts +2 -2
- package/src/structures/IController.ts +94 -95
- package/src/structures/IErrorReport.ts +6 -6
- package/src/structures/INestiaProject.ts +13 -13
- package/src/structures/INormalizedInput.ts +20 -20
- package/src/structures/IRoute.ts +53 -53
- package/src/structures/ISwaggerLazyProperty.ts +2 -2
- package/src/structures/ISwaggerLazySchema.ts +2 -2
- package/src/structures/ITypeTuple.ts +6 -6
- package/src/structures/MethodType.ts +5 -5
- package/src/structures/ParamCategory.ts +1 -1
- package/src/structures/TypeEntry.ts +1 -1
- package/src/utils/ArrayUtil.ts +26 -26
- package/src/utils/FileRetriever.ts +22 -22
- package/src/utils/MapUtil.ts +14 -14
- package/src/utils/PathUtil.ts +10 -10
- package/src/utils/SourceFinder.ts +66 -66
- package/src/utils/StringUtil.ts +6 -0
- package/src/utils/StripEnums.ts +5 -5
- package/assets/bundle/api/utils/NestiaSimulator.ts +0 -70
- package/lib/generates/internal/SdkDtoGenerator.d.ts +0 -9
- package/lib/generates/internal/SdkDtoGenerator.js +0 -294
- package/lib/generates/internal/SdkDtoGenerator.js.map +0 -1
- package/lib/generates/internal/SdkTypeDefiner.d.ts +0 -11
- package/lib/generates/internal/SdkTypeDefiner.js +0 -82
- package/lib/generates/internal/SdkTypeDefiner.js.map +0 -1
- package/lib/structures/ISwagger.d.ts +0 -72
- package/lib/structures/ISwagger.js +0 -3
- package/lib/structures/ISwagger.js.map +0 -1
- package/lib/structures/ISwaggerComponents.d.ts +0 -26
- package/lib/structures/ISwaggerComponents.js +0 -3
- package/lib/structures/ISwaggerComponents.js.map +0 -1
- package/lib/structures/ISwaggerInfo.d.ts +0 -71
- package/lib/structures/ISwaggerInfo.js +0 -3
- package/lib/structures/ISwaggerInfo.js.map +0 -1
- package/lib/structures/ISwaggerRoute.d.ts +0 -47
- package/lib/structures/ISwaggerRoute.js +0 -3
- package/lib/structures/ISwaggerRoute.js.map +0 -1
- package/lib/structures/ISwaggerSecurityScheme.d.ts +0 -56
- package/lib/structures/ISwaggerSecurityScheme.js +0 -3
- package/lib/structures/ISwaggerSecurityScheme.js.map +0 -1
- package/lib/utils/ImportDictionary.js.map +0 -1
- package/src/generates/internal/SdkDtoGenerator.ts +0 -424
- package/src/generates/internal/SdkTypeDefiner.ts +0 -119
- package/src/structures/ISwagger.ts +0 -91
- package/src/structures/ISwaggerComponents.ts +0 -29
- package/src/structures/ISwaggerInfo.ts +0 -80
- package/src/structures/ISwaggerRoute.ts +0 -51
- package/src/structures/ISwaggerSecurityScheme.ts +0 -65
|
@@ -1,347 +1,140 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.SdkFunctionProgrammer = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
const typia_1 = __importDefault(require("typia"));
|
|
9
|
+
const IdentifierFactory_1 = require("typia/lib/factories/IdentifierFactory");
|
|
10
|
+
const StringUtil_1 = require("../../utils/StringUtil");
|
|
7
11
|
const SdkImportWizard_1 = require("./SdkImportWizard");
|
|
8
|
-
const
|
|
9
|
-
const SdkTypeDefiner_1 = require("./SdkTypeDefiner");
|
|
12
|
+
const SdkTypeProgrammer_1 = require("./SdkTypeProgrammer");
|
|
10
13
|
var SdkFunctionProgrammer;
|
|
11
14
|
(function (SdkFunctionProgrammer) {
|
|
12
|
-
SdkFunctionProgrammer.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
SdkFunctionProgrammer.write = (config) => (importer) => (route, props) => {
|
|
16
|
+
return typescript_1.default.factory.createFunctionDeclaration([
|
|
17
|
+
typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword),
|
|
18
|
+
typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword),
|
|
19
|
+
], undefined, route.name, undefined, [
|
|
20
|
+
IdentifierFactory_1.IdentifierFactory.parameter("connection", typescript_1.default.factory.createTypeReferenceNode(SdkImportWizard_1.SdkImportWizard.IConnection(importer), props.headers
|
|
21
|
+
? [typescript_1.default.factory.createTypeReferenceNode(`${route.name}.Headers`)]
|
|
22
|
+
: undefined)),
|
|
23
|
+
...route.parameters
|
|
24
|
+
.filter((p) => p.category !== "headers")
|
|
25
|
+
.map((p) => typescript_1.default.factory.createParameterDeclaration([], undefined, p.name, p.optional
|
|
26
|
+
? typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.QuestionToken)
|
|
27
|
+
: undefined, config.primitive !== false &&
|
|
28
|
+
(p === props.query || p === props.input)
|
|
29
|
+
? typescript_1.default.factory.createTypeReferenceNode(`${route.name}.${p === props.query ? "Query" : "Input"}`)
|
|
30
|
+
: getTypeName(config)(importer)(p))),
|
|
31
|
+
], typescript_1.default.factory.createTypeReferenceNode("Promise", [
|
|
32
|
+
getReturnType(config)(route),
|
|
33
|
+
]), typescript_1.default.factory.createBlock(write_body(config)(importer)(route, props), true));
|
|
19
34
|
};
|
|
20
|
-
|
|
21
|
-
BODY
|
|
22
|
-
--------------------------------------------------------- */
|
|
23
|
-
const body = (config) => (importer) => (route) => (props) => {
|
|
24
|
-
var _a;
|
|
35
|
+
const write_body = (config) => (importer) => (route, props) => {
|
|
25
36
|
const encrypted = route.encrypted === true ||
|
|
26
37
|
(props.input !== undefined &&
|
|
27
38
|
props.input.custom === true &&
|
|
28
39
|
props.input.category === "body" &&
|
|
29
40
|
props.input.encrypted === true);
|
|
30
|
-
// FETCH ARGUMENTS WITH REQUST BODY
|
|
31
|
-
const parameters = filter_path_parameters(route)(props.query);
|
|
32
41
|
const contentType = props.input !== undefined
|
|
33
|
-
?
|
|
34
|
-
|
|
35
|
-
|
|
42
|
+
? (input => {
|
|
43
|
+
const $io0 = input => true === input.custom && "body" === input.category && "number" === typeof input.index && "string" === typeof input.name && (undefined === input.field || "string" === typeof input.field) && "boolean" === typeof input.encrypted && ("application/json" === input.contentType || "text/plain" === input.contentType || "application/x-www-form-urlencoded" === input.contentType || "multipart/form-data" === input.contentType);
|
|
44
|
+
return "object" === typeof input && null !== input && $io0(input);
|
|
45
|
+
})(props.input) ? props.input.contentType
|
|
46
|
+
: "application/json"
|
|
36
47
|
: undefined;
|
|
37
|
-
const
|
|
38
|
-
contentType
|
|
39
|
-
? [
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
.
|
|
68
|
-
.join("\n") + "\n\n"
|
|
69
|
-
: "";
|
|
70
|
-
// FUNCTION CALL STATEMENT
|
|
71
|
-
const caller = (awa) => {
|
|
72
|
-
const random = () => [
|
|
73
|
-
`${awa ? "await " : ""}${route.name}.simulate(`,
|
|
74
|
-
` connection,`,
|
|
48
|
+
const caller = () => typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.Fetcher(encrypted)(importer)))(config.propagate ? "propagate" : "fetch"), undefined, [
|
|
49
|
+
contentType && contentType !== "multipart/form-data"
|
|
50
|
+
? typescript_1.default.factory.createObjectLiteralExpression([
|
|
51
|
+
typescript_1.default.factory.createSpreadAssignment(typescript_1.default.factory.createIdentifier("connection")),
|
|
52
|
+
typescript_1.default.factory.createPropertyAssignment("headers", typescript_1.default.factory.createObjectLiteralExpression([
|
|
53
|
+
typescript_1.default.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("connection"))("headers")),
|
|
54
|
+
typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createStringLiteral("Content-Type"), typescript_1.default.factory.createStringLiteral(contentType)),
|
|
55
|
+
], true)),
|
|
56
|
+
], true)
|
|
57
|
+
: typescript_1.default.factory.createIdentifier("connection"),
|
|
58
|
+
typescript_1.default.factory.createObjectLiteralExpression([
|
|
59
|
+
typescript_1.default.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(route.name))("METADATA")),
|
|
60
|
+
typescript_1.default.factory.createPropertyAssignment("path", typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(route.name))("path"), undefined, route.parameters
|
|
61
|
+
.filter((p) => p.category === "param" || p.category === "query")
|
|
62
|
+
.map((p) => typescript_1.default.factory.createIdentifier(p.name)))),
|
|
63
|
+
], true),
|
|
64
|
+
...(props.input
|
|
65
|
+
? [typescript_1.default.factory.createIdentifier(props.input.name)]
|
|
66
|
+
: []),
|
|
67
|
+
...(config.json && (input => {
|
|
68
|
+
const $io0 = input => true === input.custom && "body" === input.category && "number" === typeof input.index && "string" === typeof input.name && (undefined === input.field || "string" === typeof input.field) && "boolean" === typeof input.encrypted && ("application/json" === input.contentType || "text/plain" === input.contentType || "application/x-www-form-urlencoded" === input.contentType || "multipart/form-data" === input.contentType);
|
|
69
|
+
return "object" === typeof input && null !== input && $io0(input);
|
|
70
|
+
})(props.input) &&
|
|
71
|
+
(props.input.contentType === "application/json" ||
|
|
72
|
+
props.input.encrypted === true)
|
|
73
|
+
? [typescript_1.default.factory.createIdentifier(`${route.name}.stringify`)]
|
|
74
|
+
: []),
|
|
75
|
+
]);
|
|
76
|
+
const output = (awaiter) => config.simulate
|
|
77
|
+
? typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createIdentifier("!!connection.simulate"), undefined, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(`${route.name}.simulate`), [], [
|
|
78
|
+
typescript_1.default.factory.createIdentifier("connection"),
|
|
75
79
|
...route.parameters
|
|
76
80
|
.filter((p) => p.category !== "headers")
|
|
77
|
-
.map((p) =>
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
.
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
.
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
return (`!!connection.simulate\n` +
|
|
94
|
-
` ? ${random()}\n` +
|
|
95
|
-
` : ${fetch(space(10))}`);
|
|
96
|
-
};
|
|
97
|
-
if (route.setHeaders.length === 0)
|
|
98
|
-
return `{\n${assertions} return ${caller(false)};\n}`;
|
|
99
|
-
// SET HEADERS
|
|
100
|
-
const content = [
|
|
101
|
-
`{\n`,
|
|
102
|
-
assertions,
|
|
103
|
-
` const output: ${route.name}.Output = ${caller(true)};\n`,
|
|
104
|
-
"\n",
|
|
105
|
-
` // configure header(s)\n`,
|
|
106
|
-
` connection.headers ??= {};\n`,
|
|
81
|
+
.map((p) => typescript_1.default.factory.createIdentifier(p.name)),
|
|
82
|
+
]), undefined, awaiter ? typescript_1.default.factory.createAwaitExpression(caller()) : caller())
|
|
83
|
+
: awaiter
|
|
84
|
+
? typescript_1.default.factory.createAwaitExpression(caller())
|
|
85
|
+
: caller();
|
|
86
|
+
return [
|
|
87
|
+
...(config.assert
|
|
88
|
+
? route.parameters
|
|
89
|
+
.filter((p) => p.category !== "headers")
|
|
90
|
+
.map((p) => typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.typia(importer)))("assert"), [
|
|
91
|
+
typescript_1.default.factory.createTypeQueryNode(typescript_1.default.factory.createIdentifier(p.name)),
|
|
92
|
+
], [typescript_1.default.factory.createIdentifier(p.name)])))
|
|
93
|
+
: []),
|
|
94
|
+
...(route.setHeaders.length === 0
|
|
95
|
+
? [typescript_1.default.factory.createReturnStatement(output(false))]
|
|
96
|
+
: write_set_headers(config)(route)(output(true))),
|
|
107
97
|
];
|
|
108
|
-
const headerContents = (variable) => route.setHeaders.map((header) => {
|
|
109
|
-
var _a;
|
|
110
|
-
return header.type === "assigner"
|
|
111
|
-
? `Object.assign(connection.headers, ${access(variable)(header.source)});`
|
|
112
|
-
: `${access("connection.headers")((_a = header.target) !== null && _a !== void 0 ? _a : header.source)} = ${access(variable)(header.source)};`;
|
|
113
|
-
});
|
|
114
|
-
if (config.propagate === true) {
|
|
115
|
-
content.push(` if (output.success) {\n`);
|
|
116
|
-
content.push(...headerContents("output.data").map((line) => ` ${line}\n`));
|
|
117
|
-
content.push(` }\n`);
|
|
118
|
-
}
|
|
119
|
-
else
|
|
120
|
-
content.push(...headerContents("output").map((line) => ` ${line}\n`));
|
|
121
|
-
content.push("\n", " return output;\n", "}");
|
|
122
|
-
return content.join("");
|
|
123
98
|
};
|
|
124
|
-
const
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
parameters.
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
const head = (config) => (importer) => (route) => (props) => {
|
|
136
|
-
var _a;
|
|
137
|
-
//----
|
|
138
|
-
// CONSTRUCT COMMENT
|
|
139
|
-
//----
|
|
140
|
-
// MAIN DESCRIPTION
|
|
141
|
-
const comments = route.description
|
|
142
|
-
? route.description.split("\n")
|
|
143
|
-
: [];
|
|
144
|
-
// COMMENT TAGS
|
|
145
|
-
const tags = route.jsDocTags.filter((tag) => tag.name !== "param" ||
|
|
146
|
-
route.parameters
|
|
147
|
-
.filter((p) => p.category !== "headers")
|
|
148
|
-
.some((p) => { var _a, _b; return p.name === ((_b = (_a = tag.text) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.text); }));
|
|
149
|
-
if (tags.length !== 0) {
|
|
150
|
-
const content = tags.map((t) => {
|
|
99
|
+
const write_set_headers = (config) => (route) => (condition) => {
|
|
100
|
+
const accessor = (x) => (y) => x[0] === "[" ? `${x}${y}` : `${x}.${y}`;
|
|
101
|
+
const output = StringUtil_1.StringUtil.escapeDuplicate([
|
|
102
|
+
"connection",
|
|
103
|
+
...route.parameters.map((p) => p.name),
|
|
104
|
+
])("output");
|
|
105
|
+
const headers = accessor("connection")("headers");
|
|
106
|
+
const data = config.propagate ? accessor(output)("data") : output;
|
|
107
|
+
const assigners = [
|
|
108
|
+
typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier(headers), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.QuestionQuestionEqualsToken), typescript_1.default.factory.createObjectLiteralExpression([])),
|
|
109
|
+
...route.setHeaders.map((tuple) => {
|
|
151
110
|
var _a;
|
|
152
|
-
return
|
|
153
|
-
?
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
// EXCEPTIONS
|
|
159
|
-
for (const [key, value] of Object.entries(route.exceptions)) {
|
|
160
|
-
if (comments.some((str) => str.startsWith(`@throw ${key}`) ||
|
|
161
|
-
str.startsWith(`@throws ${key}`)))
|
|
162
|
-
continue;
|
|
163
|
-
comments.push(((_a = value.description) === null || _a === void 0 ? void 0 : _a.length)
|
|
164
|
-
? `@throws ${key} ${value.description.split("\n")[0]}`
|
|
165
|
-
: `@throws ${key}`);
|
|
166
|
-
}
|
|
167
|
-
// POSTFIX
|
|
168
|
-
if (!!comments.length)
|
|
169
|
-
comments.push("");
|
|
170
|
-
comments.push(`@controller ${route.symbol.class}.${route.symbol.function}`, `@path ${route.method} ${route.path}`, `@nestia Generated by Nestia - https://github.com/samchon/nestia`);
|
|
171
|
-
//----
|
|
172
|
-
// FINALIZATION
|
|
173
|
-
//----
|
|
174
|
-
// REFORM PARAMETERS TEXT
|
|
175
|
-
const parameters = [
|
|
176
|
-
route.parameters.some((p) => p.category === "headers" && p.field === undefined)
|
|
177
|
-
? `connection: ${SdkImportWizard_1.SdkImportWizard.IConnection(importer)}<${`${route.name}.Headers`}>`
|
|
178
|
-
: `connection: ${SdkImportWizard_1.SdkImportWizard.IConnection(importer)}`,
|
|
179
|
-
...route.parameters
|
|
180
|
-
.filter((p) => p.category !== "headers")
|
|
181
|
-
.map((param) => {
|
|
182
|
-
const type = config.primitive !== false &&
|
|
183
|
-
(param === props.query || param === props.input)
|
|
184
|
-
? `${route.name}.${param === props.query ? "Query" : "Input"}`
|
|
185
|
-
: getTypeName(config)(importer)(param);
|
|
186
|
-
return `${param.name}${param.optional ? "?" : ""}: ${type}`;
|
|
111
|
+
return tuple.type === "assigner"
|
|
112
|
+
? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.assign"), [], [
|
|
113
|
+
typescript_1.default.factory.createIdentifier(headers),
|
|
114
|
+
typescript_1.default.factory.createIdentifier(accessor(data)(tuple.source)),
|
|
115
|
+
])
|
|
116
|
+
: typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier(accessor(headers)((_a = tuple.target) !== null && _a !== void 0 ? _a : tuple.source)), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), typescript_1.default.factory.createIdentifier(accessor(data)(tuple.source)));
|
|
187
117
|
}),
|
|
118
|
+
].map(typescript_1.default.factory.createExpressionStatement);
|
|
119
|
+
return [
|
|
120
|
+
typescript_1.default.factory.createVariableStatement([], typescript_1.default.factory.createVariableDeclarationList([
|
|
121
|
+
typescript_1.default.factory.createVariableDeclaration(output, undefined, getReturnType(config)(route), condition),
|
|
122
|
+
], typescript_1.default.NodeFlags.Const)),
|
|
123
|
+
...(config.propagate
|
|
124
|
+
? [
|
|
125
|
+
typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createIdentifier(accessor(output)("success")), assigners.length === 1
|
|
126
|
+
? assigners[0]
|
|
127
|
+
: typescript_1.default.factory.createBlock(assigners, true), undefined),
|
|
128
|
+
]
|
|
129
|
+
: assigners),
|
|
130
|
+
typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier(output)),
|
|
188
131
|
];
|
|
189
|
-
// OUTPUT TYPE
|
|
190
|
-
const output = config.propagate !== true && route.output.typeName === "void"
|
|
191
|
-
? "void"
|
|
192
|
-
: `${route.name}.Output`;
|
|
193
|
-
// RETURNS WITH CONSTRUCTION
|
|
194
|
-
return ("" +
|
|
195
|
-
"/**\n" +
|
|
196
|
-
comments.map((str) => ` * ${str}`).join("\n") +
|
|
197
|
-
"\n" +
|
|
198
|
-
" */\n" +
|
|
199
|
-
`export async function ${route.name}(\n` +
|
|
200
|
-
parameters.map((str) => ` ${str},\n`).join("") +
|
|
201
|
-
`): Promise<${output}>`);
|
|
202
|
-
};
|
|
203
|
-
const tail = (config) => (importer) => (route) => (props) => {
|
|
204
|
-
var _a;
|
|
205
|
-
// LIST UP TYPES
|
|
206
|
-
const types = [];
|
|
207
|
-
if (props.headers !== undefined)
|
|
208
|
-
types.push(new Pair_1.Pair("Headers", SdkTypeDefiner_1.SdkTypeDefiner.headers(config)(importer)(props.headers)));
|
|
209
|
-
if (props.query !== undefined)
|
|
210
|
-
types.push(new Pair_1.Pair("Query", SdkTypeDefiner_1.SdkTypeDefiner.query(config)(importer)(props.query)));
|
|
211
|
-
if (props.input !== undefined)
|
|
212
|
-
types.push(new Pair_1.Pair("Input", SdkTypeDefiner_1.SdkTypeDefiner.input(config)(importer)(props.input)));
|
|
213
|
-
if (config.propagate === true || route.output.typeName !== "void")
|
|
214
|
-
types.push(new Pair_1.Pair("Output", SdkTypeDefiner_1.SdkTypeDefiner.output(config)(importer)(route)));
|
|
215
|
-
// PATH WITH PARAMETERS
|
|
216
|
-
const parameters = filter_path_parameters(route)(props.query);
|
|
217
|
-
const path = compute_path({
|
|
218
|
-
path: route.path,
|
|
219
|
-
query: props.query,
|
|
220
|
-
parameters,
|
|
221
|
-
});
|
|
222
|
-
return (`export namespace ${route.name} {\n` +
|
|
223
|
-
(types.length !== 0
|
|
224
|
-
? types
|
|
225
|
-
.map((tuple) => ` export type ${tuple.first} = ${tuple.second};`)
|
|
226
|
-
.join("\n") + "\n"
|
|
227
|
-
: "") +
|
|
228
|
-
"\n" +
|
|
229
|
-
[
|
|
230
|
-
"export const METADATA = {",
|
|
231
|
-
` method: "${route.method}",`,
|
|
232
|
-
` path: "${route.path}",`,
|
|
233
|
-
...(props.input
|
|
234
|
-
? [
|
|
235
|
-
`request: {`,
|
|
236
|
-
` type: "${props.input.encrypted
|
|
237
|
-
? "application/octet-stream"
|
|
238
|
-
: (_a = props.input.contentType) !== null && _a !== void 0 ? _a : "application/json"}",`,
|
|
239
|
-
` encrypted: ${props.input.custom &&
|
|
240
|
-
props.input.category === "body" &&
|
|
241
|
-
props.input.encrypted}`,
|
|
242
|
-
`},`,
|
|
243
|
-
].map((str) => ` ${str}`)
|
|
244
|
-
: [" request: null,"]),
|
|
245
|
-
...(route.method !== "HEAD"
|
|
246
|
-
? [
|
|
247
|
-
`response: {`,
|
|
248
|
-
` type: "${route.output.contentType}",`,
|
|
249
|
-
` encrypted: ${route.encrypted},`,
|
|
250
|
-
`},`,
|
|
251
|
-
].map((str) => ` ${str}`)
|
|
252
|
-
: [" response: null,"]),
|
|
253
|
-
...(route.status
|
|
254
|
-
? [` status: ${route.status},`]
|
|
255
|
-
: [" status: null,"]),
|
|
256
|
-
...(route.output.contentType === "application/x-www-form-urlencoded"
|
|
257
|
-
? [
|
|
258
|
-
` parseQuery: (input: URLSearchParams) => ${SdkImportWizard_1.SdkImportWizard.typia(importer)}.http.assertQuery<${route.output.typeName}>(input),`,
|
|
259
|
-
]
|
|
260
|
-
: []),
|
|
261
|
-
"} as const;",
|
|
262
|
-
]
|
|
263
|
-
.map((line) => ` ${line}`)
|
|
264
|
-
.join("\n") +
|
|
265
|
-
"\n\n" +
|
|
266
|
-
` export const path = (${parameters
|
|
267
|
-
.map((param) => {
|
|
268
|
-
var _a;
|
|
269
|
-
return `${param.name}: ${param.category === "query" &&
|
|
270
|
-
param.typeName === ((_a = props.query) === null || _a === void 0 ? void 0 : _a.typeName)
|
|
271
|
-
? `${route.name}.Query`
|
|
272
|
-
: getTypeName(config)(importer)(param)}`;
|
|
273
|
-
})
|
|
274
|
-
.join(", ")}): string => {\n` +
|
|
275
|
-
`${path};\n` +
|
|
276
|
-
` }\n` +
|
|
277
|
-
(config.simulate === true && route.output.typeName !== "void"
|
|
278
|
-
? ` export const random = (g?: Partial<${SdkImportWizard_1.SdkImportWizard.typia(importer)}.IRandomGenerator>): ${SdkTypeDefiner_1.SdkTypeDefiner.responseBody(config)(importer)(route)} =>\n` +
|
|
279
|
-
` ${SdkImportWizard_1.SdkImportWizard.typia(importer)}.random<${SdkTypeDefiner_1.SdkTypeDefiner.responseBody(config)(importer)(route)}>(g);\n`
|
|
280
|
-
: "") +
|
|
281
|
-
(config.simulate === true
|
|
282
|
-
? SdkSimulationProgrammer_1.SdkSimulationProgrammer.generate(config)(importer)(route) + "\n"
|
|
283
|
-
: "") +
|
|
284
|
-
(config.json === true &&
|
|
285
|
-
route.parameters.find((param) => param.category === "body") !==
|
|
286
|
-
undefined
|
|
287
|
-
? ` export const stringify = (input: Input) => ${SdkImportWizard_1.SdkImportWizard.typia(importer)}.json.assertStringify(input);\n`
|
|
288
|
-
: "") +
|
|
289
|
-
"}");
|
|
290
|
-
};
|
|
291
|
-
const compute_path = (props) => {
|
|
292
|
-
for (const param of props.parameters)
|
|
293
|
-
if (param.category === "param")
|
|
294
|
-
props.path = props.path.replace(`:${param.field}`, `\${encodeURIComponent(${param.name} ?? "null")}`);
|
|
295
|
-
// NO QUERY PARAMETER
|
|
296
|
-
const queryParams = props.parameters.filter((param) => param.category === "query" && param.field !== undefined);
|
|
297
|
-
if (props.query === undefined && queryParams.length === 0)
|
|
298
|
-
return `${space(8)}return \`${props.path}\``;
|
|
299
|
-
const computeName = (str) => props.parameters
|
|
300
|
-
.filter((p) => p.category !== "headers")
|
|
301
|
-
.find((p) => p.name === str) !== undefined
|
|
302
|
-
? computeName("_" + str)
|
|
303
|
-
: str;
|
|
304
|
-
const variables = computeName("variables");
|
|
305
|
-
const search = computeName("search");
|
|
306
|
-
const encoded = computeName("encoded");
|
|
307
|
-
const wrapper = (expr) => [
|
|
308
|
-
`const ${variables}: Record<any, any> = ${expr};`,
|
|
309
|
-
`const ${search}: URLSearchParams = new URLSearchParams();`,
|
|
310
|
-
`for (const [key, value] of Object.entries(${variables}))`,
|
|
311
|
-
` if (value === undefined) continue;`,
|
|
312
|
-
` else if (Array.isArray(value))`,
|
|
313
|
-
` value.forEach((elem) => ${search}.append(key, String(elem)));`,
|
|
314
|
-
` else`,
|
|
315
|
-
` ${search}.set(key, String(value));`,
|
|
316
|
-
`const ${encoded}: string = ${search}.toString();`,
|
|
317
|
-
`return \`${props.path}\${${encoded}.length ? \`?\${${encoded}}\` : ""}\`;`,
|
|
318
|
-
]
|
|
319
|
-
.map((str) => `${space(8)}${str}`)
|
|
320
|
-
.join("\n");
|
|
321
|
-
if (props.query !== undefined && queryParams.length === 0)
|
|
322
|
-
return wrapper(`${props.query.name} as any`);
|
|
323
|
-
else if (props.query === undefined)
|
|
324
|
-
return wrapper(`
|
|
325
|
-
{
|
|
326
|
-
${rest_query_parameters(queryParams)}
|
|
327
|
-
} as any`);
|
|
328
|
-
return wrapper(`
|
|
329
|
-
{
|
|
330
|
-
...${props.query.name},
|
|
331
|
-
${rest_query_parameters(queryParams)},
|
|
332
|
-
} as any`);
|
|
333
132
|
};
|
|
334
|
-
const rest_query_parameters = (parameters) => parameters
|
|
335
|
-
.filter((param) => param.category !== "headers")
|
|
336
|
-
.map((param) => param.name === param.field
|
|
337
|
-
? param.name
|
|
338
|
-
: `${Escaper_1.Escaper.variable(param.field)
|
|
339
|
-
? param.field
|
|
340
|
-
: JSON.stringify(param.field)}: ${param.name}`)
|
|
341
|
-
.join(`,\n${space(12)}`);
|
|
342
133
|
})(SdkFunctionProgrammer || (exports.SdkFunctionProgrammer = SdkFunctionProgrammer = {}));
|
|
343
|
-
const space = (count) => " ".repeat(count);
|
|
344
134
|
const getTypeName = (config) => (importer) => (p) => p.metadata
|
|
345
|
-
?
|
|
346
|
-
: p.typeName;
|
|
135
|
+
? SdkTypeProgrammer_1.SdkTypeProgrammer.write(config)(importer)(p.metadata)
|
|
136
|
+
: typescript_1.default.factory.createTypeReferenceNode(p.typeName);
|
|
137
|
+
const getReturnType = (config) => (route) => typescript_1.default.factory.createTypeReferenceNode(config.propagate !== true && route.output.typeName === "void"
|
|
138
|
+
? "void"
|
|
139
|
+
: `${route.name}.Output`);
|
|
347
140
|
//# sourceMappingURL=SdkFunctionProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFunctionProgrammer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SdkFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFunctionProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ImportDictionary } from "
|
|
1
|
+
import { ImportDictionary } from "./ImportDictionary";
|
|
2
2
|
export declare namespace SdkImportWizard {
|
|
3
3
|
const Fetcher: (encrypted: boolean) => (importer: ImportDictionary) => string;
|
|
4
4
|
const HttpError: (importer: ImportDictionary) => string;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { INestiaConfig } from "../../INestiaConfig";
|
|
3
|
+
import { IRoute } from "../../structures/IRoute";
|
|
4
|
+
import { ImportDictionary } from "./ImportDictionary";
|
|
5
|
+
export declare namespace SdkNamespaceProgrammer {
|
|
6
|
+
const write: (checker: ts.TypeChecker) => (config: INestiaConfig) => (importer: ImportDictionary) => (route: IRoute, props: {
|
|
7
|
+
headers: IRoute.IParameter | undefined;
|
|
8
|
+
query: IRoute.IParameter | undefined;
|
|
9
|
+
input: IRoute.IParameter | undefined;
|
|
10
|
+
}) => ts.ModuleDeclaration;
|
|
11
|
+
}
|