Socket
Socket
Sign inDemoInstall

@lightspeed/apollo-generate-types

Package Overview
Dependencies
9
Maintainers
8
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @lightspeed/apollo-generate-types

Tool to generate the typescript types of the GraphQL queries, based on the GraphQL schema


Version published
Weekly downloads
9
increased by800%
Maintainers
8
Created
Weekly downloads
 

Readme

Source

@lightspeed/apollo-generate-types

npm version

Introduction

Generate TypeScript types for GraphQL queries based on a schema, with a watch command to auto-update on changes.

Quick start

Install

Install dependency in your app:

yarn add @lightspeed/apollo-generate-types -D

Usage

yarn apollo-generate-types [--output=<dir>] [--output-filename=<filename>] [--watch] --schema=<GraphQLSchemaPath> [globFiles]

We recommend creating an npm script to run the command. In your package.json inside scripts:

"gql:generate-types": "apollo-generate-types --schema=./src/__generated__/graphql-schema.graphql 'src/**/*.ts,src/**/*.tsx'"

You can then call yarn gql:generate-types to generate types based on the schema.

Running with watch mode

For development, we recommend running the gql:generate-types script in watch mode:

"dev": "NODE_ENV=development nodemon server.js && yarn gql:generate-types --watch"

Whenever a query is added to a .ts or .tsx file a type file will be generated in the output dir. For example:

const GET_PRODUCTS = gql`
  query getProducts($term: String) {
    products(term: $term, pageSize: 5) {
      edges {
        node {
          id
          name
        }
      }
    }
  }
`;

Will generate a src/__generated__/getProducts.ts file with types for this query.

Options

NameRequiredDefaultDescription
--schema=<GraphQLSchemaPath>Yes-Path to GraphQL schema file
--output=<dir>Nosrc/__generated__/Path where files will be generated
--output-filename=<file>No<graphql-schema-file-name>-types.tsName of the generated files for full schema types
--watchNo-If a file containing a gql query or the schema changes, types will be re-generated
[globFiles]No-Files to look for gql queries. It can be a glob parameter. If no files is set, then the process will only watch the schema

Examples

yarn apollo-generate-types --schema=schema.graphql 'src/**/*.ts,src/**/*.tsx'
yarn apollo-generate-types --output=generated --watch --schema=schema.graphql 'src/**/*.ts,src/**/*.tsx'
yarn apollo-generate-types --schema=schema.graphql

FAQ

  1. Q: I have the error GraphQLError: Cannot query field "XXXX" on type "Query" when I run the command.

    A: It's an issue with your graphql package in your project. It must be graphql >=14.4.2

FAQs

Last updated on 25 Jan 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc