const path = require("path"); // const DotenvPlugin = require("dotenv-webpack"); const ESLintPlugin = require("eslint-webpack-plugin"); const CopyPlugin = require("copy-webpack-plugin"); const MiniCssExtractPlugin = require("mini-css-extract-plugin"); module.exports = { entry: { serviceWorker: "./src/serviceWorker.ts", contentScript: "./src/contentScript.ts", popup: "./src/popup.ts", }, module: { rules: [ { test: /\.(js|ts)x?$/, use: ["babel-loader"], exclude: /node_modules/, }, { test: /\.(scss|css)$/, use: [MiniCssExtractPlugin.loader, "css-loader", "sass-loader"], }, ], }, resolve: { extensions: [".ts", ".js"], }, output: { filename: "[name].js", path: path.resolve(__dirname, "dist"), clean: true, }, plugins: [ // new DotenvPlugin(), new ESLintPlugin({ extensions: ["js", "ts"], overrideConfigFile: path.resolve(__dirname, ".eslintrc"), }), new MiniCssExtractPlugin({ filename: "styles/[name].css", }), new CopyPlugin({ patterns: [{ from: "static" }], }), ], };