42 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			42 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | // #docregion
 | ||
|  | var webpack = require('webpack'); | ||
|  | var webpackMerge = require('webpack-merge'); | ||
|  | var ExtractTextPlugin = require('extract-text-webpack-plugin'); | ||
|  | var commonConfig = require('./webpack.common.js'); | ||
|  | var helpers = require('./helpers'); | ||
|  | 
 | ||
|  | const ENV = process.env.NODE_ENV = process.env.ENV = 'production'; | ||
|  | 
 | ||
|  | module.exports = webpackMerge(commonConfig, { | ||
|  |   devtool: 'source-map', | ||
|  | 
 | ||
|  |   output: { | ||
|  |     path: helpers.root('dist'), | ||
|  |     publicPath: '/', | ||
|  |     filename: '[name].[hash].js', | ||
|  |     chunkFilename: '[id].[hash].chunk.js' | ||
|  |   }, | ||
|  | 
 | ||
|  |   plugins: [ | ||
|  |     new webpack.NoEmitOnErrorsPlugin(), | ||
|  |     new webpack.optimize.UglifyJsPlugin({ // https://github.com/angular/angular/issues/10618
 | ||
|  |       mangle: { | ||
|  |         keep_fnames: true | ||
|  |       } | ||
|  |     }), | ||
|  |     new ExtractTextPlugin('[name].[hash].css'), | ||
|  |     new webpack.DefinePlugin({ | ||
|  |       'process.env': { | ||
|  |         'ENV': JSON.stringify(ENV) | ||
|  |       } | ||
|  |     }), | ||
|  |     new webpack.LoaderOptionsPlugin({ | ||
|  |       htmlLoader: { | ||
|  |         minimize: false // workaround for ng2
 | ||
|  |       } | ||
|  |     }) | ||
|  |   ] | ||
|  | }); | ||
|  | 
 | ||
|  | // #enddocregion
 |