1 | import { createDevServer } from '../boot/server/createDevServer';
|
2 | import chalk from 'chalk';
|
3 | const { PORT } = process.env;
|
4 | const requestedPort = parseInt(PORT, 10) || 3001;
|
5 |
|
6 |
|
7 | async function main() {
|
8 | if (typeof shopConfig.default.apolloConfig !== 'object') {
|
9 | throw new Error(`Shop config file needs to export 'apolloConfig'`);
|
10 | }
|
11 | const schemaExtensions = shopConfig.default.schemaExtensions || [];
|
12 | const { apolloConfig } = shopConfig.default;
|
13 | const apolloServerPlugins = shopConfig.default.apolloServerPlugins || [];
|
14 | console.log(chalk.cyan('Starting Apollo dev server...'));
|
15 | const { port, apolloServer } = await createDevServer({
|
16 | apolloConfig,
|
17 | port: requestedPort,
|
18 | schemaExtensions,
|
19 | apolloServerPlugins
|
20 | });
|
21 |
|
22 | const url = `http://localhost:${port}${apolloServer.graphqlPath}`;
|
23 | console.log(
|
24 | chalk.green(`🚀 GraphQL-server ready at ${chalk.underline(url)}`)
|
25 | );
|
26 | }
|
27 |
|
28 | main().catch(err => {
|
29 | console.error(err);
|
30 | process.exit(1);
|
31 | });
|