webpack.common.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. var webpack = require('webpack');
  2. var HtmlWebpackPlugin = require('html-webpack-plugin');
  3. var ExtractTextPlugin = require('extract-text-webpack-plugin');
  4. var helpers = require('./helpers');
  5. module.exports = {
  6. entry: {
  7. 'polyfills': './src/polyfills.ts',
  8. 'vendor': './src/vendor.ts',
  9. 'app': './src/main.ts'
  10. },
  11. resolve: {
  12. extensions: ['', '.ts', '.js']
  13. },
  14. module: {
  15. loaders: [
  16. {
  17. test: /\.ts$/,
  18. loaders: ['awesome-typescript-loader', 'angular2-template-loader']
  19. },
  20. {
  21. test: /\.html$/,
  22. loader: 'html'
  23. },
  24. {
  25. test: /\.css$/,
  26. exclude: helpers.root('src', 'app'),
  27. loader: ExtractTextPlugin.extract('style', 'css?sourceMap')
  28. },
  29. {
  30. test: /\.css$/,
  31. include: helpers.root('src', 'app'),
  32. loader: 'raw'
  33. }
  34. ]
  35. },
  36. plugins: [
  37. new webpack.optimize.CommonsChunkPlugin({
  38. name: ['app', 'vendor', 'polyfills']
  39. }),
  40. new HtmlWebpackPlugin({
  41. template: 'src/index.html'
  42. })
  43. ]
  44. };