diff --git a/packages/components/model-user/src/graphql.js b/packages/components/model-user/src/graphql.js index 1d26c3191343eafbd08200c2d28cbef8d2988c49..1983846579d3d3ac70add0829b386ff1bd011974 100644 --- a/packages/components/model-user/src/graphql.js +++ b/packages/components/model-user/src/graphql.js @@ -1,18 +1,19 @@ const logger = require('@pubsweet/logger') -const User = require('./user') + +const eager = 'teams.members.[user, alias]' const resolvers = { Query: { user(_, { id }, ctx) { - return ctx.connectors.User.fetchOne(id, ctx) + return ctx.connectors.User.fetchOne(id, ctx, { eager }) }, users(_, { where }, ctx) { - return ctx.connectors.User.fetchAll(where, ctx, { eager: 'teams' }) + return ctx.connectors.User.fetchAll(where, ctx, { eager }) }, // Authentication currentUser(_, vars, ctx) { if (!ctx.user) return null - return User.find(ctx.user) + return ctx.connectors.User.model.find(ctx.user) }, }, Mutation: { @@ -33,13 +34,13 @@ const resolvers = { return ctx.connectors.User.update(id, input, ctx) }, // Authentication - async loginUser(_, { input }) { + async loginUser(_, { input }, ctx) { const authentication = require('pubsweet-server/src/authentication') let isValid = false let user try { - user = await User.findByUsername(input.username) + user = await ctx.connectors.User.model.findByUsername(input.username) isValid = await user.validPassword(input.password) } catch (err) { logger.debug(err)