From 48b1d6ca1a0e3f1e2d84c62e5879dfb762fb307a Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 2 Jun 2020 01:01:15 +0800 Subject: Upgrade packages. --- Timeline/ClientApp/webpack.config.dev.js | 73 ++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 Timeline/ClientApp/webpack.config.dev.js (limited to 'Timeline/ClientApp/webpack.config.dev.js') diff --git a/Timeline/ClientApp/webpack.config.dev.js b/Timeline/ClientApp/webpack.config.dev.js new file mode 100644 index 00000000..12b25253 --- /dev/null +++ b/Timeline/ClientApp/webpack.config.dev.js @@ -0,0 +1,73 @@ +const path = require('path'); +const webpack = require('webpack'); +const HtmlWebpackPlugin = require('html-webpack-plugin'); +const ForkTsCheckerWebpackPlugin = require('fork-ts-checker-webpack-plugin'); +const PnpWebpackPlugin = require('pnp-webpack-plugin'); + +const { commonRules, htmlCommonConfig } = require('./webpack.common'); + +const config = { + entry: ['react-hot-loader/patch', './src/index.tsx'], + mode: 'development', + devtool: 'eval-source-map', + module: { + rules: [ + ...commonRules, + { + test: /\.(js|jsx|ts|tsx)$/, + exclude: /node_modules/, + loader: 'babel-loader', + options: { + plugins: ['react-hot-loader/babel'], + }, + }, + ], + }, + resolve: { + alias: { + 'react-dom': '@hot-loader/react-dom', + }, + extensions: ['*', '.js', '.jsx', '.ts', '.tsx'], + plugins: [PnpWebpackPlugin], + }, + resolveLoader: { + plugins: [PnpWebpackPlugin.moduleLoader(module)], + }, + optimization: { + runtimeChunk: 'single', + splitChunks: { + chunks: 'all', + cacheGroups: { + vendor: { + test: /[\\/]node_modules[\\/]/, + name: 'vendors', + chunks: 'all', + }, + }, + }, + }, + output: { + path: path.resolve(__dirname, 'dist/'), + filename: '[name].[hash].js', + chunkFilename: '[name].[hash].js', + publicPath: '/', + }, + devServer: { + contentBase: path.join(__dirname, 'public/'), + host: '0.0.0.0', + port: 3000, + publicPath: 'http://localhost:3000/', + historyApiFallback: true, + hotOnly: true, + }, + plugins: [ + new HtmlWebpackPlugin({ + ...htmlCommonConfig, + devServer: 'http://localhost:3000', + }), + new ForkTsCheckerWebpackPlugin(), + new webpack.HotModuleReplacementPlugin(), + ], +}; + +module.exports = config; -- cgit v1.2.3