const config = require('./config'); const webpack = require('webpack'); const merge = require('webpack-merge'); const utils = require('./utils'); const baseWebpackConfig = require('./webpack.base.conf'); const HtmlWebpackPlugin = require('html-webpack-plugin'); // add hot-reload related code to entry chunks Object.keys(baseWebpackConfig.entry).forEach((name) => { baseWebpackConfig.entry[name] = baseWebpackConfig.entry[name].concat('./webpack/dev-client'); }); module.exports = merge(baseWebpackConfig, { module: { rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap }), }, // cheap-module-eval-source-map is faster for development devtool: '#cheap-module-eval-source-map', plugins: [ new webpack.DefinePlugin({ 'process.env': config.dev.env, }), // https://github.com/glenjamin/webpack-hot-middleware#installation--usage new webpack.HotModuleReplacementPlugin(), // https://github.com/ampedandwired/html-webpack-plugin new HtmlWebpackPlugin({ filename: 'index.html', template: './website/client/index.html', inject: true, }), ], });