/* eslint no-var: 0, no-console: 0, import/no-extraneous-dependencies: 0 */ import webpack from 'webpack'; import WebpackDevServer from 'webpack-dev-server'; import webpackConfig from './webpack.client.rails.hot.config'; const { resolve } = require('path'); const webpackConfigLoader = require('react-on-rails/webpackConfigLoader'); const configPath = resolve('..', 'config'); const { output, settings } = webpackConfigLoader(configPath); const hotReloadingUrl = output.publicPathWithHost; const hotReloadingPort = settings.dev_server.port; const hotReloadingHostname = settings.dev_server.host; const compiler = webpack(webpackConfig); const devServer = new WebpackDevServer(compiler, { proxy: { '*': `http://lvh.me:${hotReloadingPort}`, }, contentBase: hotReloadingUrl, hot: true, inline: true, historyApiFallback: true, quiet: false, noInfo: false, lazy: false, stats: { colors: true, hash: false, version: false, chunks: false, children: false, }, }); devServer.listen(hotReloadingPort, hotReloadingHostname, (err) => { if (err) console.error(err); console.log( `=> 🔥 Webpack development server is running on ${hotReloadingUrl}`, ); });