]> BookStack Code Mirror - bookstack/blobdiff - webpack.config.js
Finished off intitial conversion to webpack
[bookstack] / webpack.config.js
index 0f54147a0fb0f69c5a9e7c568e15ca7da4f9e14e..7b81dcdfc62cd4a794e409a316c36268096fc2ac 100644 (file)
@@ -2,14 +2,9 @@ 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 config = {
+    mode: dev? 'development' : 'production',
     entry: {
         app: './resources/assets/js/index.js',
         styles: './resources/assets/sass/styles.scss',
@@ -34,23 +29,40 @@ const config = {
             },
             {
                 test: /\.scss$/,
-                use: extractSass.extract({
-                    use: [{
-                        loader: "css-loader", options: {
-                            sourceMap: dev
-                        }
-                    }, {
-                        loader: "sass-loader", options: {
-                            sourceMap: dev
-                        }
-                    }],
-                    // use style-loader in development
-                    fallback: "style-loader"
-                })
+                use: [{
+                    loader: 'file-loader',
+                    options: {
+                        name: '[name].css',
+                        context: './src/css/',
+                        outputPath: './',
+                        publicPath: 'public/'
+                    }
+                }, {
+                    loader: 'extract-loader', options: {
+                        publicPath: '',
+                    }
+                }, {
+                    loader: "css-loader", options: {
+                        sourceMap: dev
+                    }
+                }, {
+                    loader: 'postcss-loader',
+                    options: {
+                        ident: 'postcss',
+                        sourceMap: dev,
+                        plugins: (loader) => [
+                            require('autoprefixer')(),
+                        ]
+                    }
+                }, {
+                    loader: "sass-loader", options: {
+                        sourceMap: dev
+                    }
+                }]
             }
         ]
     },
-    plugins: [extractSass]
+    plugins: []
 };
 
 if (dev) {