import { ApolloServer } from 'apollo-server' import responseCachePlugin from 'apollo-server-plugin-response-cache' import { ad } from './utils/activedirectory' import { typeDefs } from './typeDefs' import { resolvers } from './resolvers' import { schemaDirectives } from './schemaDirectives' const server = new ApolloServer({ cors: process.env.NODE_ENV === 'production' ? { origin: ['http://ti.pp.ifms.edu.br'] } : true, typeDefs, resolvers, schemaDirectives, context: ({ req }) => { return { ad, req } }, plugins: [ responseCachePlugin({ sessionId: requestContext => requestContext.request.http.headers.get('Authorization') || null }) ] }) export { server }