Guest User

Untitled

a guest
Dec 14th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.87 KB | None | 0 0
  1. let path = require('path')
  2. let webpack = require('webpack')
  3. let HtmlWebpackPlugin = require('html-webpack-plugin')
  4. let ExtractTextPlugin = require('extract-text-webpack-plugin')
  5. let WebpackNotifierPlugin = require('webpack-notifier')
  6.  
  7. let CONFIG = require('./config')
  8.  
  9. module.exports = {
  10. devtool: 'source-map',
  11. entry: [
  12. CONFIG.APP_PATH + CONFIG.CLIENT_ENTRY_FILE
  13. ],
  14. target: 'web',
  15. output: {
  16. path: path.resolve(CONFIG.CLIENT_OUTPUT_PATH),
  17. filename: 'bundle.js',
  18. publicPath: '/',
  19. },
  20. resolve: {
  21. extensions: ['.js'],
  22. },
  23. plugins: [
  24. new WebpackNotifierPlugin(),
  25. new HtmlWebpackPlugin(CONFIG.HtmlWebpackPlugin),
  26. new webpack.NoEmitOnErrorsPlugin(),
  27. new webpack.DefinePlugin({
  28. "process.env": {
  29. "BUILD_TARGET": JSON.stringify("src/web")
  30. }
  31. }),
  32. new ExtractTextPlugin('styles.css'),
  33. ],
  34. performance: {
  35. hints: false
  36. },
  37. module: {
  38. rules: [{
  39. test: /\.js$/,
  40. use: {
  41. loader: 'babel-loader',
  42. options: {
  43. cacheDirectory: 'cache',
  44. }
  45. },
  46. include: [
  47. path.resolve('src/web'),
  48. ],
  49. exclude: ['.spec.'],
  50. }, {
  51. test: /\.scss$/,
  52. use: ['style-loader', 'css-loader', 'sass-loader']
  53. }, {
  54. test: /\.css$/,
  55. use: ExtractTextPlugin.extract({
  56. fallback: 'style-loader',
  57. loader: 'css-loader'
  58. })
  59. },
  60. {
  61. test: /\.(jpe?g|png|gif|svg)$/i,
  62. use: [
  63. 'file-loader',
  64. 'image-webpack-loader'
  65. ]
  66. },
  67. ]
  68. }
  69. }
Add Comment
Please, Sign In to add comment