@sdkgen/node-runtime 2.3.2 → 2.5.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/dist/api-config.js +19 -0
- package/dist/{src/context.d.ts → context.d.ts} +1 -0
- package/dist/context.js +3 -0
- package/dist/encode-decode.js +344 -0
- package/dist/error.js +33 -0
- package/dist/execute.js +57 -0
- package/dist/http-client.js +107 -0
- package/dist/{src/http-server.d.ts → http-server.d.ts} +1 -0
- package/dist/http-server.js +941 -0
- package/dist/{src/index.js → index.js} +1 -0
- package/dist/swagger.js +454 -0
- package/dist/test-wrapper.js +58 -0
- package/dist/utils.js +8 -0
- package/package.json +50 -34
- package/.eslintignore +0 -1
- package/.eslintrc.json +0 -3
- package/.prettierrc +0 -12
- package/.vscode/settings.json +0 -14
- package/dist/spec/error.spec.d.ts +0 -1
- package/dist/spec/error.spec.js +0 -15
- package/dist/spec/rest/rest.spec.d.ts +0 -1
- package/dist/spec/rest/rest.spec.js +0 -353
- package/dist/spec/runtime/errors.spec.d.ts +0 -1
- package/dist/spec/runtime/errors.spec.js +0 -43
- package/dist/spec/runtime/middleware.spec.d.ts +0 -1
- package/dist/spec/runtime/middleware.spec.js +0 -100
- package/dist/spec/simple/legacyNodeClient.d.ts +0 -17
- package/dist/spec/simple/legacyNodeClient.js +0 -128
- package/dist/spec/simple/simple.spec.d.ts +0 -1
- package/dist/spec/simple/simple.spec.js +0 -113
- package/dist/spec/types.d.ts +0 -1
- package/dist/spec/types.js +0 -60
- package/dist/spec/types.spec.d.ts +0 -1
- package/dist/spec/types.spec.js +0 -128
- package/dist/src/api-config.js +0 -19
- package/dist/src/context.js +0 -2
- package/dist/src/encode-decode.js +0 -376
- package/dist/src/error.js +0 -32
- package/dist/src/execute.js +0 -56
- package/dist/src/http-client.js +0 -105
- package/dist/src/http-server.js +0 -941
- package/dist/src/swagger.js +0 -439
- package/dist/src/test-wrapper.js +0 -52
- package/dist/src/utils.js +0 -7
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{src/api-config.d.ts → api-config.d.ts} +0 -0
- /package/dist/{src/encode-decode.d.ts → encode-decode.d.ts} +0 -0
- /package/dist/{src/error.d.ts → error.d.ts} +0 -0
- /package/dist/{src/execute.d.ts → execute.d.ts} +0 -0
- /package/dist/{src/http-client.d.ts → http-client.d.ts} +0 -0
- /package/dist/{src/index.d.ts → index.d.ts} +0 -0
- /package/dist/{src/swagger.d.ts → swagger.d.ts} +0 -0
- /package/dist/{src/test-wrapper.d.ts → test-wrapper.d.ts} +0 -0
- /package/dist/{src/utils.d.ts → utils.d.ts} +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseApiConfig = void 0;
|
|
4
|
+
const parser_1 = require("@sdkgen/parser");
|
|
5
|
+
class BaseApiConfig {
|
|
6
|
+
constructor() {
|
|
7
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
8
|
+
this.fn = {};
|
|
9
|
+
this.middlewares = [];
|
|
10
|
+
}
|
|
11
|
+
get ast() {
|
|
12
|
+
return (this._ast ??= (0, parser_1.jsonToAst)(this.astJson));
|
|
13
|
+
}
|
|
14
|
+
use(middleware) {
|
|
15
|
+
this.middlewares.push(middleware);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.BaseApiConfig = BaseApiConfig;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcGktY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDJDQUEyQztBQU8zQyxNQUFhLGFBQWE7SUFBMUI7UUFTRSw4REFBOEQ7UUFDOUQsT0FBRSxHQUE0RixFQUFFLENBQUM7UUFFeEYsZ0JBQVcsR0FBcUMsRUFBRSxDQUFDO0lBSzlELENBQUM7SUFkQyxJQUFJLEdBQUc7UUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFBLGtCQUFTLEVBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQVNELEdBQUcsQ0FBQyxVQUFxQztRQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUFqQkQsc0NBaUJDIn0=
|
package/dist/context.js
ADDED
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.decode = exports.encode = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const CNPJ = tslib_1.__importStar(require("@fnando/cnpj"));
|
|
6
|
+
const CPF = tslib_1.__importStar(require("@fnando/cpf"));
|
|
7
|
+
const decimal_js_1 = require("decimal.js");
|
|
8
|
+
const simpleStringTypes = ["string", "email", "html", "xml"];
|
|
9
|
+
const simpleTypes = ["json", "bool", "url", "int", "uint", "float", "money", "hex", "uuid", "base64", "void", ...simpleStringTypes];
|
|
10
|
+
class ParseError extends Error {
|
|
11
|
+
constructor(path, type, value) {
|
|
12
|
+
let str;
|
|
13
|
+
try {
|
|
14
|
+
str = JSON.stringify(value);
|
|
15
|
+
}
|
|
16
|
+
catch (err) {
|
|
17
|
+
str = String(value);
|
|
18
|
+
}
|
|
19
|
+
super(`Invalid type at '${path}', expected ${String(type)}, got ${str}`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function simpleEncodeDecode(path, type, value) {
|
|
23
|
+
if (type === "json") {
|
|
24
|
+
if (value === null || value === undefined) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return JSON.parse(JSON.stringify(value));
|
|
28
|
+
}
|
|
29
|
+
else if (type === "bool") {
|
|
30
|
+
if (typeof value !== "boolean") {
|
|
31
|
+
throw new ParseError(path, type, value);
|
|
32
|
+
}
|
|
33
|
+
return value;
|
|
34
|
+
}
|
|
35
|
+
else if (simpleStringTypes.includes(type)) {
|
|
36
|
+
if (typeof value !== "string") {
|
|
37
|
+
throw new ParseError(path, type, value);
|
|
38
|
+
}
|
|
39
|
+
return value;
|
|
40
|
+
}
|
|
41
|
+
else if (type === "hex") {
|
|
42
|
+
if (typeof value !== "string" || !/^(?:[A-Fa-f0-9]{2})*$/u.test(value)) {
|
|
43
|
+
throw new ParseError(path, type, value);
|
|
44
|
+
}
|
|
45
|
+
return value.toLowerCase();
|
|
46
|
+
}
|
|
47
|
+
else if (type === "uuid") {
|
|
48
|
+
if (typeof value !== "string" || !/^[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$/u.test(value)) {
|
|
49
|
+
throw new ParseError(path, type, value);
|
|
50
|
+
}
|
|
51
|
+
return value.toLowerCase();
|
|
52
|
+
}
|
|
53
|
+
else if (type === "base64") {
|
|
54
|
+
if (typeof value !== "string" || Buffer.from(value, "base64").toString("base64") !== value) {
|
|
55
|
+
throw new ParseError(path, type, value);
|
|
56
|
+
}
|
|
57
|
+
return value;
|
|
58
|
+
}
|
|
59
|
+
else if (type === "int") {
|
|
60
|
+
if (typeof value !== "number" || (value | 0) !== value) {
|
|
61
|
+
throw new ParseError(path, type, value);
|
|
62
|
+
}
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
else if (type === "uint") {
|
|
66
|
+
if (typeof value !== "number" || (value | 0) !== value || value < 0) {
|
|
67
|
+
throw new ParseError(path, type, value);
|
|
68
|
+
}
|
|
69
|
+
return value;
|
|
70
|
+
}
|
|
71
|
+
else if (type === "float") {
|
|
72
|
+
if (typeof value !== "number") {
|
|
73
|
+
throw new ParseError(path, type, value);
|
|
74
|
+
}
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
else if (type === "money") {
|
|
78
|
+
if (typeof value !== "number" || !Number.isInteger(value)) {
|
|
79
|
+
throw new ParseError(path, type, value);
|
|
80
|
+
}
|
|
81
|
+
return value;
|
|
82
|
+
}
|
|
83
|
+
else if (type === "url") {
|
|
84
|
+
let url;
|
|
85
|
+
if (typeof value === "string") {
|
|
86
|
+
try {
|
|
87
|
+
url = new URL(value);
|
|
88
|
+
}
|
|
89
|
+
catch (e) {
|
|
90
|
+
// ignore
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
if (!url) {
|
|
94
|
+
throw new ParseError(path, type, value);
|
|
95
|
+
}
|
|
96
|
+
return url.toString();
|
|
97
|
+
}
|
|
98
|
+
else if (type === "void") {
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
throw new Error(`Unknown type '${type}' at '${path}'`);
|
|
102
|
+
}
|
|
103
|
+
function encode(typeTable, path, type, value) {
|
|
104
|
+
if (typeof type === "string" && !type.endsWith("?") && type !== "void" && (value === null || value === undefined)) {
|
|
105
|
+
throw new Error(`Invalid type at '${path}', cannot be null`);
|
|
106
|
+
}
|
|
107
|
+
else if (Array.isArray(type)) {
|
|
108
|
+
if (type.every(tag => typeof tag === "string")) {
|
|
109
|
+
for (const tag of type) {
|
|
110
|
+
if (tag === value) {
|
|
111
|
+
return tag;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else if (typeof value === "object" && value && "tag" in value) {
|
|
116
|
+
const { tag: tagValue, ...restValue } = value;
|
|
117
|
+
for (const entry of type) {
|
|
118
|
+
if (typeof entry === "string") {
|
|
119
|
+
if (entry === tagValue) {
|
|
120
|
+
return entry;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
const [tag, valueType] = entry;
|
|
125
|
+
if (tag === tagValue) {
|
|
126
|
+
const encodedValues = encode(typeTable, `${path}.${tag}`, valueType, restValue);
|
|
127
|
+
// eslint-disable-next-line max-depth
|
|
128
|
+
if (Object.values(encodedValues).every(v => v === null)) {
|
|
129
|
+
return tag;
|
|
130
|
+
}
|
|
131
|
+
return [tag, encodedValues];
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
throw new ParseError(path, type, value);
|
|
137
|
+
}
|
|
138
|
+
else if (typeof type === "object") {
|
|
139
|
+
if (typeof value !== "object") {
|
|
140
|
+
throw new ParseError(path, type, value);
|
|
141
|
+
}
|
|
142
|
+
const obj = {};
|
|
143
|
+
for (const key of Object.keys(type)) {
|
|
144
|
+
obj[key] = encode(typeTable, `${path}.${key}`, type[key], value[key]);
|
|
145
|
+
}
|
|
146
|
+
return obj;
|
|
147
|
+
}
|
|
148
|
+
else if (typeof type === "string" && type.endsWith("?")) {
|
|
149
|
+
if (value === null || value === undefined) {
|
|
150
|
+
return null;
|
|
151
|
+
}
|
|
152
|
+
return encode(typeTable, path, type.slice(0, type.length - 1), value);
|
|
153
|
+
}
|
|
154
|
+
else if (typeof type === "string" && type.endsWith("[]")) {
|
|
155
|
+
if (!Array.isArray(value)) {
|
|
156
|
+
throw new ParseError(path, type, value);
|
|
157
|
+
}
|
|
158
|
+
return value.map((entry, index) => encode(typeTable, `${path}[${index}]`, type.slice(0, type.length - 2), entry));
|
|
159
|
+
}
|
|
160
|
+
else if (typeof type === "string" && simpleTypes.includes(type)) {
|
|
161
|
+
return simpleEncodeDecode(path, type, value);
|
|
162
|
+
}
|
|
163
|
+
else if (type === "bytes") {
|
|
164
|
+
if (!(value instanceof Buffer)) {
|
|
165
|
+
throw new ParseError(path, type, value);
|
|
166
|
+
}
|
|
167
|
+
return value.toString("base64");
|
|
168
|
+
}
|
|
169
|
+
else if (type === "bigint") {
|
|
170
|
+
if (!(typeof value === "bigint")) {
|
|
171
|
+
throw new ParseError(path, type, value);
|
|
172
|
+
}
|
|
173
|
+
return value.toString();
|
|
174
|
+
}
|
|
175
|
+
else if (type === "cpf") {
|
|
176
|
+
if (typeof value !== "string" || !CPF.isValid(value)) {
|
|
177
|
+
throw new ParseError(path, type, value);
|
|
178
|
+
}
|
|
179
|
+
return CPF.strip(value);
|
|
180
|
+
}
|
|
181
|
+
else if (type === "cnpj") {
|
|
182
|
+
if (typeof value !== "string" || !CNPJ.isValid(value)) {
|
|
183
|
+
throw new ParseError(path, type, value);
|
|
184
|
+
}
|
|
185
|
+
return CNPJ.strip(value);
|
|
186
|
+
}
|
|
187
|
+
else if (type === "date") {
|
|
188
|
+
if (!(value instanceof Date && !isNaN(value.getTime())) && !(typeof value === "string" && /^[0-9]{4}-[01][0-9]-[0123][0-9]$/u.test(value))) {
|
|
189
|
+
throw new ParseError(path, type, value);
|
|
190
|
+
}
|
|
191
|
+
const dateValue = value instanceof Date ? value : new Date(value);
|
|
192
|
+
return `${dateValue.getFullYear().toString().padStart(4, "0")}-${(dateValue.getMonth() + 1).toString().padStart(2, "0")}-${dateValue
|
|
193
|
+
.getDate()
|
|
194
|
+
.toString()
|
|
195
|
+
.padStart(2, "0")}`;
|
|
196
|
+
}
|
|
197
|
+
else if (type === "datetime") {
|
|
198
|
+
if (!(value instanceof Date && !isNaN(value.getTime())) &&
|
|
199
|
+
!(typeof value === "string" &&
|
|
200
|
+
/^[0-9]{4}-[01][0-9]-[0123][0-9]T[012][0-9]:[0123456][0-9]:[0123456][0-9](?:\.[0-9]{1,6})?(?:Z|[+-][012][0-9]:[0123456][0-9])?$/u.test(value))) {
|
|
201
|
+
throw new ParseError(path, type, value);
|
|
202
|
+
}
|
|
203
|
+
return (typeof value === "string" ? new Date(value) : value).toISOString().replace("Z", "");
|
|
204
|
+
}
|
|
205
|
+
else if (type === "decimal") {
|
|
206
|
+
if (typeof value !== "number" && (typeof value !== "string" || !/^-?[0-9]+(?:\.[0-9]+)?$/u.test(value)) && !decimal_js_1.Decimal.isDecimal(value)) {
|
|
207
|
+
throw new ParseError(path, type, value);
|
|
208
|
+
}
|
|
209
|
+
return new decimal_js_1.Decimal(value).toString();
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
|
|
213
|
+
const resolved = typeTable[type];
|
|
214
|
+
if (resolved) {
|
|
215
|
+
return encode(typeTable, path, resolved, value);
|
|
216
|
+
}
|
|
217
|
+
throw new Error(`Unknown type '${String(type)}' at '${path}'`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
exports.encode = encode;
|
|
221
|
+
function decode(typeTable, path, type, value) {
|
|
222
|
+
if (typeof type === "string" && !type.endsWith("?") && type !== "void" && (value === null || value === undefined)) {
|
|
223
|
+
throw new Error(`Invalid type at '${path}', cannot be null`);
|
|
224
|
+
}
|
|
225
|
+
else if (Array.isArray(type)) {
|
|
226
|
+
if (type.every(tag => typeof tag === "string")) {
|
|
227
|
+
for (const tag of type) {
|
|
228
|
+
if (tag === value) {
|
|
229
|
+
return tag;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
else {
|
|
234
|
+
for (const entry of type) {
|
|
235
|
+
if (typeof entry === "string") {
|
|
236
|
+
if (entry === value) {
|
|
237
|
+
return { tag: entry };
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
const [tag, valueType] = entry;
|
|
242
|
+
if (tag === value) {
|
|
243
|
+
const decodedValues = decode(typeTable, `${path}.${tag}`, valueType, {});
|
|
244
|
+
return { ...decodedValues, tag };
|
|
245
|
+
}
|
|
246
|
+
else if (Array.isArray(value) && value.length === 2 && tag === value[0]) {
|
|
247
|
+
const decodedValues = decode(typeTable, `${path}.${tag}`, valueType, value[1]);
|
|
248
|
+
return { ...decodedValues, tag };
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
throw new ParseError(path, type, value);
|
|
254
|
+
}
|
|
255
|
+
else if (typeof type === "object") {
|
|
256
|
+
if (typeof value !== "object") {
|
|
257
|
+
throw new ParseError(path, type, value);
|
|
258
|
+
}
|
|
259
|
+
const obj = {};
|
|
260
|
+
for (const key of Object.keys(type)) {
|
|
261
|
+
obj[key] = decode(typeTable, `${path}.${key}`, type[key], value[key]);
|
|
262
|
+
}
|
|
263
|
+
return obj;
|
|
264
|
+
}
|
|
265
|
+
else if (typeof type === "string" && type.endsWith("?")) {
|
|
266
|
+
if (value === null || value === undefined) {
|
|
267
|
+
return null;
|
|
268
|
+
}
|
|
269
|
+
return decode(typeTable, path, type.slice(0, type.length - 1), value);
|
|
270
|
+
}
|
|
271
|
+
else if (typeof type === "string" && type.endsWith("[]")) {
|
|
272
|
+
if (!Array.isArray(value)) {
|
|
273
|
+
throw new ParseError(path, type, value);
|
|
274
|
+
}
|
|
275
|
+
return value.map((entry, index) => decode(typeTable, `${path}[${index}]`, type.slice(0, type.length - 2), entry));
|
|
276
|
+
}
|
|
277
|
+
else if (typeof type === "string" && simpleTypes.includes(type)) {
|
|
278
|
+
return simpleEncodeDecode(path, type, value);
|
|
279
|
+
}
|
|
280
|
+
else if (type === "bytes") {
|
|
281
|
+
if (typeof value !== "string") {
|
|
282
|
+
throw new ParseError(path, `${String(type)} (base 64)`, value);
|
|
283
|
+
}
|
|
284
|
+
const buffer = Buffer.from(value, "base64");
|
|
285
|
+
if (buffer.toString("base64") !== value) {
|
|
286
|
+
throw new ParseError(path, `${String(type)} (base 64)`, value);
|
|
287
|
+
}
|
|
288
|
+
return buffer;
|
|
289
|
+
}
|
|
290
|
+
else if (type === "bigint") {
|
|
291
|
+
if (typeof value !== "number" && (typeof value !== "string" || !/^-?[0-9]+$/u.test(value))) {
|
|
292
|
+
throw new ParseError(path, type, value);
|
|
293
|
+
}
|
|
294
|
+
return BigInt(value);
|
|
295
|
+
}
|
|
296
|
+
else if (type === "cpf") {
|
|
297
|
+
if (typeof value !== "string" || !CPF.isValid(value)) {
|
|
298
|
+
throw new ParseError(path, type, value);
|
|
299
|
+
}
|
|
300
|
+
return CPF.format(value);
|
|
301
|
+
}
|
|
302
|
+
else if (type === "cnpj") {
|
|
303
|
+
if (typeof value !== "string" || !CNPJ.isValid(value)) {
|
|
304
|
+
throw new ParseError(path, type, value);
|
|
305
|
+
}
|
|
306
|
+
return CNPJ.format(value);
|
|
307
|
+
}
|
|
308
|
+
else if (type === "date") {
|
|
309
|
+
if (typeof value !== "string" || !/^[0-9]{4}-[01][0-9]-[0123][0-9]$/u.test(value)) {
|
|
310
|
+
throw new ParseError(path, type, value);
|
|
311
|
+
}
|
|
312
|
+
const day = parseInt(value.split("-")[2], 10);
|
|
313
|
+
const month = parseInt(value.split("-")[1], 10) - 1;
|
|
314
|
+
const year = parseInt(value.split("-")[0], 10);
|
|
315
|
+
const date = new Date(year, month, day);
|
|
316
|
+
if (date.getFullYear() !== year || date.getMonth() !== month || date.getDate() !== day) {
|
|
317
|
+
throw new ParseError(path, type, value);
|
|
318
|
+
}
|
|
319
|
+
return date;
|
|
320
|
+
}
|
|
321
|
+
else if (type === "datetime") {
|
|
322
|
+
if (typeof value !== "string" || !/^[0-9]{4}-[01][0-9]-[0123][0-9]T[012][0-9]:[0123456][0-9]:[0123456][0-9](?:\.[0-9]{1,6})?Z?$/u.test(value)) {
|
|
323
|
+
throw new ParseError(path, type, value);
|
|
324
|
+
}
|
|
325
|
+
return new Date(`${value.endsWith("Z") ? value : value.concat("Z")}`);
|
|
326
|
+
}
|
|
327
|
+
else if (type === "decimal") {
|
|
328
|
+
if (typeof value !== "number" && (typeof value !== "string" || !/^-?[0-9]+(?:\.[0-9]+)?$/u.test(value))) {
|
|
329
|
+
throw new ParseError(path, type, value);
|
|
330
|
+
}
|
|
331
|
+
return new decimal_js_1.Decimal(value);
|
|
332
|
+
}
|
|
333
|
+
else {
|
|
334
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
|
|
335
|
+
const resolved = typeTable[type];
|
|
336
|
+
if (resolved) {
|
|
337
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
338
|
+
return decode(typeTable, path, resolved, value);
|
|
339
|
+
}
|
|
340
|
+
throw new Error(`Unknown type '${String(type)}' at '${path}'`);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
exports.decode = decode;
|
|
344
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RlLWRlY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lbmNvZGUtZGVjb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyREFBcUM7QUFDckMseURBQW1DO0FBRW5DLDJDQUFxQztBQU1yQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDN0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEdBQUcsaUJBQWlCLENBQUMsQ0FBQztBQWtHcEksTUFBTSxVQUFXLFNBQVEsS0FBSztJQUM1QixZQUFZLElBQVksRUFBRSxJQUFtQyxFQUFFLEtBQWM7UUFDM0UsSUFBSSxHQUFXLENBQUM7UUFFaEIsSUFBSTtZQUNGLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzdCO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixHQUFHLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsS0FBSyxDQUFDLG9CQUFvQixJQUFJLGVBQWUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDM0UsQ0FBQztDQUNGO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxJQUFZLEVBQUUsSUFBWSxFQUFFLEtBQWM7SUFDcEUsSUFBSSxJQUFJLEtBQUssTUFBTSxFQUFFO1FBQ25CLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3pDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMs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
|
package/dist/error.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Fatal = exports.SdkgenErrorWithData = exports.SdkgenError = void 0;
|
|
4
|
+
class SdkgenError extends Error {
|
|
5
|
+
get type() {
|
|
6
|
+
return this.constructor.name;
|
|
7
|
+
}
|
|
8
|
+
toJSON() {
|
|
9
|
+
return {
|
|
10
|
+
message: this.message,
|
|
11
|
+
type: this.type,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.SdkgenError = SdkgenError;
|
|
16
|
+
class SdkgenErrorWithData extends SdkgenError {
|
|
17
|
+
constructor(message, data) {
|
|
18
|
+
super(message);
|
|
19
|
+
this.data = data;
|
|
20
|
+
}
|
|
21
|
+
toJSON() {
|
|
22
|
+
return {
|
|
23
|
+
data: this.data,
|
|
24
|
+
message: this.message,
|
|
25
|
+
type: this.type,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.SdkgenErrorWithData = SdkgenErrorWithData;
|
|
30
|
+
class Fatal extends SdkgenError {
|
|
31
|
+
}
|
|
32
|
+
exports.Fatal = Fatal;
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsTUFBc0IsV0FBWSxTQUFRLEtBQUs7SUFDN0MsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRU0sTUFBTTtRQUNYLE9BQU87WUFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2hCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFYRCxrQ0FXQztBQUNELE1BQXNCLG1CQUE4QixTQUFRLFdBQVc7SUFDckUsWUFDRSxPQUFlLEVBQ1IsSUFBYztRQUVyQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFGUixTQUFJLEdBQUosSUFBSSxDQUFVO0lBR3ZCLENBQUM7SUFFTSxNQUFNO1FBQ1gsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDaEIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWZELGtEQWVDO0FBRUQsTUFBYSxLQUFNLFNBQVEsV0FBVztDQUFHO0FBQXpDLHNCQUF5QyJ9
|
package/dist/execute.js
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.executeRequest = void 0;
|
|
4
|
+
const parser_1 = require("@sdkgen/parser");
|
|
5
|
+
const encode_decode_1 = require("./encode-decode");
|
|
6
|
+
const error_1 = require("./error");
|
|
7
|
+
const utils_1 = require("./utils");
|
|
8
|
+
async function executeRequest(ctx, apiConfig) {
|
|
9
|
+
// eslint-disable-next-line func-style
|
|
10
|
+
let next = async () => {
|
|
11
|
+
try {
|
|
12
|
+
const functionDescription = apiConfig.astJson.functionTable[ctx.request.name];
|
|
13
|
+
const functionImplementation = apiConfig.fn[ctx.request.name];
|
|
14
|
+
if (!functionDescription || !functionImplementation) {
|
|
15
|
+
throw new error_1.Fatal(`Function does not exist: ${ctx.request.name}`);
|
|
16
|
+
}
|
|
17
|
+
const args = (0, encode_decode_1.decode)(apiConfig.astJson.typeTable, `${ctx.request.name}.args`, functionDescription.args, ctx.request.args);
|
|
18
|
+
const ret = (await functionImplementation(ctx, args));
|
|
19
|
+
const encodedRet = (0, encode_decode_1.encode)(apiConfig.astJson.typeTable, `${ctx.request.name}.ret`, functionDescription.ret, ret);
|
|
20
|
+
return { result: encodedRet };
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
return { error };
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
for (let i = apiConfig.middlewares.length - 1; i >= 0; --i) {
|
|
27
|
+
const middleware = apiConfig.middlewares[i];
|
|
28
|
+
const previousNext = next;
|
|
29
|
+
next = async () => {
|
|
30
|
+
try {
|
|
31
|
+
return await middleware(ctx, previousNext);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
return { error };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
const reply = await next();
|
|
39
|
+
// If errors, check if the error type is one of the @throws annotation. If it isn't, change to Fatal
|
|
40
|
+
if (reply.error) {
|
|
41
|
+
const functionAst = apiConfig.ast.operations.find(op => op.name === ctx.request.name);
|
|
42
|
+
if (functionAst) {
|
|
43
|
+
const allowedErrors = functionAst.annotations.filter(ann => ann instanceof parser_1.ThrowsAnnotation).map(ann => ann.error);
|
|
44
|
+
if (typeof reply.error !== "object" ||
|
|
45
|
+
reply.error === null ||
|
|
46
|
+
!(0, utils_1.has)(reply.error, "type") ||
|
|
47
|
+
typeof reply.error.type !== "string" ||
|
|
48
|
+
(allowedErrors.length > 0 && !allowedErrors.includes(reply.error.type)) ||
|
|
49
|
+
!apiConfig.astJson.errors.map(error => (typeof error === "string" ? error : error[0])).includes(reply.error.type)) {
|
|
50
|
+
Object.defineProperty(reply.error, "type", { value: "Fatal" });
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return reply;
|
|
55
|
+
}
|
|
56
|
+
exports.executeRequest = executeRequest;
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9leGVjdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUFrRDtBQUlsRCxtREFBaUQ7QUFDakQsbUNBQWdDO0FBQ2hDLG1DQUE4QjtBQUV2QixLQUFLLFVBQVUsY0FBYyxDQUFnQixHQUE0QixFQUFFLFNBQXVDO0lBQ3ZILHNDQUFzQztJQUN0QyxJQUFJLElBQUksR0FBRyxLQUFLLElBQUksRUFBRTtRQUNwQixJQUFJO1lBQ0YsTUFBTSxtQkFBbUIsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlFLE1BQU0sc0JBQXNCLEdBQUcsU0FBUyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTlELElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLHNCQUFzQixFQUFFO2dCQUNuRCxNQUFNLElBQUksYUFBSyxDQUFDLDRCQUE0QixHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7YUFDakU7WUFFRCxNQUFNLElBQUksR0FBRyxJQUFBLHNCQUFNLEVBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksT0FBTyxFQUFFLG1CQUFtQixDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXpILE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxzQkFBc0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQVksQ0FBQztZQUNqRSxNQUFNLFVBQVUsR0FBRyxJQUFBLHNCQUFNLEVBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxFQUFFLG1CQUFt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
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SdkgenHttpClient = void 0;
|
|
4
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
|
+
/* eslint-disable prefer-promise-reject-errors */
|
|
6
|
+
const crypto_1 = require("crypto");
|
|
7
|
+
const http_1 = require("http");
|
|
8
|
+
const https_1 = require("https");
|
|
9
|
+
const os_1 = require("os");
|
|
10
|
+
const url_1 = require("url");
|
|
11
|
+
const encode_decode_1 = require("./encode-decode");
|
|
12
|
+
const utils_1 = require("./utils");
|
|
13
|
+
class SdkgenHttpClient {
|
|
14
|
+
constructor(baseUrl, astJson, errClasses) {
|
|
15
|
+
this.astJson = astJson;
|
|
16
|
+
this.errClasses = errClasses;
|
|
17
|
+
this.extra = new Map();
|
|
18
|
+
this.baseUrl = new url_1.URL(baseUrl);
|
|
19
|
+
}
|
|
20
|
+
async makeRequest(ctx, functionName, args) {
|
|
21
|
+
const func = this.astJson.functionTable[functionName];
|
|
22
|
+
if (!func) {
|
|
23
|
+
throw new Error(`Unknown function ${functionName}`);
|
|
24
|
+
}
|
|
25
|
+
const extra = {};
|
|
26
|
+
for (const [key, value] of this.extra) {
|
|
27
|
+
extra[key] = value;
|
|
28
|
+
}
|
|
29
|
+
const requestBody = JSON.stringify({
|
|
30
|
+
args: (0, encode_decode_1.encode)(this.astJson.typeTable, `${functionName}.args`, func.args, args),
|
|
31
|
+
deviceInfo: ctx?.request?.deviceInfo ?? { id: (0, os_1.hostname)(), type: "node" },
|
|
32
|
+
extra: {
|
|
33
|
+
...extra,
|
|
34
|
+
...ctx?.request?.extra,
|
|
35
|
+
},
|
|
36
|
+
name: functionName,
|
|
37
|
+
requestId: ctx?.request?.id ? ctx.request.id + (0, crypto_1.randomBytes)(6).toString("hex") : (0, crypto_1.randomBytes)(16).toString("hex"),
|
|
38
|
+
version: 3,
|
|
39
|
+
});
|
|
40
|
+
const options = {
|
|
41
|
+
hostname: this.baseUrl.hostname,
|
|
42
|
+
method: "POST",
|
|
43
|
+
path: this.baseUrl.pathname,
|
|
44
|
+
port: this.baseUrl.port,
|
|
45
|
+
headers: {
|
|
46
|
+
"content-type": "application/sdkgen",
|
|
47
|
+
},
|
|
48
|
+
};
|
|
49
|
+
const encodedRet = await new Promise((resolve, reject) => {
|
|
50
|
+
const req = (this.baseUrl.protocol === "http:" ? http_1.request : https_1.request)(options, res => {
|
|
51
|
+
let data = "";
|
|
52
|
+
res.on("data", chunk => {
|
|
53
|
+
data += chunk;
|
|
54
|
+
});
|
|
55
|
+
res.on("end", () => {
|
|
56
|
+
try {
|
|
57
|
+
const response = JSON.parse(data);
|
|
58
|
+
if ((0, utils_1.has)(response, "error") && response.error) {
|
|
59
|
+
reject(response.error);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
resolve((0, utils_1.has)(response, "result") ? response.result : null);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
reject({ message: `${error}`, type: "Fatal" });
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
res.on("error", error => {
|
|
70
|
+
reject({ message: `${error}`, type: "Fatal" });
|
|
71
|
+
});
|
|
72
|
+
res.on("aborted", () => {
|
|
73
|
+
reject({ message: "Request aborted", type: "Fatal" });
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
req.on("error", error => {
|
|
77
|
+
reject({ message: `${error}`, type: "Fatal" });
|
|
78
|
+
});
|
|
79
|
+
req.write(requestBody);
|
|
80
|
+
req.end();
|
|
81
|
+
}).catch((error) => {
|
|
82
|
+
if ((0, utils_1.has)(error, "type") && (0, utils_1.has)(error, "message") && typeof error.type === "string" && typeof error.message === "string") {
|
|
83
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
84
|
+
const errClass = this.errClasses[error.type] ?? this.errClasses.Fatal;
|
|
85
|
+
const errType = errClass.name;
|
|
86
|
+
const errorJson = this.astJson.errors.find(err => (Array.isArray(err) ? err[0] === errType : err === errType));
|
|
87
|
+
let newError;
|
|
88
|
+
if (errorJson && Array.isArray(errorJson) && (0, utils_1.has)(error, "data")) {
|
|
89
|
+
newError = new errClass(error.message, (0, encode_decode_1.decode)(this.astJson.typeTable, `${errClass.name}.data`, errorJson[1], error.data));
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
newError = new errClass(error.message, undefined);
|
|
93
|
+
}
|
|
94
|
+
if (!newError.type) {
|
|
95
|
+
newError.type = errType;
|
|
96
|
+
}
|
|
97
|
+
throw newError;
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
throw error;
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
return (0, encode_decode_1.decode)(this.astJson.typeTable, `${functionName}.ret`, func.ret, encodedRet);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
exports.SdkgenHttpClient = SdkgenHttpClient;
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaHR0cC1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdURBQXVEO0FBQ3ZELGlEQUFpRDtBQUNqRCxtQ0FBcUM7QUFDckMsK0JBQThDO0FBQzlDLGlDQUFnRDtBQUVoRCwyQkFBOEI7QUFDOUIsNkJBQTBCO0FBTTFCLG1EQUFpRDtBQUdqRCxtQ0FBOEI7QUFJOUIsTUFBYSxnQkFBZ0I7SUFLM0IsWUFDRSxPQUFlLEVBQ1AsT0FBOEIsRUFDOUIsVUFBc0I7UUFEdEIsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFDOUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUxoQyxVQUFLLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7UUFPakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFNBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFnQyxFQUFFLFlBQW9CLEVBQUUsSUFBYTtRQUNyRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUV0RCxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsWUFBWSxFQUFFLENBQUMsQ0FBQztTQUNyRDtRQUVELE1BQU0sS0FBSyxHQUE0QixFQUFFLENBQUM7UUFFMUMsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDckMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztTQUNwQjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDakMsSUFBSSxFQUFFLElBQUEsc0JBQU0sRUFBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLFlB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
|
|
@@ -11,6 +11,7 @@ export declare class SdkgenHttpServer<ExtraContextT = unknown> {
|
|
|
11
11
|
dynamicCorsOrigin: boolean;
|
|
12
12
|
introspection: boolean;
|
|
13
13
|
log: (message: string) => void;
|
|
14
|
+
logError: (...error: unknown[]) => void;
|
|
14
15
|
private hasSwagger;
|
|
15
16
|
private ignoredUrlPrefix;
|
|
16
17
|
private extraContext;
|