@rollup/plugin-graphql
TypeScript icon, indicating that this package has built-in type declarations

2.0.4 • Public • Published

npm size libera manifesto

@rollup/plugin-graphql

🍣 A Rollup plugin which Converts .gql/.graphql(s) files to ES6 modules.

Requirements

This plugin requires an LTS Node version (v14.0.0+) and Rollup v1.20.0+.

Install

Using npm:

npm install @rollup/plugin-graphql --save-dev

Usage

Create a rollup.config.js configuration file and import the plugin:

import graphql from '@rollup/plugin-graphql';

export default {
  input: 'src/index.js',
  output: {
    dir: 'output',
    format: 'cjs'
  },
  plugins: [graphql()]
};

Then call rollup either via the CLI or the API.

With an accompanying file src/index.js, you can import GraphQL files or named queries/mutations:

// src/index.js

// import a GraphQL Document from a GraphQL file,
import schema from './schema.graphql';

// or import named Query/Mutation
import { BatmanQuery, JokerMutation } from './schema.graphql';

Fragments

Thanks to graphql-tag, fragments import is supported by using #import "...".

Given the following file heroFragment.graphql:

fragment HeroFragment on Hero {
  id
  name
}

You can import it like this:

#import "./heroFragment.graphql"

query AllHeroes {
  heros {
    ...HeroFragment
  }
}

Options

exclude

Type: String | Array[...String]
Default: null

A picomatch pattern, or array of patterns, which specifies the files in the build the plugin should ignore. By default no files are ignored.

include

Type: String | Array[...String]
Default: null

A picomatch pattern, or array of patterns, which specifies the files in the build the plugin should operate on. By default all files are targeted.

Meta

CONTRIBUTING

LICENSE (MIT)

Package Sidebar

Install

npm i @rollup/plugin-graphql

Weekly Downloads

134,570

Version

2.0.4

License

MIT

Unpacked Size

9.9 kB

Total Files

6

Last publish

Collaborators

  • shellscape
  • rich_harris
  • guybedford
  • lukastaegert