Rev 2865 | AutorÃa | Ultima modificación | Ver Log |
const path = require("path");const isDevelopment = process.env.NODE_ENV === "development";const MiniCssExtractPlugin = require("mini-css-extract-plugin");const TerserPlugin = require("terser-webpack-plugin");// const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin// change active path hereconst currentPath = {entry: "./app/index.jsx",output: path.join(__dirname, "public/bundles"),filename: "applicationBundle.js",};module.exports = {entry: currentPath.entry,output: {path: currentPath.output,filename: currentPath.filename,},watch: false,mode: "production",resolve: {alias: {ckeditor5: path.resolve(__dirname,"node_modules/ckeditor5/dist/ckeditor5.js"),"ckeditor5.css": path.resolve(__dirname,"node_modules/ckeditor5/dist/ckeditor5.css"),"@components": path.resolve(__dirname, "app/components/"),"@constants": path.resolve(__dirname, "app/constants/"),"@hocs": path.resolve(__dirname, "app/hocs/index.js"),"@hooks": path.resolve(__dirname, "app/hooks/index.js"),"@api": path.resolve(__dirname, "app/libs/axios.js"),"@layouts": path.resolve(__dirname, "app/layouts/"),"@pages": path.resolve(__dirname, "app/pages/"),"@providers": path.resolve(__dirname, "app/providers/"),"@store": path.resolve(__dirname, "app/redux/"),"@styles": path.resolve(__dirname, "app/styles/"),"@services": path.resolve(__dirname, "app/services/"),"@utils": path.resolve(__dirname, "app/utils/"),"@app": path.resolve(__dirname, "app/"),store: path.resolve(__dirname, "app/redux/"),components: path.resolve(__dirname, "app/components/"),utils: path.resolve(__dirname, "app/utils/"),},extensions: [".js", ".jsx", ".scss", ".css"],},module: {rules: [{test: /(js|jsx)$/,use: ["babel-loader"],exclude: /node_modules/,},{test: /\.css$/i,use: [MiniCssExtractPlugin.loader, "css-loader"],},{test: /\.module\.s(a|c)ss$/,use: [MiniCssExtractPlugin.loader,{loader: "css-loader",options: {modules: {localIdentName: "[local]--[hash:base64:5]",},sourceMap: isDevelopment,},},{loader: "sass-loader",options: {sourceMap: isDevelopment,},},],},{test: /\.s(a|c)ss$/,exclude: /\.module.(s(a|c)ss)$/,use: [MiniCssExtractPlugin.loader,"css-loader",{loader: "sass-loader",options: {sourceMap: isDevelopment,},},],},],},plugins: [new MiniCssExtractPlugin({filename: "[name].css",chunkFilename: "[id].css",}),],optimization: {minimizer: [new TerserPlugin({extractComments: false,}),],},};