text: /* eslint-disable */
  const { ApolloServer } = require('apollo-server-express')
  const {
   ApolloServerPluginLandingPageGraphQLPlayground,
  } = require('apollo-server-core')
  const typeDefs = require('./gql/types')
  const resolvers = require('./gql/resolvers')
  
  const express = require('express')
  const app = express()
  const passport = require('passport')
  const cors = require('cors')
  const helmet = require('helmet')
  const lusca = require('lusca')
  const session = require('express-session')
  const MemoryStore = require('memorystore')(session)
  const routes = require('./web/routes')
  
  require('./web/utils.js')
  const bots = require('./templates/basic/')
  bots()
  require('./bot')
  
  app.use(
   session({
    store: new MemoryStore({ checkPeriod: 86400000 }),
    secret: '45BNkjhb56k7DFBK87hyiHDF',
    resave: false,
    saveUninitialized: false,
   })
  )
  app.use(cors({ origin: '*' }))
  app.use(lusca())
  app.use(helmet())
  app.use(passport.initialize())
  app.use(passport.session())
  app.use(express.json())
  app.use(express.urlencoded({ extended: true }))
  app.use('/', routes)
  
  const start = async (endpoint) => {
   const server = new ApolloServer({
    typeDefs,
    resolvers,
    context: (req) => {
     return { req }
    },
    plugins: [ApolloServerPluginLandingPageGraphQLPlayground()],
   })
   await server.start()
   server.applyMiddleware({ app, endpoint })
  }
  start('/graphql')
  
  app.listen(4000, () => {
   console.log('Servidor Web encendido!')
  })
  