const path = require("path"); const MiniCssExtractPlugin = require("mini-css-extract-plugin"); // eslint-disable-next-line @blueprintjs/classes-constants -- incorrect match const src = path.resolve("src"); const nodeModules = path.resolve("node_modules"); const publicPath = ""; module.exports = { entry: [ "core-js", "regenerator-runtime/runtime", "whatwg-fetch", "abort-controller/polyfill", "./src/index", ], output: { path: path.resolve("build"), publicPath, }, module: { rules: [ { test: /\.css$/, include: src, exclude: [path.resolve(src, "index.css")], use: [ MiniCssExtractPlugin.loader, { loader: "css-loader", options: { modules: { localIdentName: "[name]__[local]___[contenthash:base64:5]", }, importLoaders: 1, }, }, ], }, { test: /index\.css$/, include: [path.resolve(src, "index.css")], use: [MiniCssExtractPlugin.loader, "css-loader"], }, { test: /\.json$/, include: [src, nodeModules], loader: "json-loader", exclude: /manifest.json$/, }, ], }, };