GraphQL se esperaba Iterable, pero no encontró uno para el campo xxx.yyy

Actualmente estoy intentando GraphQL con NodeJS y no sé por qué ocurre este error con la siguiente consulta:

{
  library{
    name,
    user {
      name
      email
    }
  }
}

No estoy seguro si eltype de miresolveLibrary es correcto, porque en cualquier ejemplo eché un vistazo a que usabannew GraphQL.GraphQLList(), pero en mi caso realmente quiero devolver un solo objeto de usuario, no una matriz de usuarios.

Mi código:

const GraphQL = require('graphql');
const DB = require('../database/db');
const user = require('./user').type;

const library = new GraphQL.GraphQLObjectType({
    name: 'library',
    description: `This represents a user's library`,
    fields: () => {
        return {
            name: {
                type: GraphQL.GraphQLString,
                resolve(library) {
                    return library.name;
                }
            },
            user: {
                type: user,
                resolve(library) {
                    console.log(library.user);
                    return library.user
                }
            }
        }
    }
});

const resolveLibrary = {
    type: library,
    resolve(root) {
        return {
            name: 'My fancy library',
            user: {
                name: 'User name',
                email: {
                    email: '[email protected]'
                }
           }
        }
    }
}

module.exports = resolveLibrary;

Error:

Error: Expected Iterable, but did not find one for field library.user.

Así que milibrary esquema proporciona unuser campo que devuelve los datos correctos (se llama a console.log).

Respuestas a la pregunta(2)

Su respuesta a la pregunta