Skip to content

Commit 8e29022

Browse files
authored
Merge pull request #19 from dotansimha/fix/react-query-graphql-request-5.1.x
2 parents aa1d817 + 032f598 commit 8e29022

File tree

4 files changed

+18
-6
lines changed

4 files changed

+18
-6
lines changed

.changeset/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"changelog": [
1010
"@changesets/changelog-github",
1111
{
12-
"repo": "dotansimha/graphql-code-generator"
12+
"repo": "dotansimha/graphql-code-generator-community"
1313
}
1414
],
1515
"snapshot": {

.changeset/shy-timers-lay.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@graphql-codegen/typescript-react-query': patch
3+
---
4+
5+
Fix compatibility of graphql-request fetcher with >5.0

packages/plugins/typescript/react-query/src/fetcher-graphql-request.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,12 @@ export class GraphQLRequestClientFetcher implements FetcherRenderer {
1414

1515
generateFetcherImplementaion(): string {
1616
return `
17-
function fetcher<TData, TVariables>(client: GraphQLClient, query: string, variables?: TVariables, headers?: RequestInit['headers']) {
18-
return async (): Promise<TData> => client.request<TData, TVariables>(query, variables, headers);
17+
function fetcher<TData, TVariables extends { [key: string]: any }>(client: GraphQLClient, query: string, variables?: TVariables, requestHeaders?: RequestInit['headers']) {
18+
return async (): Promise<TData> => client.request({
19+
document: query,
20+
variables,
21+
requestHeaders
22+
});
1923
}`;
2024
}
2125

packages/plugins/typescript/react-query/tests/react-query.spec.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -584,9 +584,12 @@ export const useTestMutation = <
584584
expect(out.prepend).toContain(`import { GraphQLClient } from 'graphql-request';`);
585585
expect(out.prepend).toContain(`import { RequestInit } from 'graphql-request/dist/types.dom';`);
586586
expect(out.prepend[3])
587-
.toBeSimilarStringTo(` function fetcher<TData, TVariables>(client: GraphQLClient, query: string, variables?: TVariables, headers?: RequestInit['headers']) {
588-
return async (): Promise<TData> => client.request<TData, TVariables>(query, variables, headers);
589-
}`);
587+
.toBeSimilarStringTo(` function fetcher<TData, TVariables extends { [key: string]: any }>(client: GraphQLClient, query: string, variables?: TVariables, requestHeaders?: RequestInit['headers']) {
588+
return async (): Promise<TData> => client.request({
589+
document: query,
590+
variables,
591+
requestHeaders
592+
`);
590593
expect(out.content).toBeSimilarStringTo(`export const useTestQuery = <
591594
TData = TTestQuery,
592595
TError = unknown

0 commit comments

Comments
 (0)