graphql.js 759 B

12345678910111213141516171819202122232425262728293031
  1. 'use strict'
  2. /* global wiki */
  3. const gqlTools = require('graphql-tools')
  4. const fs = require('fs')
  5. const path = require('path')
  6. const _ = require('lodash')
  7. const typeDefs = fs.readFileSync(path.join(wiki.SERVERPATH, 'schemas/types.graphql'), 'utf8')
  8. const DateScalar = require('../schemas/scalar-date')
  9. const FolderResolvers = require('../schemas/resolvers-folder')
  10. const GroupResolvers = require('../schemas/resolvers-group')
  11. const TagResolvers = require('../schemas/resolvers-tag')
  12. const UserResolvers = require('../schemas/resolvers-user')
  13. const resolvers = _.merge(
  14. FolderResolvers,
  15. GroupResolvers,
  16. TagResolvers,
  17. UserResolvers,
  18. DateScalar
  19. )
  20. const Schema = gqlTools.makeExecutableSchema({
  21. typeDefs,
  22. resolvers
  23. })
  24. module.exports = Schema