dotansimha/graphql-code-generator

Pass the client in the codgen.yml, when using graphql-request with react-query

Open

#5156 opened on Dec 1, 2020

View on GitHub
 (1 comment) (2 reactions) (0 assignees)TypeScript (10,341 stars) (1,295 forks)batch import
help wantedkind/enhancementplugins

Description

Is your feature request related to a problem? Please describe.

When using react-query plugin with graphql-request, it requires you to always pass the client in the generated query like in the provided example:

import { useMyQuery } from './generated';
import { client } from './my-graphql-request-client';

export const MyComponent = () => {
  const { status, data, error, isFetching } = useMyQuery(client, {});
};

Describe the solution you'd like It would be cool to pass the client in the codegen.yml, like for the example you do with the fetch option:

plugins:
  - add:
     content: "import { endpointUrl, fetchParams } from './my-config';"
  - typescript
  - typescript-operations
  - typescript-react-query
config:
  fetcher:
    endpoint: 'endpointUrl'
    fetchParams: 'fetchParams'

Contributor guide