lamassu-server/lib/graphql/server.js
2025-03-31 15:43:08 +01:00

27 lines
No EOL
800 B
JavaScript

const logger = require('../logger')
const { ApolloServer } = require('@apollo/server')
const devMode = !!require('minimist')(process.argv.slice(2)).dev
const context = ({ req, res }) => ({
deviceId: req.deviceId, /* lib/middlewares/populateDeviceId.js */
deviceName: req.deviceName, /* lib/middlewares/authorize.js */
operatorId: res.locals.operatorId, /* lib/middlewares/operatorId.js */
pid: req.query.pid,
settings: req.settings, /* lib/middlewares/populateSettings.js */
})
const graphQLServer = new ApolloServer({
typeDefs: require('./types'),
resolvers: require('./resolvers'),
introspection: false,
formatError: error => {
logger.error(error)
return error
},
includeStacktraceInErrorResponses: devMode,
logger
})
module.exports = { graphQLServer, context }