forked from styleguidist/react-styleguidist
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcreate-server.js
32 lines (27 loc) · 868 Bytes
/
create-server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
'use strict';
const webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');
const merge = require('webpack-merge');
const makeWebpackConfig = require('./make-webpack-config');
module.exports = function createServer(config, env) {
const webpackConfig = makeWebpackConfig(config, env);
const webpackDevServerConfig = merge(webpackConfig.devServer, {
noInfo: true,
compress: true,
clientLogLevel: 'none',
hot: true,
quiet: true,
watchOptions: {
ignored: /node_modules/,
},
contentBase: config.assetsDir,
stats: webpackConfig.stats || {},
});
const compiler = webpack(webpackConfig);
const devServer = new WebpackDevServer(compiler, webpackDevServerConfig);
// User defined customizations
if (config.configureServer) {
config.configureServer(devServer.app, env);
}
return { app: devServer, compiler };
};