@goast/typescript 0.5.2 → 0.5.3
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/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -1
- package/esm/src/generators/services/fetch-clients/fetch-client-generator.js +6 -2
- package/package.json +1 -1
- package/script/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -1
- package/script/src/generators/services/fetch-clients/fetch-client-generator.js +6 -2
- package/src/src/generators/services/fetch-clients/fetch-client-generator.ts +10 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/fetch-clients/fetch-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,qCAAqC,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAE/G,KAAK,OAAO,GAAG,qCAAqC,CAAC;AACrD,KAAK,MAAM,GAAG,oCAAoC,CAAC;AACnD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,8BAA8B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC7E,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED,qBAAa,qCAAsC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAChG,YAAW,8BAA8B;IAClC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IAmCnD,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAI1E,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAe3D,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/fetch-clients/fetch-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,qCAAqC,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAE/G,KAAK,OAAO,GAAG,qCAAqC,CAAC;AACrD,KAAK,MAAM,GAAG,oCAAoC,CAAC;AACnD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,8BAA8B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC7E,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED,qBAAa,qCAAsC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAChG,YAAW,8BAA8B;IAClC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IAmCnD,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAI1E,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAe3D,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAmC7F,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAItE,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IAcvE,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IAqCnD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAoDnF,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;IAMnH,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIxD,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIpD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAIhD,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI5C,SAAS,CAAC,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI7D,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQpD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQhD,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI7D,OAAO,CAAC,iBAAiB;CAK1B"}
|
|
@@ -50,7 +50,7 @@ export class DefaultTypeScriptFetchClientGenerator extends TypeScriptFileGenerat
|
|
|
50
50
|
}
|
|
51
51
|
getInterfaceEndpointMethod(ctx, endpoint) {
|
|
52
52
|
var _a, _b;
|
|
53
|
-
const params = endpoint.parameters.filter((x) => x.target === 'path' || x.target === 'query');
|
|
53
|
+
const params = endpoint.parameters.filter((x) => x.target === 'path' || x.target === 'query' || x.target === 'header');
|
|
54
54
|
const bodySchema = (_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema;
|
|
55
55
|
const responseSchema = this.getResponseSchema(ctx, endpoint);
|
|
56
56
|
return ts.method(toCasing(endpoint.name, ctx.config.functionNameCasing), {
|
|
@@ -143,10 +143,14 @@ export class DefaultTypeScriptFetchClientGenerator extends TypeScriptFileGenerat
|
|
|
143
143
|
}
|
|
144
144
|
})}
|
|
145
145
|
.build();`}`,
|
|
146
|
+
'const headers = { ...this.options.headers };',
|
|
147
|
+
...endpoint.parameters.filter((x) => x.target === 'header').map((p) => s `if (params && params.${toCasing(p.name, ctx.config.paramNameCasing)} !== undefined) {${s.indent `
|
|
148
|
+
headers[${ts.string(p.name)}] = String(params.${toCasing(p.name, ctx.config.paramNameCasing)});`}
|
|
149
|
+
}`),
|
|
146
150
|
s `const response = (this.options.fetch ?? fetch)(url, ${ts.object({
|
|
147
151
|
members: [
|
|
148
152
|
ts.property('method', { value: ts.string(toCasing(endpoint.method, 'all-upper')) }),
|
|
149
|
-
ts.property('headers', { value: '
|
|
153
|
+
ts.property('headers', { value: 'headers' }),
|
|
150
154
|
((_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema) ? ts.property('body', { value: 'JSON.stringify(body)' }) : null,
|
|
151
155
|
],
|
|
152
156
|
})});`,
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/fetch-clients/fetch-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,qCAAqC,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAE/G,KAAK,OAAO,GAAG,qCAAqC,CAAC;AACrD,KAAK,MAAM,GAAG,oCAAoC,CAAC;AACnD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,8BAA8B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC7E,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED,qBAAa,qCAAsC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAChG,YAAW,8BAA8B;IAClC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IAmCnD,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAI1E,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAe3D,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/fetch-clients/fetch-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,qCAAqC,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAE/G,KAAK,OAAO,GAAG,qCAAqC,CAAC;AACrD,KAAK,MAAM,GAAG,oCAAoC,CAAC;AACnD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,8BAA8B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC7E,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED,qBAAa,qCAAsC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAChG,YAAW,8BAA8B;IAClC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IAmCnD,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAI1E,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAe3D,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAmC7F,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAItE,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IAcvE,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IAqCnD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAoDnF,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;IAMnH,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIxD,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIpD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAIhD,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI5C,SAAS,CAAC,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI7D,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQpD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQhD,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI7D,OAAO,CAAC,iBAAiB;CAK1B"}
|
|
@@ -53,7 +53,7 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_js_1.TypeScri
|
|
|
53
53
|
}
|
|
54
54
|
getInterfaceEndpointMethod(ctx, endpoint) {
|
|
55
55
|
var _a, _b;
|
|
56
|
-
const params = endpoint.parameters.filter((x) => x.target === 'path' || x.target === 'query');
|
|
56
|
+
const params = endpoint.parameters.filter((x) => x.target === 'path' || x.target === 'query' || x.target === 'header');
|
|
57
57
|
const bodySchema = (_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema;
|
|
58
58
|
const responseSchema = this.getResponseSchema(ctx, endpoint);
|
|
59
59
|
return index_js_1.ts.method((0, core_1.toCasing)(endpoint.name, ctx.config.functionNameCasing), {
|
|
@@ -146,10 +146,14 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_js_1.TypeScri
|
|
|
146
146
|
}
|
|
147
147
|
})}
|
|
148
148
|
.build();`}`,
|
|
149
|
+
'const headers = { ...this.options.headers };',
|
|
150
|
+
...endpoint.parameters.filter((x) => x.target === 'header').map((p) => (0, core_1.builderTemplate) `if (params && params.${(0, core_1.toCasing)(p.name, ctx.config.paramNameCasing)} !== undefined) {${core_1.builderTemplate.indent `
|
|
151
|
+
headers[${index_js_1.ts.string(p.name)}] = String(params.${(0, core_1.toCasing)(p.name, ctx.config.paramNameCasing)});`}
|
|
152
|
+
}`),
|
|
149
153
|
(0, core_1.builderTemplate) `const response = (this.options.fetch ?? fetch)(url, ${index_js_1.ts.object({
|
|
150
154
|
members: [
|
|
151
155
|
index_js_1.ts.property('method', { value: index_js_1.ts.string((0, core_1.toCasing)(endpoint.method, 'all-upper')) }),
|
|
152
|
-
index_js_1.ts.property('headers', { value: '
|
|
156
|
+
index_js_1.ts.property('headers', { value: 'headers' }),
|
|
153
157
|
((_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema) ? index_js_1.ts.property('body', { value: 'JSON.stringify(body)' }) : null,
|
|
154
158
|
],
|
|
155
159
|
})});`,
|
|
@@ -80,7 +80,9 @@ export class DefaultTypeScriptFetchClientGenerator extends TypeScriptFileGenerat
|
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
protected getInterfaceEndpointMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder> {
|
|
83
|
-
const params = endpoint.parameters.filter((x) =>
|
|
83
|
+
const params = endpoint.parameters.filter((x) =>
|
|
84
|
+
x.target === 'path' || x.target === 'query' || x.target === 'header'
|
|
85
|
+
);
|
|
84
86
|
const bodySchema = endpoint.requestBody?.content[0]?.schema;
|
|
85
87
|
const responseSchema = this.getResponseSchema(ctx, endpoint);
|
|
86
88
|
return ts.method(toCasing(endpoint.name, ctx.config.functionNameCasing), {
|
|
@@ -193,11 +195,17 @@ export class DefaultTypeScriptFetchClientGenerator extends TypeScriptFileGenerat
|
|
|
193
195
|
}
|
|
194
196
|
})}
|
|
195
197
|
.build();`}`,
|
|
198
|
+
'const headers = { ...this.options.headers };',
|
|
199
|
+
...endpoint.parameters.filter((x) => x.target === 'header').map((p) =>
|
|
200
|
+
s<Builder>`if (params && params.${toCasing(p.name, ctx.config.paramNameCasing)} !== undefined) {${s.indent`
|
|
201
|
+
headers[${ts.string(p.name)}] = String(params.${toCasing(p.name, ctx.config.paramNameCasing)});`}
|
|
202
|
+
}`
|
|
203
|
+
),
|
|
196
204
|
s`const response = (this.options.fetch ?? fetch)(url, ${
|
|
197
205
|
ts.object({
|
|
198
206
|
members: [
|
|
199
207
|
ts.property('method', { value: ts.string(toCasing(endpoint.method, 'all-upper')) }),
|
|
200
|
-
ts.property('headers', { value: '
|
|
208
|
+
ts.property('headers', { value: 'headers' }),
|
|
201
209
|
endpoint.requestBody?.content[0]?.schema ? ts.property('body', { value: 'JSON.stringify(body)' }) : null,
|
|
202
210
|
],
|
|
203
211
|
})
|