graphql-collector

1.0.2 • Public • Published

graphql-collector

Import GraphQL queries/mutations/subscriptions of your project to one object

Installation

npm version

npm i graphql-collector

Use as global module

npm i -g graphql-collector

then run command graphql-collector [directory] [filename.json]

graphql-collector graphql schema.json

or simply run in your project, module will try to find all graphql files in folder and save to file schema.json

graphql-collector

Usage

const { collect } = require('graphql-collector')
 
const graphqlSchemasDir = path.join(__dirname, 'graphql')
 
const schema = collect(graphqlSchemasDir).then(schema => {
  console.log(schema)
})
 

Also you can use collectToFile function

const { collectToFile } = require('graphql-collector')
 
const graphqlSchemasDir = path.join(__dirname, 'graphql')
 
const file = path.join(__dirname, 'graphql.json')
 
const schema = await collectToFile(graphqlSchemasDir, file)
 

Example

Files: movie-fragment.graphql

fragment Movie on Film {
  id
  title
  director
  planetConnection {
    planets {
      ...Place
    }
  }
}

place-fragment.graphql

fragment Place on Planet {
  name
  climates
}

listmovies.graphql

query ListMovies {
  allFilms {
    films {
      ...Movie
    }
  }
}

Will be convert to this object

  const schema = {
    ListMovies: `query ListMovies { allFilms { films { ...Movie } } } fragment 
    Movie on Film { id title director planetConnection { planets { ...Place } } } 
    fragment Place on Planet { name climates }`
  }

Package Sidebar

Install

npm i graphql-collector

Weekly Downloads

1

Version

1.0.2

License

MIT

Unpacked Size

9.79 kB

Total Files

7

Last publish

Collaborators

  • yariksav