1234567891011121314151617181920 |
- import cors from 'cors';
- import express from 'express';
- import http from 'http';
- import { expressMiddleware } from '../express4/index.js';
- import { ApolloServerPluginDrainHttpServer } from '../plugin/drainHttpServer/index.js';
- import { urlForHttpServer } from '../utils/urlForHttpServer.js';
- export async function startStandaloneServer(server, options) {
- const app = express();
- const httpServer = http.createServer(app);
- server.addPlugin(ApolloServerPluginDrainHttpServer({ httpServer: httpServer }));
- await server.start();
- const context = options?.context ?? (async () => ({}));
- app.use(cors(), express.json({ limit: '50mb' }), expressMiddleware(server, { context }));
- const listenOptions = options?.listen ?? { port: 4000 };
- await new Promise((resolve) => {
- httpServer.listen(listenOptions, resolve);
- });
- return { url: urlForHttpServer(httpServer) };
- }
- //# sourceMappingURL=index.js.map
|