1 | 'use strict';
|
2 |
|
3 | const errorOverlayMiddleware = require('react-dev-utils/errorOverlayMiddleware');
|
4 | const noopServiceWorkerMiddleware = require('react-dev-utils/noopServiceWorkerMiddleware');
|
5 | const ignoredFiles = require('react-dev-utils/ignoredFiles');
|
6 | const config = require('./webpack.config.dev');
|
7 | const path = require('path');
|
8 | const paths = require('./paths');
|
9 | const packageJson = require(paths.appPackageJson);
|
10 | const mkJson = require(path.join(paths.appSrc, 'mk.json'));
|
11 |
|
12 | const serverOption = mkJson.server
|
13 | const protocol = serverOption.https === 'true' ? 'https' : 'http';
|
14 | const host = serverOption.host || '0.0.0.0';
|
15 |
|
16 | module.exports = function(proxy, allowedHost) {
|
17 | return {
|
18 | disableHostCheck:
|
19 | !proxy || process.env.DANGEROUSLY_DISABLE_HOST_CHECK === 'true',
|
20 | compress: true,
|
21 | clientLogLevel: 'none',
|
22 | contentBase: paths.appPublic,
|
23 | watchContentBase: true,
|
24 | hot: true,
|
25 | publicPath: config.output.publicPath,
|
26 | quiet: true,
|
27 | watchOptions: {
|
28 | ignored: ignoredFiles(paths.appSrc),
|
29 | },
|
30 | https: protocol === 'https',
|
31 | host: host,
|
32 | overlay: false,
|
33 | historyApiFallback: {
|
34 | disableDotRule: true,
|
35 | },
|
36 | public: allowedHost,
|
37 | proxy,
|
38 | before(app) {
|
39 | app.use(errorOverlayMiddleware());
|
40 | app.use(noopServiceWorkerMiddleware());
|
41 | },
|
42 | };
|
43 | };
|