require("dotenv").config(); // const CleanWebpackPlugin = require('clean-webpack-plugin') const webpack = require("webpack"); const path = require("path"); // const Visualizer = require('webpack-visualizer-plugin') // print stack-trace of deprecations in webpack plugins, if something causes this // process.traceDeprecation = true module.exports = { mode: "development", entry: { main: "./frontend/index.js", }, output: { path: path.resolve(__dirname, "static/js/dist"), filename: "bundle.js", }, devtool: "cheap-module-eval-source-map", resolve: { alias: { // "react": "preact/compat", // "react-dom/test-utils": "preact/test-utils", // "react-dom": "preact/compat", // 'vcat-header': path.resolve(__dirname, '../app/components/common/header.component.js'), }, }, plugins: [ // new CleanWebpackPlugin(['dist']), new webpack.DefinePlugin({ "process.env.NODE_ENV": '"development"', "process.env.EXPORT_HOST": JSON.stringify(process.env.EXPORT_HOST), // 'process.env.S3_HOST': '"' + process.env.S3_HOST + '"', "process.env.API_HOST": '""', __REACT_DEVTOOLS_GLOBAL_HOOK__: "({ isDisabled: true })", }), // new Visualizer({ // filename: './statistics.html' // }) ], module: { rules: [ { test: /\.css$/, use: ["style-loader", "css-loader"], }, { test: /\.js$/, // include: path.resolve(__dirname, 'client'), exclude: /(node_modules|bower_components|build)/, use: { loader: "babel-loader", options: { presets: ["@babel/preset-env"], plugins: ["@babel/plugin-transform-runtime"], }, }, }, ], }, };