graphql.js 847 B

123456789101112131415161718192021222324252627282930313233
  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 DocumentResolvers = require('../schemas/resolvers-document')
  10. const FolderResolvers = require('../schemas/resolvers-folder')
  11. const GroupResolvers = require('../schemas/resolvers-group')
  12. const TagResolvers = require('../schemas/resolvers-tag')
  13. const UserResolvers = require('../schemas/resolvers-user')
  14. const resolvers = _.merge(
  15. DocumentResolvers,
  16. FolderResolvers,
  17. GroupResolvers,
  18. TagResolvers,
  19. UserResolvers,
  20. DateScalar
  21. )
  22. const Schema = gqlTools.makeExecutableSchema({
  23. typeDefs,
  24. resolvers
  25. })
  26. module.exports = Schema