You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1017 B

  1. // Note: You must restart bin/webpack-dev-server for changes to take effect
  2. /* eslint global-require: 0 */
  3. const webpack = require('webpack')
  4. const merge = require('webpack-merge')
  5. const CompressionPlugin = require('compression-webpack-plugin')
  6. const sharedConfig = require('./shared.js')
  7. module.exports = merge(sharedConfig, {
  8. output: { filename: '[name]-[chunkhash].js' },
  9. plugins: [
  10. new webpack.optimize.UglifyJsPlugin({
  11. compress: {
  12. unused: true,
  13. evaluate: true,
  14. booleans: true,
  15. drop_debugger: true,
  16. dead_code: true,
  17. pure_getters: true,
  18. negate_iife: true,
  19. conditionals: true,
  20. loops: true,
  21. cascade: true,
  22. keep_fargs: false,
  23. warnings: true
  24. },
  25. mangle: false,
  26. output: {
  27. comments: false
  28. },
  29. sourceMap: false
  30. }),
  31. new CompressionPlugin({
  32. asset: '[path].gz[query]',
  33. algorithm: 'gzip',
  34. test: /\.(js|css|svg|eot|ttf|woff|woff2)$/
  35. })
  36. ]
  37. })