]> BookStack Code Mirror - bookstack/blobdiff - webpack.config.js
Update common.php
[bookstack] / webpack.config.js
index 0f54147a0fb0f69c5a9e7c568e15ca7da4f9e14e..78b679a0a82f51fab622fb35ff60c0dece578119 100644 (file)
@@ -1,15 +1,11 @@
 const path = require('path');
 const dev = process.env.NODE_ENV !== 'production';
 
-const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
-const ExtractTextPlugin = require("extract-text-webpack-plugin");
-
-const extractSass = new ExtractTextPlugin({
-    filename: "[name].css"
-    // disable: process.env.NODE_ENV === "development"
-});
+const MiniCssExtractPlugin = require("mini-css-extract-plugin");
 
 const config = {
+    target: 'web',
+    mode: dev? 'development' : 'production',
     entry: {
         app: './resources/assets/js/index.js',
         styles: './resources/assets/sass/styles.scss',
@@ -22,43 +18,35 @@ const config = {
     },
     module: {
         rules: [
-            {
-                test: /\.js$/,
-                exclude: /(node_modules)/,
-                use: {
-                    loader: 'babel-loader',
-                    options: {
-                        presets: ['@babel/preset-env']
-                    }
-                }
-            },
             {
                 test: /\.scss$/,
-                use: extractSass.extract({
-                    use: [{
+                use: [
+                    {
+                        loader: MiniCssExtractPlugin.loader,
+                        options: {}
+                    },
+                    {
                         loader: "css-loader", options: {
-                            sourceMap: dev
-                        }
+                        sourceMap: dev
+                    }
                     }, {
                         loader: "sass-loader", options: {
                             sourceMap: dev
                         }
-                    }],
-                    // use style-loader in development
-                    fallback: "style-loader"
-                })
+                    }
+                ]
             }
         ]
     },
-    plugins: [extractSass]
+    plugins: [
+        new MiniCssExtractPlugin({
+            filename: "[name].css",
+        }),
+    ]
 };
 
 if (dev) {
     config['devtool'] = 'inline-source-map';
 }
 
-if (!dev) {
-    config.plugins.push(new UglifyJsPlugin());
-}
-
 module.exports = config;
\ No newline at end of file