module.exports = (env, config) => { const isEnvDevelopment = env === 'development' const { port, publicPath, srcPath, distPath, appJs, appHtml, defineEnv, } = config return { mode: isEnvDevelopment ? 'development' : 'production', entry: require('./entry')(isEnvDevelopment, appJs), output: require('./output')(isEnvDevelopment, distPath, publicPath), module: { rules: require('./rules')(isEnvDevelopment, srcPath), }, optimization: require('./optimization')(isEnvDevelopment), resolve: require('./resolve')(srcPath), devtool: isEnvDevelopment ? 'cheap-module-eval-source-map' : 'eval-source-map', plugins: require('./plugins')(env, defineEnv, publicPath, port, appHtml), } }