@nestia/sdk 14.0.0 → 14.0.1
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 +1 -1
- package/assets/bundle/distribute/package.json +2 -2
- package/assets/bundle/distribute/tsconfig.json +15 -105
- package/lib/INestiaConfig.d.ts +19 -10
- package/lib/NestiaSdkApplication.js +58 -27
- package/lib/NestiaSdkApplication.js.map +1 -1
- package/lib/NestiaSwaggerComposer.js +11 -10
- package/lib/NestiaSwaggerComposer.js.map +1 -1
- package/lib/analyses/ConfigAnalyzer.js +4 -4
- package/lib/analyses/ConfigAnalyzer.js.map +1 -1
- package/lib/analyses/ParameterNameAnalyzer.d.ts +20 -0
- package/lib/analyses/ParameterNameAnalyzer.js +48 -0
- package/lib/analyses/ParameterNameAnalyzer.js.map +1 -0
- package/lib/analyses/PathAnalyzer.d.ts +30 -0
- package/lib/analyses/PathAnalyzer.js +108 -16
- package/lib/analyses/PathAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectControllerAnalyzer.js +2 -1
- package/lib/analyses/ReflectControllerAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectHttpOperationAnalyzer.js +7 -7
- package/lib/analyses/ReflectHttpOperationAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectHttpOperationParameterAnalyzer.js +122 -23
- package/lib/analyses/ReflectHttpOperationParameterAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectHttpOperationResponseAnalyzer.js +5 -2
- package/lib/analyses/ReflectHttpOperationResponseAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectMcpOperationAnalyzer.js +5 -2
- package/lib/analyses/ReflectMcpOperationAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectWebSocketOperationAnalyzer.js +6 -3
- package/lib/analyses/ReflectWebSocketOperationAnalyzer.js.map +1 -1
- package/lib/analyses/SecurityAnalyzer.d.ts +10 -0
- package/lib/analyses/SecurityAnalyzer.js +24 -19
- package/lib/analyses/SecurityAnalyzer.js.map +1 -1
- package/lib/analyses/SwaggerExampleAnalyzer.d.ts +15 -0
- package/lib/analyses/SwaggerExampleAnalyzer.js +20 -0
- package/lib/analyses/SwaggerExampleAnalyzer.js.map +1 -0
- package/lib/analyses/TypedHttpRouteAnalyzer.js +30 -21
- package/lib/analyses/TypedHttpRouteAnalyzer.js.map +1 -1
- package/lib/analyses/TypedWebSocketRouteAnalyzer.js +1 -1
- package/lib/analyses/TypedWebSocketRouteAnalyzer.js.map +1 -1
- package/lib/executable/internal/NestiaSdkWatcher.js +3 -3
- package/lib/executable/internal/NestiaSdkWatcher.js.map +1 -1
- package/lib/executable/sdk.js +16 -1
- package/lib/executable/sdk.js.map +1 -1
- package/lib/factories/ExpressionFactory.d.ts +3 -0
- package/lib/factories/ExpressionFactory.js +6 -2
- package/lib/factories/ExpressionFactory.js.map +1 -1
- package/lib/factories/LiteralFactory.js +3 -1
- package/lib/factories/LiteralFactory.js.map +1 -1
- package/lib/generates/SdkGenerator.js +3 -3
- package/lib/generates/SdkGenerator.js.map +1 -1
- package/lib/generates/SwaggerGenerator.js +135 -27
- package/lib/generates/SwaggerGenerator.js.map +1 -1
- package/lib/generates/internal/FilePrinter.d.ts +14 -0
- package/lib/generates/internal/FilePrinter.js +31 -0
- package/lib/generates/internal/FilePrinter.js.map +1 -1
- package/lib/generates/internal/ImportDictionary.d.ts +2 -0
- package/lib/generates/internal/ImportDictionary.js +13 -0
- package/lib/generates/internal/ImportDictionary.js.map +1 -1
- package/lib/generates/internal/SdkAliasCollection.d.ts +2 -1
- package/lib/generates/internal/SdkAliasCollection.js +8 -4
- package/lib/generates/internal/SdkAliasCollection.js.map +1 -1
- package/lib/generates/internal/SdkDistributionComposer.js +72 -14
- package/lib/generates/internal/SdkDistributionComposer.js.map +1 -1
- package/lib/generates/internal/SdkFileProgrammer.js +83 -12
- package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkHttpFunctionProgrammer.js +21 -23
- package/lib/generates/internal/SdkHttpFunctionProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkHttpNamespaceProgrammer.js +27 -34
- package/lib/generates/internal/SdkHttpNamespaceProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkHttpParameterProgrammer.d.ts +40 -1
- package/lib/generates/internal/SdkHttpParameterProgrammer.js +105 -6
- package/lib/generates/internal/SdkHttpParameterProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkHttpRouteProgrammer.js +16 -32
- package/lib/generates/internal/SdkHttpRouteProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkHttpSimulationProgrammer.js +18 -14
- package/lib/generates/internal/SdkHttpSimulationProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkMcpRouteProgrammer.js +39 -11
- package/lib/generates/internal/SdkMcpRouteProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkPathTemplate.d.ts +21 -0
- package/lib/generates/internal/SdkPathTemplate.js +50 -0
- package/lib/generates/internal/SdkPathTemplate.js.map +1 -0
- package/lib/generates/internal/SdkTypeProgrammer.js +15 -15
- package/lib/generates/internal/SdkTypeProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkTypeTagProgrammer.d.ts +20 -1
- package/lib/generates/internal/SdkTypeTagProgrammer.js +386 -67
- package/lib/generates/internal/SdkTypeTagProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkWebSocketNamespaceProgrammer.js +27 -36
- package/lib/generates/internal/SdkWebSocketNamespaceProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkWebSocketParameterProgrammer.d.ts +35 -1
- package/lib/generates/internal/SdkWebSocketParameterProgrammer.js +72 -5
- package/lib/generates/internal/SdkWebSocketParameterProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkWebSocketRouteProgrammer.js +57 -33
- package/lib/generates/internal/SdkWebSocketRouteProgrammer.js.map +1 -1
- package/lib/generates/internal/SwaggerOperationComposer.js +19 -8
- package/lib/generates/internal/SwaggerOperationComposer.js.map +1 -1
- package/lib/generates/internal/SwaggerOperationParameterComposer.d.ts +1 -1
- package/lib/generates/internal/SwaggerOperationParameterComposer.js +201 -19
- package/lib/generates/internal/SwaggerOperationParameterComposer.js.map +1 -1
- package/lib/generates/internal/SwaggerOperationResponseComposer.d.ts +2 -0
- package/lib/generates/internal/SwaggerOperationResponseComposer.js +39 -7
- package/lib/generates/internal/SwaggerOperationResponseComposer.js.map +1 -1
- package/lib/internal/legacy.d.ts +49 -18
- package/lib/internal/legacy.js +84 -25
- package/lib/internal/legacy.js.map +1 -1
- package/lib/structures/IOperationMetadata.d.ts +22 -0
- package/lib/structures/IReflectHttpOperationException.d.ts +3 -2
- package/lib/structures/IReflectHttpOperationParameter.d.ts +8 -3
- package/lib/structures/IReflectHttpOperationSuccess.d.ts +4 -3
- package/lib/structures/ITypedHttpRoute.d.ts +8 -0
- package/lib/structures/ITypedHttpRouteException.d.ts +3 -1
- package/lib/structures/ITypedHttpRouteParameter.d.ts +3 -1
- package/lib/structures/ITypedHttpRouteSuccess.d.ts +3 -1
- package/lib/structures/ITypedWebSocketRoute.d.ts +8 -0
- package/lib/utils/SourceFinder.d.ts +10 -0
- package/lib/utils/SourceFinder.js +27 -4
- package/lib/utils/SourceFinder.js.map +1 -1
- package/lib/utils/VersioningStrategy.d.ts +13 -1
- package/lib/utils/VersioningStrategy.js +24 -12
- package/lib/utils/VersioningStrategy.js.map +1 -1
- package/native/go.mod +1 -1
- package/native/go.sum +2 -2
- package/native/sdk/sdk_http_rules.go +210 -0
- package/native/sdk/sdk_metadata_json.go +73 -3
- package/native/sdk/sdk_transform.go +801 -49
- package/package.json +6 -6
- package/src/INestiaConfig.ts +19 -10
- package/src/NestiaSdkApplication.ts +63 -34
- package/src/NestiaSwaggerComposer.ts +11 -8
- package/src/analyses/ConfigAnalyzer.ts +3 -3
- package/src/analyses/ParameterNameAnalyzer.ts +51 -0
- package/src/analyses/PathAnalyzer.ts +106 -14
- package/src/analyses/ReflectControllerAnalyzer.ts +2 -1
- package/src/analyses/ReflectHttpOperationAnalyzer.ts +4 -4
- package/src/analyses/ReflectHttpOperationParameterAnalyzer.ts +122 -39
- package/src/analyses/ReflectHttpOperationResponseAnalyzer.ts +6 -7
- package/src/analyses/ReflectMcpOperationAnalyzer.ts +6 -2
- package/src/analyses/ReflectWebSocketOperationAnalyzer.ts +7 -3
- package/src/analyses/SecurityAnalyzer.ts +30 -20
- package/src/analyses/SwaggerExampleAnalyzer.ts +23 -0
- package/src/analyses/TypedHttpRouteAnalyzer.ts +29 -20
- package/src/analyses/TypedWebSocketRouteAnalyzer.ts +1 -0
- package/src/executable/internal/NestiaSdkWatcher.ts +2 -2
- package/src/executable/sdk.ts +24 -1
- package/src/factories/ExpressionFactory.ts +8 -2
- package/src/factories/LiteralFactory.ts +7 -2
- package/src/generates/SdkGenerator.ts +3 -3
- package/src/generates/SwaggerGenerator.ts +173 -32
- package/src/generates/internal/FilePrinter.ts +28 -0
- package/src/generates/internal/ImportDictionary.ts +11 -0
- package/src/generates/internal/SdkAliasCollection.ts +11 -4
- package/src/generates/internal/SdkDistributionComposer.ts +89 -15
- package/src/generates/internal/SdkFileProgrammer.ts +108 -16
- package/src/generates/internal/SdkHttpFunctionProgrammer.ts +28 -30
- package/src/generates/internal/SdkHttpNamespaceProgrammer.ts +34 -64
- package/src/generates/internal/SdkHttpParameterProgrammer.ts +193 -13
- package/src/generates/internal/SdkHttpRouteProgrammer.ts +17 -31
- package/src/generates/internal/SdkHttpSimulationProgrammer.ts +51 -14
- package/src/generates/internal/SdkMcpRouteProgrammer.ts +112 -15
- package/src/generates/internal/SdkPathTemplate.ts +73 -0
- package/src/generates/internal/SdkTypeProgrammer.ts +19 -22
- package/src/generates/internal/SdkTypeTagProgrammer.ts +506 -78
- package/src/generates/internal/SdkWebSocketNamespaceProgrammer.ts +43 -68
- package/src/generates/internal/SdkWebSocketParameterProgrammer.ts +126 -5
- package/src/generates/internal/SdkWebSocketRouteProgrammer.ts +71 -48
- package/src/generates/internal/SwaggerOperationComposer.ts +20 -6
- package/src/generates/internal/SwaggerOperationParameterComposer.ts +279 -30
- package/src/generates/internal/SwaggerOperationResponseComposer.ts +55 -11
- package/src/internal/legacy.ts +114 -26
- package/src/structures/IOperationMetadata.ts +28 -0
- package/src/structures/IReflectHttpOperationException.ts +7 -2
- package/src/structures/IReflectHttpOperationParameter.ts +9 -2
- package/src/structures/IReflectHttpOperationSuccess.ts +8 -3
- package/src/structures/ITypedHttpRoute.ts +8 -0
- package/src/structures/ITypedHttpRouteException.ts +4 -1
- package/src/structures/ITypedHttpRouteParameter.ts +3 -1
- package/src/structures/ITypedHttpRouteSuccess.ts +4 -1
- package/src/structures/ITypedWebSocketRoute.ts +8 -0
- package/src/utils/SourceFinder.ts +25 -4
- package/src/utils/VersioningStrategy.ts +28 -13
- package/lib/validators/HttpHeadersValidator.d.ts +0 -11
- package/lib/validators/HttpHeadersValidator.js +0 -15
- package/lib/validators/HttpHeadersValidator.js.map +0 -1
- package/lib/validators/HttpQueryValidator.d.ts +0 -10
- package/lib/validators/HttpQueryValidator.js +0 -14
- package/lib/validators/HttpQueryValidator.js.map +0 -1
- package/src/validators/HttpHeadersValidator.ts +0 -12
- package/src/validators/HttpQueryValidator.ts +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkAliasCollection.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkAliasCollection.ts"],"names":[],"mappings":";;;AAAA,2CAKuB;AAEvB,6DAA0D;AAC1D,kDAA+D;AAM/D,+CAA4C;AAE5C,6EAA0E;AAC1E,2DAAwD;
|
|
1
|
+
{"version":3,"file":"SdkAliasCollection.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkAliasCollection.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,17 +35,30 @@ var SdkDistributionComposer;
|
|
|
35
35
|
for (const file of ["package.json", "tsconfig.json"])
|
|
36
36
|
yield replace({ root, output })(file);
|
|
37
37
|
// INSTALL PACKAGES
|
|
38
|
+
//
|
|
39
|
+
// The package compiles with ttsc, which applies the typia transform the
|
|
40
|
+
// SDK's `assert` and `simulate` code needs through typia's own plugin;
|
|
41
|
+
// typia removed its `setup` command in 14.0.0.
|
|
38
42
|
const v = yield dependencies({
|
|
43
|
+
root,
|
|
39
44
|
websocket: props.websocket,
|
|
40
45
|
});
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
// one install per dependency kind: each npm run resolves and reifies the
|
|
47
|
+
// whole tree again, and the runtime set lands together or not at all, so
|
|
48
|
+
// an interrupted setup never leaves @nestia/fetcher, which marks the
|
|
49
|
+
// package configured, without its peers
|
|
50
|
+
execute(`npm install --save-dev rimraf ttsc@${v.ttsc} typescript@${v.typescript}`);
|
|
51
|
+
execute([
|
|
52
|
+
"npm install --save",
|
|
53
|
+
`@nestia/fetcher@${v.version}`,
|
|
54
|
+
`typia@${v.typia}`,
|
|
55
|
+
...(props.mcp && v.mcp !== undefined
|
|
56
|
+
? [`@modelcontextprotocol/sdk@${v.mcp}`]
|
|
57
|
+
: []),
|
|
58
|
+
...(props.websocket && v.tgrid !== undefined
|
|
59
|
+
? [`tgrid@${v.tgrid}`]
|
|
60
|
+
: []),
|
|
61
|
+
].join(" "));
|
|
49
62
|
}
|
|
50
63
|
finally {
|
|
51
64
|
process.chdir(root);
|
|
@@ -77,21 +90,66 @@ var SdkDistributionComposer;
|
|
|
77
90
|
.split("${current}")
|
|
78
91
|
.join(current), "utf8");
|
|
79
92
|
});
|
|
93
|
+
/**
|
|
94
|
+
* The version of a package the project installed, exactly: the staged package
|
|
95
|
+
* must run the typia, and compile with the ttsc and TypeScript, the project
|
|
96
|
+
* itself uses, with the tgrid and MCP SDK its WebSocket and MCP functions
|
|
97
|
+
* import. `@nestia/sdk`'s own specifier is only the fallback, and a
|
|
98
|
+
* workspace's `catalog:` one names no version npm could install.
|
|
99
|
+
*/
|
|
100
|
+
const installed = (root, name, fallback) => { var _a; return (_a = manifestVersion(root, name)) !== null && _a !== void 0 ? _a : (fallback !== undefined && fallback.startsWith("catalog:") === false
|
|
101
|
+
? fallback
|
|
102
|
+
: undefined); };
|
|
103
|
+
/**
|
|
104
|
+
* The version in the manifest of the package as installed. Not every package
|
|
105
|
+
* exports its `package.json`, as tgrid does not, and a subpath export may map
|
|
106
|
+
* it to a nested manifest of no name, as `@modelcontextprotocol/sdk` maps it
|
|
107
|
+
* to `dist/cjs/package.json`; so the manifest is the nearest `package.json`
|
|
108
|
+
* naming the package, at or above what the request resolves to.
|
|
109
|
+
*/
|
|
110
|
+
const manifestVersion = (root, name) => {
|
|
111
|
+
for (const request of [`${name}/package.json`, name]) {
|
|
112
|
+
let file;
|
|
113
|
+
try {
|
|
114
|
+
file = require.resolve(request, { paths: [root, __dirname] });
|
|
115
|
+
}
|
|
116
|
+
catch (_a) {
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
for (let directory = path_1.default.dirname(file);;) {
|
|
120
|
+
try {
|
|
121
|
+
const json = JSON.parse(fs_1.default.readFileSync(path_1.default.join(directory, "package.json"), "utf8"));
|
|
122
|
+
if (json.name === name &&
|
|
123
|
+
typeof json.version === "string" &&
|
|
124
|
+
json.version.length !== 0)
|
|
125
|
+
return json.version;
|
|
126
|
+
}
|
|
127
|
+
catch (_b) { }
|
|
128
|
+
const parent = path_1.default.dirname(directory);
|
|
129
|
+
if (parent === directory)
|
|
130
|
+
break;
|
|
131
|
+
directory = parent;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
return undefined;
|
|
135
|
+
};
|
|
80
136
|
const dependencies = (opts) => __awaiter(this, void 0, void 0, function* () {
|
|
81
137
|
const content = yield fs_1.default.promises.readFile(__dirname + "/../../../package.json", "utf8");
|
|
82
138
|
const json = JSON.parse(content);
|
|
83
139
|
const dependencies = Object.assign(Object.assign({}, json.devDependencies), json.dependencies);
|
|
84
|
-
const required = (key) => {
|
|
85
|
-
const value = key === "version" ? json.version : dependencies[key];
|
|
140
|
+
const required = (key, value) => {
|
|
86
141
|
if (typeof value !== "string" || value.length === 0)
|
|
87
142
|
throw new Error(`Unable to resolve ${key} version for SDK distribution.`);
|
|
88
143
|
return value;
|
|
89
144
|
};
|
|
145
|
+
const version = (name) => installed(opts.root, name, dependencies[name]);
|
|
90
146
|
return {
|
|
91
|
-
version: required("version
|
|
92
|
-
typia: required("typia"),
|
|
93
|
-
|
|
94
|
-
|
|
147
|
+
version: required("@nestia/fetcher", json.version),
|
|
148
|
+
typia: required("typia", version("typia")),
|
|
149
|
+
ttsc: required("ttsc", version("ttsc")),
|
|
150
|
+
typescript: required("typescript", version("typescript")),
|
|
151
|
+
tgrid: opts.websocket ? version("tgrid") : undefined,
|
|
152
|
+
mcp: version("@modelcontextprotocol/sdk"),
|
|
95
153
|
};
|
|
96
154
|
});
|
|
97
155
|
})(SdkDistributionComposer || (exports.SdkDistributionComposer = SdkDistributionComposer = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkDistributionComposer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkDistributionComposer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kEAA+B;AAC/B,4CAAoB;AACpB,gDAAwB;AAIxB,IAAiB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"SdkDistributionComposer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkDistributionComposer.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ exports.SdkFileProgrammer = void 0;
|
|
|
16
16
|
const factory_1 = require("@ttsc/factory");
|
|
17
17
|
const fs_1 = __importDefault(require("fs"));
|
|
18
18
|
const MapUtil_1 = require("../../utils/MapUtil");
|
|
19
|
+
const StringUtil_1 = require("../../utils/StringUtil");
|
|
19
20
|
const FilePrinter_1 = require("./FilePrinter");
|
|
20
21
|
const ImportDictionary_1 = require("./ImportDictionary");
|
|
21
22
|
const SdkHttpRouteProgrammer_1 = require("./SdkHttpRouteProgrammer");
|
|
@@ -58,18 +59,61 @@ var SdkFileProgrammer;
|
|
|
58
59
|
if (statements.length && directory.routes.length)
|
|
59
60
|
statements.push(FilePrinter_1.FilePrinter.enter());
|
|
60
61
|
// ITERATE ROUTES
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
62
|
+
const write = (locals) => {
|
|
63
|
+
const importer = new ImportDictionary_1.ImportDictionary(`${outDir}/index.ts`);
|
|
64
|
+
const output = [];
|
|
65
|
+
directory.routes.forEach((route, i) => {
|
|
66
|
+
if (!(project.config.clone === true && route.protocol === "http"))
|
|
67
|
+
importer.declarations(route.imports);
|
|
68
|
+
const local = locals.get(route);
|
|
69
|
+
const target = local === undefined ? route : Object.assign(Object.assign({}, route), { name: local });
|
|
70
|
+
const written = target.protocol === "http"
|
|
71
|
+
? SdkHttpRouteProgrammer_1.SdkHttpRouteProgrammer.write(project)(importer)(target)
|
|
72
|
+
: target.protocol === "websocket"
|
|
73
|
+
? SdkWebSocketRouteProgrammer_1.SdkWebSocketRouteProgrammer.write(project)(importer)(target)
|
|
74
|
+
: SdkMcpRouteProgrammer_1.SdkMcpRouteProgrammer.write(project)(importer)(target);
|
|
75
|
+
if (local !== undefined) {
|
|
76
|
+
written.forEach(unexport);
|
|
77
|
+
written.push(factory_1.factory.createExportDeclaration(undefined, false, factory_1.factory.createNamedExports([
|
|
78
|
+
factory_1.factory.createExportSpecifier(false, local, route.name),
|
|
79
|
+
]), undefined));
|
|
80
|
+
}
|
|
81
|
+
output.push(...written);
|
|
82
|
+
if (i !== directory.routes.length - 1)
|
|
83
|
+
output.push(FilePrinter_1.FilePrinter.enter());
|
|
84
|
+
});
|
|
85
|
+
return { importer, statements: output };
|
|
86
|
+
};
|
|
87
|
+
// A route's function and namespace are declared in the module scope,
|
|
88
|
+
// where the file's imports and the globals its bodies reference live
|
|
89
|
+
// too. A route named like one of them shadows it for the whole file, or
|
|
90
|
+
// conflicts with the import, so the SDK would not compile (#1647); a
|
|
91
|
+
// method named `tags` whose path parameter is typed with `tags.Format`
|
|
92
|
+
// is enough. Its public name cannot change, so it is declared under a
|
|
93
|
+
// local one and exported as itself.
|
|
94
|
+
let file = write(new Map());
|
|
95
|
+
const scope = new Set([
|
|
96
|
+
...file.importer.locals(),
|
|
97
|
+
...MODULE_GLOBALS,
|
|
98
|
+
]);
|
|
99
|
+
const shadowing = directory.routes.filter((r) => scope.has(r.name));
|
|
100
|
+
if (shadowing.length !== 0) {
|
|
101
|
+
// each local name distinct from the scope, the routes, and the other
|
|
102
|
+
// locals
|
|
103
|
+
const taken = [
|
|
104
|
+
...scope,
|
|
105
|
+
...directory.routes.map((r) => r.name),
|
|
106
|
+
];
|
|
107
|
+
const locals = new Map();
|
|
108
|
+
for (const route of shadowing) {
|
|
109
|
+
const local = StringUtil_1.StringUtil.escapeDuplicate(taken)(route.name);
|
|
110
|
+
taken.push(local);
|
|
111
|
+
locals.set(route, local);
|
|
112
|
+
}
|
|
113
|
+
file = write(locals);
|
|
114
|
+
}
|
|
115
|
+
const importer = file.importer;
|
|
116
|
+
statements.push(...file.statements);
|
|
73
117
|
// FINALIZE THE CONTENT
|
|
74
118
|
if (directory.routes.length !== 0)
|
|
75
119
|
statements.push(...importer.toStatements(outDir), ...(!importer.empty() && statements.length
|
|
@@ -87,4 +131,31 @@ var SdkFileProgrammer;
|
|
|
87
131
|
});
|
|
88
132
|
});
|
|
89
133
|
})(SdkFileProgrammer || (exports.SdkFileProgrammer = SdkFileProgrammer = {}));
|
|
134
|
+
/**
|
|
135
|
+
* Globals the generated route bodies reference, and names TypeScript reserves
|
|
136
|
+
* in a module's top-level scope: `Promise` in one with async functions, and
|
|
137
|
+
* `require` and `exports` in a CommonJS one.
|
|
138
|
+
*/
|
|
139
|
+
const MODULE_GLOBALS = [
|
|
140
|
+
"Array",
|
|
141
|
+
"Error",
|
|
142
|
+
"JSON",
|
|
143
|
+
"Object",
|
|
144
|
+
"Promise",
|
|
145
|
+
"ReadableStream",
|
|
146
|
+
"String",
|
|
147
|
+
"URLSearchParams",
|
|
148
|
+
"encodeURIComponent",
|
|
149
|
+
"exports",
|
|
150
|
+
"require",
|
|
151
|
+
"undefined",
|
|
152
|
+
];
|
|
153
|
+
/** Drops the `export` modifier of a route's function or namespace. */
|
|
154
|
+
const unexport = (node) => {
|
|
155
|
+
const declaration = node;
|
|
156
|
+
if ((declaration.kind === "FunctionDeclaration" ||
|
|
157
|
+
declaration.kind === "ModuleDeclaration") &&
|
|
158
|
+
declaration.modifiers !== undefined)
|
|
159
|
+
declaration.modifiers = declaration.modifiers.filter((m) => m.token !== factory_1.SyntaxKind.ExportKeyword);
|
|
160
|
+
};
|
|
90
161
|
//# sourceMappingURL=SdkFileProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFileProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"SdkFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFileProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,18 +5,18 @@ const factory_1 = require("@ttsc/factory");
|
|
|
5
5
|
const IdentifierFactory_1 = require("../../factories/IdentifierFactory");
|
|
6
6
|
const TypeFactory_1 = require("../../factories/TypeFactory");
|
|
7
7
|
const legacy_1 = require("../../internal/legacy");
|
|
8
|
-
const StringUtil_1 = require("../../utils/StringUtil");
|
|
9
8
|
const SdkAliasCollection_1 = require("./SdkAliasCollection");
|
|
10
9
|
const SdkHttpParameterProgrammer_1 = require("./SdkHttpParameterProgrammer");
|
|
11
10
|
const SdkImportWizard_1 = require("./SdkImportWizard");
|
|
12
11
|
var SdkHttpFunctionProgrammer;
|
|
13
12
|
(function (SdkHttpFunctionProgrammer) {
|
|
14
13
|
SdkHttpFunctionProgrammer.write = (project) => (importer) => (route) => {
|
|
14
|
+
const names = SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getNames({ project, route });
|
|
15
15
|
return factory_1.factory.createFunctionDeclaration([
|
|
16
16
|
factory_1.factory.createModifier(factory_1.SyntaxKind.ExportKeyword),
|
|
17
17
|
factory_1.factory.createModifier(factory_1.SyntaxKind.AsyncKeyword),
|
|
18
18
|
], undefined, route.name, undefined, [
|
|
19
|
-
IdentifierFactory_1.IdentifierFactory.parameter(
|
|
19
|
+
IdentifierFactory_1.IdentifierFactory.parameter(names.connection, factory_1.factory.createTypeReferenceNode(SdkImportWizard_1.SdkImportWizard.IConnection(importer), route.headerObject !== null
|
|
20
20
|
? [factory_1.factory.createTypeReferenceNode(`${route.name}.Headers`)]
|
|
21
21
|
: undefined)),
|
|
22
22
|
...SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getParameterDeclarations({
|
|
@@ -32,12 +32,9 @@ var SdkHttpFunctionProgrammer;
|
|
|
32
32
|
(0, legacy_1.sizeOf)(route.success.metadata) !== 0
|
|
33
33
|
? factory_1.factory.createTypeReferenceNode(`${route.name}.Output`)
|
|
34
34
|
: factory_1.factory.createTypeReferenceNode("void"),
|
|
35
|
-
]), factory_1.factory.createBlock(writeBody(project)(importer)(route), true));
|
|
35
|
+
]), factory_1.factory.createBlock(writeBody(project)(importer)(route)(names), true));
|
|
36
36
|
};
|
|
37
|
-
const writeBody = (project) => (importer) => (route) => {
|
|
38
|
-
const access = (name) => project.config.keyword === true
|
|
39
|
-
? factory_1.factory.createPropertyAccessExpression(factory_1.factory.createIdentifier("props"), name)
|
|
40
|
-
: factory_1.factory.createIdentifier(name);
|
|
37
|
+
const writeBody = (project) => (importer) => (route) => (names) => {
|
|
41
38
|
const fetch = () => { var _a, _b; var _c; return factory_1.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.Fetcher(!!((_a = route.body) === null || _a === void 0 ? void 0 : _a.encrypted) || route.success.encrypted)(importer)), project.config.propagate ? "propagate" : "fetch"), project.config.propagate
|
|
42
39
|
? route.method.toLowerCase() === "get" ||
|
|
43
40
|
route.method.toLowerCase() === "head"
|
|
@@ -46,13 +43,13 @@ var SdkHttpFunctionProgrammer;
|
|
|
46
43
|
: undefined, [
|
|
47
44
|
route.body && route.body.contentType !== "multipart/form-data"
|
|
48
45
|
? factory_1.factory.createObjectLiteralExpression([
|
|
49
|
-
factory_1.factory.createSpreadAssignment(factory_1.factory.createIdentifier(
|
|
46
|
+
factory_1.factory.createSpreadAssignment(factory_1.factory.createIdentifier(names.connection)),
|
|
50
47
|
factory_1.factory.createPropertyAssignment("headers", factory_1.factory.createObjectLiteralExpression([
|
|
51
|
-
factory_1.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(
|
|
48
|
+
factory_1.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(names.connection), "headers")),
|
|
52
49
|
factory_1.factory.createPropertyAssignment(factory_1.factory.createStringLiteral("Content-Type"), factory_1.factory.createStringLiteral((_c = (_b = route.body) === null || _b === void 0 ? void 0 : _b.contentType) !== null && _c !== void 0 ? _c : "application/json")),
|
|
53
50
|
], true)),
|
|
54
51
|
], true)
|
|
55
|
-
: factory_1.factory.createIdentifier(
|
|
52
|
+
: factory_1.factory.createIdentifier(names.connection),
|
|
56
53
|
factory_1.factory.createObjectLiteralExpression([
|
|
57
54
|
factory_1.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(route.name), "METADATA")),
|
|
58
55
|
factory_1.factory.createPropertyAssignment("template", IdentifierFactory_1.IdentifierFactory.access(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(route.name), "METADATA"), "path")),
|
|
@@ -62,7 +59,7 @@ var SdkHttpFunctionProgrammer;
|
|
|
62
59
|
body: false,
|
|
63
60
|
}))),
|
|
64
61
|
], true),
|
|
65
|
-
...(route.body ? [access(route.body
|
|
62
|
+
...(route.body ? [names.access(route.body)] : []),
|
|
66
63
|
...(project.config.json &&
|
|
67
64
|
route.body !== null &&
|
|
68
65
|
(route.body.contentType === "application/json" ||
|
|
@@ -71,8 +68,8 @@ var SdkHttpFunctionProgrammer;
|
|
|
71
68
|
: []),
|
|
72
69
|
]); };
|
|
73
70
|
const output = (awaiter) => project.config.simulate
|
|
74
|
-
? factory_1.factory.createConditionalExpression(factory_1.factory.createStrictEquality(factory_1.factory.createTrue(), factory_1.factory.createIdentifier("
|
|
75
|
-
factory_1.factory.createIdentifier(
|
|
71
|
+
? factory_1.factory.createConditionalExpression(factory_1.factory.createStrictEquality(factory_1.factory.createTrue(), IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(names.connection), "simulate")), undefined, factory_1.factory.createCallExpression(factory_1.factory.createIdentifier(`${route.name}.simulate`), [], [
|
|
72
|
+
factory_1.factory.createIdentifier(names.connection),
|
|
76
73
|
...SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getArguments({
|
|
77
74
|
project,
|
|
78
75
|
route,
|
|
@@ -84,31 +81,32 @@ var SdkHttpFunctionProgrammer;
|
|
|
84
81
|
: fetch();
|
|
85
82
|
return [
|
|
86
83
|
...(project.config.assert
|
|
87
|
-
? SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getSignificant(route, true).map((p) => factory_1.factory.createExpressionStatement(factory_1.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.typia(importer)), "assert"), [factory_1.factory.createTypeQueryNode(access(p
|
|
84
|
+
? SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getSignificant(route, true).map((p) => factory_1.factory.createExpressionStatement(factory_1.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.typia(importer)), "assert"), [factory_1.factory.createTypeQueryNode(names.access(p))], [names.access(p)])))
|
|
88
85
|
: []),
|
|
89
86
|
...(route.success.setHeaders.length === 0
|
|
90
87
|
? [factory_1.factory.createReturnStatement(output(false))]
|
|
91
|
-
: writeSetHeaders(project)(importer)(route)(output(true))),
|
|
88
|
+
: writeSetHeaders(project)(importer)(route)(names)(output(true))),
|
|
92
89
|
];
|
|
93
90
|
};
|
|
94
|
-
const writeSetHeaders = (project) => (importer) => (route) => (condition) => {
|
|
91
|
+
const writeSetHeaders = (project) => (importer) => (route) => (names) => (condition) => {
|
|
95
92
|
const accessor = (x) => (y) => x[0] === "[" ? `${x}${y}` : `${x}.${y}`;
|
|
96
|
-
const output =
|
|
97
|
-
|
|
98
|
-
...SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getSignificant(route, true).map((p) => p.name),
|
|
99
|
-
])("output");
|
|
100
|
-
const headers = accessor("connection")("headers");
|
|
93
|
+
const output = names.output;
|
|
94
|
+
const headers = accessor(names.connection)("headers");
|
|
101
95
|
const data = project.config.propagate
|
|
102
96
|
? accessor(output)("data")
|
|
103
97
|
: output;
|
|
104
98
|
const assigners = [
|
|
105
99
|
factory_1.factory.createBinaryExpression(factory_1.factory.createIdentifier(headers), factory_1.factory.createToken(factory_1.SyntaxKind.QuestionQuestionEqualsToken), factory_1.factory.createObjectLiteralExpression([])),
|
|
106
|
-
...route.success.setHeaders.map((tuple) =>
|
|
100
|
+
...route.success.setHeaders.map((tuple) => tuple.type === "assigner"
|
|
107
101
|
? factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("Object.assign"), [], [
|
|
108
102
|
factory_1.factory.createIdentifier(headers),
|
|
109
103
|
factory_1.factory.createIdentifier(accessor(data)(tuple.source)),
|
|
110
104
|
])
|
|
111
|
-
: factory_1.factory.createBinaryExpression(
|
|
105
|
+
: factory_1.factory.createBinaryExpression(
|
|
106
|
+
// a target is a header name, which usually is no identifier
|
|
107
|
+
tuple.target !== undefined
|
|
108
|
+
? IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(headers), tuple.target)
|
|
109
|
+
: factory_1.factory.createIdentifier(accessor(headers)(tuple.source)), factory_1.factory.createToken(factory_1.SyntaxKind.EqualsToken), factory_1.factory.createIdentifier(accessor(data)(tuple.source)))),
|
|
112
110
|
].map(factory_1.factory.createExpressionStatement);
|
|
113
111
|
return [
|
|
114
112
|
factory_1.factory.createVariableStatement([], factory_1.factory.createVariableDeclarationList([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkHttpFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkHttpFunctionProgrammer.ts"],"names":[],"mappings":";;;AAAA,2CAUuB;AAEvB,yEAAsE;AACtE,6DAA0D;AAC1D,kDAA+C;
|
|
1
|
+
{"version":3,"file":"SdkHttpFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkHttpFunctionProgrammer.ts"],"names":[],"mappings":";;;AAAA,2CAUuB;AAEvB,yEAAsE;AACtE,6DAA0D;AAC1D,kDAA+C;AAI/C,6DAA0D;AAC1D,6EAA0E;AAC1E,uDAAoD;AAEpD,IAAiB,yBAAyB,CAyQzC;AAzQD,WAAiB,yBAAyB;IAC3B,+BAAK,GAChB,CAAC,OAAuB,EAAE,EAAE,CAC5B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAsB,EAAQ,EAAE;QAC/B,MAAM,KAAK,GACT,uDAA0B,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,OAAO,iBAAO,CAAC,yBAAyB,CACtC;YACE,iBAAO,CAAC,cAAc,CAAC,oBAAU,CAAC,aAAa,CAAC;YAChD,iBAAO,CAAC,cAAc,CAAC,oBAAU,CAAC,YAAY,CAAC;SAChD,EACD,SAAS,EACT,KAAK,CAAC,IAAI,EACV,SAAS,EACT;YACE,qCAAiB,CAAC,SAAS,CACzB,KAAK,CAAC,UAAU,EAChB,iBAAO,CAAC,uBAAuB,CAC7B,iCAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,EACrC,KAAK,CAAC,YAAY,KAAK,IAAI;gBACzB,CAAC,CAAC,CAAC,iBAAO,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC;gBAC5D,CAAC,CAAC,SAAS,CACd,CACF;YACD,GAAI,uDAA0B,CAAC,wBAAwB,CAAC;gBACtD,OAAO;gBACP,QAAQ;gBACR,KAAK;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;aACb,CAA4B;SAC9B,EACD,iBAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE;YACzC,OAAO,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI;gBACjC,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI;gBAC7B,IAAA,eAAM,EAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAClC,CAAC,CAAC,iBAAO,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,IAAI,SAAS,CAAC;gBACzD,CAAC,CAAC,iBAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;SAC5C,CAAC,EACF,iBAAO,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CACtE,CAAC;IACJ,CAAC,CAAC;IAEJ,MAAM,SAAS,GACb,CAAC,OAAuB,EAAE,EAAE,CAC5B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAsB,EAAE,EAAE,CAC3B,CAAC,KAAwC,EAAe,EAAE;QACxD,MAAM,KAAK,GAAG,GAAG,EAAE,8BACjB,iBAAO,CAAC,oBAAoB,CAC1B,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CACtB,iCAAe,CAAC,OAAO,CACrB,CAAC,EAAC,MAAA,KAAK,CAAC,IAAI,0CAAE,SAAS,CAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CACnD,CAAC,QAAQ,CAAC,CACZ,EACD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CACjD,EACD,OAAO,CAAC,MAAM,CAAC,SAAS;YACtB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK;gBACpC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM;gBACrC,CAAC,CAAC,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5D,CAAC,CAAC,SAAS,EACb;YACE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,qBAAqB;gBAC5D,CAAC,CAAC,iBAAO,CAAC,6BAA6B,CACnC;oBACE,iBAAO,CAAC,sBAAsB,CAC5B,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAC3C;oBACD,iBAAO,CAAC,wBAAwB,CAC9B,SAAS,EACT,iBAAO,CAAC,6BAA6B,CACnC;wBACE,iBAAO,CAAC,sBAAsB,CAC5B,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,EAC1C,SAAS,CACV,CACF;wBACD,iBAAO,CAAC,wBAAwB,CAC9B,iBAAO,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAC3C,iBAAO,CAAC,mBAAmB,OACzB,MAAA,KAAK,CAAC,IAAI,0CAAE,WAAW,mCAAI,kBAAkB,CAC9C,CACF;qBACF,EACD,IAAI,CACL,CACF;iBACF,EACD,IAAI,CACL;gBACH,CAAC,CAAC,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC;YAC9C,iBAAO,CAAC,6BAA6B,CACnC;gBACE,iBAAO,CAAC,sBAAsB,CAC5B,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,EACpC,UAAU,CACX,CACF;gBACD,iBAAO,CAAC,wBAAwB,CAC9B,UAAU,EACV,qCAAiB,CAAC,MAAM,CACtB,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,EACpC,UAAU,CACX,EACD,MAAM,CACP,CACF;gBACD,iBAAO,CAAC,wBAAwB,CAC9B,MAAM,EACN,iBAAO,CAAC,oBAAoB,CAC1B,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,EACpC,MAAM,CACP,EACD,SAAS,EACT,uDAA0B,CAAC,YAAY,CAAC;oBACtC,OAAO;oBACP,KAAK;oBACL,IAAI,EAAE,KAAK;iBACZ,CAAiB,CACnB,CACF;aACF,EACD,IAAI,CACL;YACD,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI;gBACvB,KAAK,CAAC,IAAI,KAAK,IAAI;gBACnB,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,kBAAkB;oBAC5C,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;gBAC9B,CAAC,CAAC,CAAC,iBAAO,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC;gBACvD,CAAC,CAAC,EAAE,CAAC;SACR,CACF,GAAA,CAAC;QACJ,MAAM,MAAM,GAAG,CAAC,OAAgB,EAAE,EAAE,CAClC,OAAO,CAAC,MAAM,CAAC,QAAQ;YACrB,CAAC,CAAC,iBAAO,CAAC,2BAA2B,CACjC,iBAAO,CAAC,oBAAoB,CAC1B,iBAAO,CAAC,UAAU,EAAE,EACpB,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,EAC1C,UAAU,CACX,CACF,EACD,SAAS,EACT,iBAAO,CAAC,oBAAoB,CAC1B,iBAAO,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,IAAI,WAAW,CAAC,EAClD,EAAE,EACF;gBACE,iBAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC1C,GAAI,uDAA0B,CAAC,YAAY,CAAC;oBAC1C,OAAO;oBACP,KAAK;oBACL,IAAI,EAAE,IAAI;iBACX,CAAkB;aACpB,CACF,EACD,SAAS,EACT,OAAO,CAAC,CAAC,CAAC,iBAAO,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAC3D;YACH,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,iBAAO,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;gBACxC,CAAC,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO;YACL,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;gBACvB,CAAC,CAAC,uDAA0B,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/D,iBAAO,CAAC,yBAAyB,CAC/B,iBAAO,CAAC,oBAAoB,CAC1B,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,iCAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EACzD,QAAQ,CACT,EACD,CAAC,iBAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAe,CAAC,CAAC,EAC5D,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAClB,CACF,CACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;gBACvC,CAAC,CAAC,CAAC,iBAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChD,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SACpE,CAAC;IACJ,CAAC,CAAC;IAEJ,MAAM,eAAe,GACnB,CAAC,OAAuB,EAAE,EAAE,CAC5B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAsB,EAAE,EAAE,CAC3B,CAAC,KAAwC,EAAE,EAAE,CAC7C,CAAC,SAAqB,EAAe,EAAE;QACrC,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAS,EAAE,EAAE,CAC5C,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAW,KAAK,CAAC,MAAM,CAAC;QACpC,MAAM,OAAO,GAAW,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAW,OAAO,CAAC,MAAM,CAAC,SAAS;YAC3C,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC,MAAM,CAAC;QAEX,MAAM,SAAS,GAAgB;YAC7B,iBAAO,CAAC,sBAAsB,CAC5B,iBAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACjC,iBAAO,CAAC,WAAW,CAAC,oBAAU,CAAC,2BAA2B,CAAC,EAC3D,iBAAO,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAC1C;YACD,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACxC,KAAK,CAAC,IAAI,KAAK,UAAU;gBACvB,CAAC,CAAC,iBAAO,CAAC,oBAAoB,CAC1B,iBAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,EACzC,EAAE,EACF;oBACE,iBAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBACjC,iBAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBACvD,CACF;gBACH,CAAC,CAAC,iBAAO,CAAC,sBAAsB;gBAC5B,4DAA4D;gBAC5D,KAAK,CAAC,MAAM,KAAK,SAAS;oBACxB,CAAC,CAAC,qCAAiB,CAAC,MAAM,CACtB,iBAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACjC,KAAK,CAAC,MAAM,CACb;oBACH,CAAC,CAAC,iBAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAC7D,iBAAO,CAAC,WAAW,CAAC,oBAAU,CAAC,WAAW,CAAC,EAC3C,iBAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CACvD,CACN;SACF,CAAC,GAAG,CAAC,iBAAO,CAAC,yBAAyB,CAAC,CAAC;QACzC,OAAO;YACL,iBAAO,CAAC,uBAAuB,CAC7B,EAAE,EACF,iBAAO,CAAC,6BAA6B,CACnC;gBACE,iBAAO,CAAC,yBAAyB,CAC/B,MAAM,EACN,SAAS,EACT,uCAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAC5C,KAAK,CACM,EACb,SAAS,CACV;aACF,EACD,mBAAS,CAAC,KAAK,CAChB,CACF;YACD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS;gBAC1B,CAAC,CAAC;oBACE,iBAAO,CAAC,iBAAiB,CACvB,iBAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EACrD,SAAS,CAAC,MAAM,KAAK,CAAC;wBACpB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE;wBACf,CAAC,CAAC,iBAAO,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,EACxC,SAAS,CACV;iBACF;gBACH,CAAC,CAAC,SAAS,CAAC;YACd,iBAAO,CAAC,qBAAqB,CAAC,iBAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;SAChE,CAAC;IACJ,CAAC,CAAC;AACN,CAAC,EAzQgB,yBAAyB,aAAzB,yBAAyB,GAAzB,yBAAyB,QAyQzC"}
|
|
@@ -13,6 +13,7 @@ const SdkAliasCollection_1 = require("./SdkAliasCollection");
|
|
|
13
13
|
const SdkHttpParameterProgrammer_1 = require("./SdkHttpParameterProgrammer");
|
|
14
14
|
const SdkHttpSimulationProgrammer_1 = require("./SdkHttpSimulationProgrammer");
|
|
15
15
|
const SdkImportWizard_1 = require("./SdkImportWizard");
|
|
16
|
+
const SdkPathTemplate_1 = require("./SdkPathTemplate");
|
|
16
17
|
var SdkHttpNamespaceProgrammer;
|
|
17
18
|
(function (SdkHttpNamespaceProgrammer) {
|
|
18
19
|
SdkHttpNamespaceProgrammer.write = (project) => (importer) => (route) => {
|
|
@@ -99,65 +100,57 @@ var SdkHttpNamespaceProgrammer;
|
|
|
99
100
|
}), undefined, undefined, body));
|
|
100
101
|
const parameters = SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getSignificant(route, false);
|
|
101
102
|
if (parameters.length === 0)
|
|
102
|
-
return out(
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
if (split.length === 1)
|
|
107
|
-
return factory_1.factory.createStringLiteral(route.path);
|
|
108
|
-
return factory_1.factory.createTemplateExpression(factory_1.factory.createTemplateHead(split[0]), split.slice(1).map((s, i, arr) => {
|
|
109
|
-
const name = s.split("/")[0];
|
|
110
|
-
return factory_1.factory.createTemplateSpan(factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("encodeURIComponent"), undefined, [
|
|
111
|
-
factory_1.factory.createBinaryExpression(factory_1.factory.createCallChain(factory_1.factory.createPropertyAccessChain(factory_1.factory.createIdentifier(access(route.pathParameters.find((p) => p.field === name)
|
|
112
|
-
.name)), factory_1.factory.createToken(factory_1.SyntaxKind.QuestionDotToken), "toString"), undefined, undefined, []), factory_1.factory.createToken(factory_1.SyntaxKind.QuestionQuestionToken), factory_1.factory.createStringLiteral("null")),
|
|
113
|
-
]), (i !== arr.length - 1
|
|
114
|
-
? factory_1.factory.createTemplateMiddle
|
|
115
|
-
: factory_1.factory.createTemplateTail)(s.substring(name.length)));
|
|
103
|
+
return out(SdkPathTemplate_1.SdkPathTemplate.compose({
|
|
104
|
+
importer,
|
|
105
|
+
path: route.path,
|
|
106
|
+
argument: () => factory_1.factory.createIdentifier("undefined"),
|
|
116
107
|
}));
|
|
117
|
-
};
|
|
108
|
+
const names = SdkHttpParameterProgrammer_1.SdkHttpParameterProgrammer.getNames({ project, route });
|
|
109
|
+
const template = () => SdkPathTemplate_1.SdkPathTemplate.compose({
|
|
110
|
+
importer,
|
|
111
|
+
path: route.path,
|
|
112
|
+
argument: (name) => names.access(route.pathParameters.find((p) => p.field === name)),
|
|
113
|
+
});
|
|
118
114
|
if (route.queryObject === null && route.queryParameters.length === 0)
|
|
119
115
|
return out(template());
|
|
120
116
|
const block = (expr) => {
|
|
121
|
-
const
|
|
122
|
-
? computeName("_" + str)
|
|
123
|
-
: str;
|
|
124
|
-
const variables = computeName("variables");
|
|
117
|
+
const variables = names.variables;
|
|
125
118
|
return factory_1.factory.createBlock([
|
|
126
119
|
local(variables)("URLSearchParams")(factory_1.factory.createNewExpression(factory_1.factory.createIdentifier("URLSearchParams"), [], [])),
|
|
127
120
|
factory_1.factory.createForOfStatement(undefined, factory_1.factory.createVariableDeclarationList([
|
|
128
121
|
factory_1.factory.createVariableDeclaration(factory_1.factory.createArrayBindingPattern([
|
|
129
|
-
factory_1.factory.createBindingElement(undefined, undefined, factory_1.factory.createIdentifier(
|
|
130
|
-
factory_1.factory.createBindingElement(undefined, undefined, factory_1.factory.createIdentifier(
|
|
122
|
+
factory_1.factory.createBindingElement(undefined, undefined, factory_1.factory.createIdentifier(names.key), undefined),
|
|
123
|
+
factory_1.factory.createBindingElement(undefined, undefined, factory_1.factory.createIdentifier(names.value), undefined),
|
|
131
124
|
]), undefined, undefined, undefined),
|
|
132
|
-
], factory_1.NodeFlags.Const), factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("Object.entries"), undefined, [factory_1.factory.createAsExpression(expr, TypeFactory_1.TypeFactory.keyword("any"))]), factory_1.factory.createIfStatement(factory_1.factory.createStrictEquality(factory_1.factory.createIdentifier("undefined"), factory_1.factory.createIdentifier(
|
|
133
|
-
factory_1.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter(
|
|
134
|
-
factory_1.factory.createIdentifier(
|
|
135
|
-
factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("String"), undefined, [factory_1.factory.createIdentifier(
|
|
125
|
+
], factory_1.NodeFlags.Const), factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("Object.entries"), undefined, [factory_1.factory.createAsExpression(expr, TypeFactory_1.TypeFactory.keyword("any"))]), factory_1.factory.createIfStatement(factory_1.factory.createStrictEquality(factory_1.factory.createIdentifier("undefined"), factory_1.factory.createIdentifier(names.value)), factory_1.factory.createContinueStatement(), factory_1.factory.createIfStatement(factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("Array.isArray"), undefined, [factory_1.factory.createIdentifier(names.value)]), factory_1.factory.createExpressionStatement(factory_1.factory.createCallExpression(factory_1.factory.createPropertyAccessExpression(factory_1.factory.createIdentifier(names.value), factory_1.factory.createIdentifier("forEach")), undefined, [
|
|
126
|
+
factory_1.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter(names.elem)], undefined, undefined, factory_1.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(variables), "append"), undefined, [
|
|
127
|
+
factory_1.factory.createIdentifier(names.key),
|
|
128
|
+
factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("String"), undefined, [factory_1.factory.createIdentifier(names.elem)]),
|
|
136
129
|
])),
|
|
137
130
|
])), factory_1.factory.createExpressionStatement(factory_1.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(variables), "set"), undefined, [
|
|
138
|
-
factory_1.factory.createIdentifier(
|
|
139
|
-
factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("String"), undefined, [factory_1.factory.createIdentifier(
|
|
131
|
+
factory_1.factory.createIdentifier(names.key),
|
|
132
|
+
factory_1.factory.createCallExpression(factory_1.factory.createIdentifier("String"), undefined, [factory_1.factory.createIdentifier(names.value)]),
|
|
140
133
|
]))))),
|
|
141
|
-
local(
|
|
142
|
-
factory_1.factory.createReturnStatement(factory_1.factory.createConditionalExpression(factory_1.factory.createStrictEquality(ExpressionFactory_1.ExpressionFactory.number(0), IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(variables), "size")), undefined, factory_1.factory.createIdentifier(
|
|
143
|
-
factory_1.factory.createTemplateSpan(factory_1.factory.createIdentifier(
|
|
134
|
+
local(names.location)("string")(template()),
|
|
135
|
+
factory_1.factory.createReturnStatement(factory_1.factory.createConditionalExpression(factory_1.factory.createStrictEquality(ExpressionFactory_1.ExpressionFactory.number(0), IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(variables), "size")), undefined, factory_1.factory.createIdentifier(names.location), undefined, factory_1.factory.createTemplateExpression(factory_1.factory.createTemplateHead(""), [
|
|
136
|
+
factory_1.factory.createTemplateSpan(factory_1.factory.createIdentifier(names.location), factory_1.factory.createTemplateMiddle("?")),
|
|
144
137
|
factory_1.factory.createTemplateSpan(factory_1.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(factory_1.factory.createIdentifier(variables), "toString"), undefined, undefined), factory_1.factory.createTemplateTail("")),
|
|
145
138
|
]))),
|
|
146
139
|
], true);
|
|
147
140
|
};
|
|
148
141
|
if (route.queryObject !== null && route.queryParameters.length === 0)
|
|
149
142
|
return out(block(route.queryObject.metadata.required === false
|
|
150
|
-
? factory_1.factory.createBinaryExpression(
|
|
151
|
-
:
|
|
143
|
+
? factory_1.factory.createBinaryExpression(names.access(route.queryObject), factory_1.factory.createToken(factory_1.SyntaxKind.QuestionQuestionToken), factory_1.factory.createObjectLiteralExpression([], false))
|
|
144
|
+
: names.access(route.queryObject)));
|
|
152
145
|
return out(block(factory_1.factory.createObjectLiteralExpression([
|
|
153
146
|
...(route.queryObject
|
|
154
147
|
? [
|
|
155
|
-
factory_1.factory.createSpreadAssignment(
|
|
148
|
+
factory_1.factory.createSpreadAssignment(names.access(route.queryObject)),
|
|
156
149
|
]
|
|
157
150
|
: []),
|
|
158
151
|
...route.queryParameters.map((q) => factory_1.factory.createPropertyAssignment(utils_1.NamingConvention.variable(q.field)
|
|
159
152
|
? q.field
|
|
160
|
-
: factory_1.factory.createStringLiteral(q.field),
|
|
153
|
+
: factory_1.factory.createStringLiteral(q.field), names.access(q))),
|
|
161
154
|
], true)));
|
|
162
155
|
};
|
|
163
156
|
const writeStringify = (project) => (importer) => constant("stringify")(factory_1.factory.createArrowFunction([], undefined, [
|