#!/usr/bin/env node /* eslint-disable */ const { exists } = require('fs-extra'); const { resolve } = require('path'); const serverStart = require('./lib'); // Force production mode process.env.NODE_ENV = 'production'; (async () => { // Read Vue config if exists let ssr; let spaPaths; if (await exists(resolve('neue.config.js'))) { const options = require(resolve('neue.config.js')); if (options) { ssr = options.ssr; spaPaths = options.spaPaths; } } const host = process.env.HOST || '0.0.0.0'; const port = process.env.PORT || 8080; // Start server const httpServer = await serverStart({ ssr, spaPaths, host, port, dist: resolve('dist'), }); console.log(`Server started at http://${host}:${port}`); // Handle exit const cleanExit = () => { if (httpServer) { httpServer.close(() => { process.exit(); }); } }; process.on('SIGINT', cleanExit); process.on('SIGTERM', cleanExit); })().catch(err => { console.error(err); process.exit(1); });