JSPM

@graphql-yoga/node

2.13.14-alpha-20221020232806-62e4e8ad
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 40593
  • Score
    100M100P100Q150298F
  • License MIT

Package Exports

  • @graphql-yoga/node
  • @graphql-yoga/node/http-utils
  • @graphql-yoga/node/index
  • @graphql-yoga/node/package.json
  • @graphql-yoga/node/types

Readme

@graphql-yoga/node

const { GraphQLSchema, GraphQLObjectType, GraphQLString } = require('graphql')
const { createServer } = require('@graphql-yoga/node')

const schema = new GraphQLSchema({
  query: new GraphQLObjectType({
    name: 'Query',
    fields: () => ({
      song: {
        type: new GraphQLObjectType({
          name: 'Song',
          fields: () => ({
            firstVerse: {
              type: GraphQLString,
              resolve: (_, __, { logger }) => {
                logger.info('I can even use the same logger!')
                return "Now I know my ABC's."
              },
            },
            secondVerse: {
              type: GraphQLString,
              resolve: () =>
                new Promise((resolve) =>
                  setTimeout(
                    () => resolve("Next time won't you sing with me?"),
                    5000,
                  ),
                ),
            },
          }),
        }),
        resolve: () => ({}),
      },
    }),
  }),
})

const server = createServer({ schema })
server.start()