1.1.16 • Published 5 years ago

graphql-merge-resolvers v1.1.16

Weekly downloads
952
License
MIT
Repository
github
Last release
5 years ago

graphql-merge-resolvers

NPM version Minified size License: MIT TravisCI

Lightweight and powerful package makes easy to modularizing and merge your resolvers.

Table of Contents

Features

  • Easy to use
  • Pure javascript
  • Lightweight package without dependencies
  • ES6 classes

Install

npm i --save graphql-merge-resolvers

or

yarn add graphql-merge-resolvers

Usage

Basic

const GMR = require('graphql-merge-resolvers'); // Import module

// Demo user resolver
const userResolver = {
  Query: { 
    users: (parent, args, context, info) => ['Hello', 'GraphQL'],
  },
  Mutation: {
    createUser: (parent, args, context, info) => {},
  },

  User: {
    books: (parent, args, context, info) => {},
  }
}

// Demo book resolver
const bookResolver = {
  Query: { 
    books: (parent, args, context, info) => ['Awesome', 'Javascript'],
  },
  Mutation: {
    createBook: (parent, args, context, info) => {},
  },

  Book: {
    postedBy: (parent, args, context, info) => {},
  }
}

// Merge time!!!
const mainResolver = GMR.merge([
  userResolver,
  bookResolver,
]);

console.log(mainResolver);

Now we have new resolver

// console.log(mainResolver);
{
  Query: {
    users: (parent, args, context, info) => ['Hello', 'GraphQL'],
    books: (parent, args, context, info) => ['Awesome', 'Javascript'],
  },
  Mutation: {
    createUser: (parent, args, context, info) => {},
    createBook: (parent, args, context, info) => {},
  },
  User: {
    books: (parent, args, context, info) => {},
  },
  Book: {
    postedBy: (parent, args, context, info) => {},
  },
}

To get started with graphql-merge-resolvers, you can refer to this example.

API

GMR

merge(customResolvers: object or array, rootResolver: object): object

ArgsTypeDefaultDescription
customResolversObject or ArrayundefinedResolver or list of your resolvers want to merge. Required
rootResolverObject{}Root resolver (options)

Contribution

Contribution are always welcome and recommended! Here is how:

  • Fork the repository (here is the guide).
  • Clone to your machine git clone https://github.com/YOUR_USERNAME/graphql-merge-resolvers.git
  • Make your changes
  • Create a pull request

License

graphql-merge-resolvers is released under the MIT license. See LICENSE for details.

Any question or support will welcome.

1.1.16

5 years ago

1.1.12

6 years ago

1.1.11

6 years ago

1.1.10

6 years ago

1.1.9

6 years ago

1.1.8

6 years ago

1.1.7

6 years ago

1.1.6

6 years ago

1.1.5

6 years ago

1.1.4

6 years ago

1.1.3

6 years ago

1.1.2

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago