resolvers.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // const { transport, emailTemplate } = require('./mail')
  2. const LoginError = new Error('You must be logged in.')
  3. // const PermissionError = new Error('Insufficient permissions.')
  4. const Query = {
  5. training: async (parent, args, context, info) => {
  6. if (!context.request.userId) throw LoginError
  7. return context.db.query.training({ data: args }, info)
  8. },
  9. trainings: async (parent, args, context, info) => {
  10. if (!context.request.userId) throw LoginError
  11. return context.db.query.trainings({}, info)
  12. },
  13. trainingTypes: async (parent, args, context, info) => {
  14. if (!context.request.userId) throw LoginError
  15. return context.db.query.trainingTypes()
  16. },
  17. blocks: async (parent, args, context, info) => {
  18. if (!context.request.userId) throw LoginError
  19. return context.db.query.trainingTypes()
  20. }
  21. }
  22. const Mutation = {
  23. createTraining: async (parent, args, context, info) => {
  24. if (!context.request.userId) throw LoginError
  25. const training = await context.db.mutation.createTraining(
  26. { data: args }, info
  27. )
  28. return training
  29. },
  30. createTrainingType: async (parent, args, context, info) => {
  31. if (!context.request.userId) throw LoginError
  32. const trainingType = await context.db.mutation.createTrainingType(
  33. { data: args }, info
  34. )
  35. return trainingType
  36. },
  37. createBlock: async (parent, args, context, info) => {
  38. if (!context.request.userId) throw LoginError
  39. const block = await context.db.mutation.createBlock(
  40. { data: args }, info
  41. )
  42. return block
  43. }
  44. }
  45. const resolvers = {
  46. Query,
  47. Mutation
  48. }
  49. module.exports = { resolvers }