@midgar/graphql-server

1.0.0-alpha.1.1 • Public • Published

Build Status Coverage

@midgar/graphql-server

PLugin Midgar pour ajouter un serveur graphql avec loader de modules graphql et injéction de services.

Installation

$ npm i @midgar/graphql-server

Si tout s'est bien passé, un message de confirmation s'affiche:

#midgar-cli
@midgar/graphql-server added to plugins.json !

Fonctionnement

Ce plugin ajoute un type de module midgar-graphql dans le dossier ./graphql/.

module grapql

Exemple de module graphl:

import { gql } from 'apollo-server-express'

// Type defs graphql
const typeDefs = gql`
  type User {
    id: ID!
    email: String!
  }

  extend type Query {
    addUser(email: String): User
    getUsers: [User]
  }
`

export default {
  // Services à incjecter
  dependencies: ['mid:user']
  graphql: (mid, userService) => {
    return {
      typeDefs,
      resolvers:{
        User: {
        ...
        }
        Query: {
          createUser: async (parent, args, ctx, info) => {
            await userService.create(args.email, args.parssword)
          },
          getUsers: (parent, args, ctx, info) => {
            ...
          },
        }
      }
    }
  }
}

Vous pouvez séparrer le fichier si besoin:

import typeDefs from './user.typedefs'
import resolvers from './user.resolvers'

export default {
  dependencies: ['mid:user']
  graphql: (...args) => {
    return {
      typeDefs,
      resolvers: () => resolvers(...args)
    }
  }
}

Les fichiers *.typedefs.js et *.resolvers.js ne sont pas importé lors de l'import des modules graphql.

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.0.0-alpha.1.13latest

Version History

VersionDownloads (Last 7 Days)Published
1.0.0-alpha.1.13
1.0.0-alpha.1.00

Package Sidebar

Install

npm i @midgar/graphql-server

Weekly Downloads

3

Version

1.0.0-alpha.1.1

License

MIT

Unpacked Size

13.7 kB

Total Files

7

Last publish

Collaborators

  • edwardlow