/** * @Author: Bachir Soussi Chiadmi * @Date: 11-04-2017 * @Email: bachir@figureslibres.io * @Last modified by: bach * @Last modified time: 16-04-2017 * @License: GPL-V3 */ const webpack = require('webpack'); const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); module.exports = { entry: ["./assets/main.js", "./assets/main.scss"], output: { path: __dirname + "/assets/dist/", filename: "main.js" }, devtool: 'source-map', module: { rules: [ /* your other rules for JavaScript transpiling go in here */ { // regular css files test: /\.css$/, use: ExtractTextPlugin.extract({ use: 'css-loader?importLoaders=1', }), }, { // sass / scss loader for webpack test: /\.(sass|scss)$/, use: ExtractTextPlugin.extract(['css-loader', 'sass-loader']) }, { // fonts test: /\.(eot|svg|ttf|woff|woff2)$/, use: "file-loader?name=fonts/[name].[ext]" }, ] }, plugins: [ new ExtractTextPlugin({ // define where to save the file filename: '[name].css', allChunks: true, }), // new UglifyJsPlugin({ // sourceMap: true, // parallel:4, // uglifyOptions: { // ecma: 8, // // disable most of compress to gain in compilation speed // // https://slack.engineering/keep-webpack-fast-a-field-guide-for-better-build-performance-f56a5995e8f1 // compress: { // arrows: false, // booleans: false, // // cascade: false, // collapse_vars: false, // comparisons: false, // computed_props: false, // hoist_funs: false, // hoist_props: false, // hoist_vars: false, // if_return: false, // inline: false, // join_vars: false, // keep_infinity: true, // loops: false, // negate_iife: false, // properties: false, // reduce_funcs: false, // reduce_vars: false, // sequences: false, // side_effects: false, // switches: false, // top_retain: false, // toplevel: false, // typeofs: false, // unused: false, // conditionals: false, // dead_code: true, // evaluate: false, // warnings: false // }, // } // }) ], watch: true };