Skip to content

Stonepaw/graphql-codegen-typescript-operation-types

Repository files navigation

graphql-codegen-typescript-operation-types

This graphql-codegen plugin generates the base TypeScript types used in the graphql operations.

Intended as a drop in replacement for the typescript plugin but only generates the input, enums, and object types utilized in the graphql operations. Use one of @graphql-codegen/typescript or graphql-codegen-typescript-operation-types, not both. This plugin uses the underlying typescript plugin but only outputs used types.

The types generated by this plugin are simple, and refers to the exact structure of your schema.

This plugin is best used in conjunction with the typescript-operations plugin with preResolveTypes: true and setting omitObjectTypes: true. In this configuration this plugin will emit only the enum and input types used in the graphql mutations or queries.

All scalar types are always emitted.

Example

Types only

overwrite: true
schema: 'path/to/schema.gql'

generates:
  path/to/file.ts:
    documents: 'path/to/gql/**/*.graphql'
    plugins:
      - graphql-codegen-typescript-operation-types
    config:
      omitObjectTypes: true

Types and fragments

overwrite: true
schema: 'path/to/schema.gql'

generates:
  path/to/file.ts:
    documents: 'path/to/gql/**/*.graphql'
    config:
      omitObjectTypes: true
      preResolveTypes: true
    plugins:
      - graphql-codegen-typescript-operation-types
      - typescript-operations

About

Typescript graphql generator that generates only the types needed for an operation

Resources

License

Stars

Watchers

Forks

Packages

No packages published