const {
basedir, entry, htmls
} = require('../.conf/entry');
const chalk = require('chalk');
const webpackDevServer = require('webpack-dev-server');
const webpack = require('webpack');
const path = require('path');
if (!process.env.IMEXT) {
console.log(chalk.red('Environment variable IMEXT not set\n\n'));
}
const config = require('../.conf/config')({
target: 'server',
entry,
basedir,
htmls
});
const options = {
contentBase: path.join(basedir, 'server'),
hotOnly: true,
host: '0.0.0.0',
port: 8080,
hot: true
};
webpackDevServer.addDevServerEntrypoints(config, options);
const compiler = webpack(config);
const server = new webpackDevServer(compiler, options);
server.listen(8080, '0.0.0.0', () => {
console.log(chalk.yellow('\nDev server listening on port 8080\n'));
Object.keys(entry)
.map(name => `http://localhost:8080/${name}.html`)
.forEach(page => {
console.log(chalk.green(page))
require('opn')(page);
});
console.log();
});