@@ -2,7 +2,8 @@ const webpack = require('webpack');
2
2
const HtmlWebpackPlugin = require ( 'html-webpack-plugin' ) ;
3
3
const path = require ( 'path' ) ;
4
4
const ClosureCompilerPlugin = require ( 'webpack-closure-compiler' ) ;
5
- // const autoprefixer = require('autoprefixer');
5
+ const autoprefixer = require ( 'autoprefixer' ) ;
6
+ const cssnano = require ( 'cssnano' ) ;
6
7
7
8
8
9
// Resolve to the generated applications
@@ -67,18 +68,17 @@ export const webpackCommonConfig = {
67
68
test : / \. t s $ / ,
68
69
loaders : [
69
70
{
70
- loader : 'babel-loader' ,
71
+ loader : 'babel-loader' , //TODO: Remove Babel once support for lib: for typescript @next
71
72
query : {
72
73
presets : [
73
74
'babel-preset-es2015-webpack'
74
75
] . map ( require . resolve )
75
76
}
76
- }
77
+ } ,
77
78
{
78
79
loader : 'awesome-typescript-loader' ,
79
80
query : {
80
81
useWebpackText : true ,
81
- library : "es6" ,
82
82
tsconfig : ngAppResolve ( './src/tsconfig.json' ) ,
83
83
resolveGlobs : false ,
84
84
module : "es2015" ,
@@ -95,6 +95,12 @@ export const webpackCommonConfig = {
95
95
test : / \. j s o n $ / ,
96
96
loader : 'json-loader'
97
97
} ,
98
+ // TODO: https://github.com/webpack/css-loader#sourcemaps
99
+ // Style sourcemaps create a runtime and bundle overhead.
100
+ // Do we want this?
101
+
102
+ // We pass sourcemap flag (on external builds [not from my dev] this will not work because of)
103
+ // https://github.com/webpack/raw-loader/pull/8
98
104
{
99
105
test : / \. c s s $ / ,
100
106
loaders : [ 'raw-loader' , 'postcss-loader' ]
@@ -111,12 +117,34 @@ export const webpackCommonConfig = {
111
117
test :/ \. s c s s $ / ,
112
118
loaders : [ 'raw-loader' , 'postcss-loader' , 'sass-loader?sourceMap' ]
113
119
} ,
120
+ // Asset loaders
121
+ //
122
+ {
123
+ test : / \. ( j p g | p n g ) $ / ,
124
+ loader : 'url-loader?limit=25000' , // Only inline for sizes <= 25000
125
+ include : PATHS . images
126
+ } ,
127
+ {
128
+ test : / \. ( j p g | p n g ) $ / ,
129
+ loader : 'file-loader?name=[path][name].[hash].[ext]' ,
130
+ include : PATHS . images
131
+ } ,
132
+ {
133
+ test : / \. s v g $ / ,
134
+ loader : 'file-loader' ,
135
+ include : PATHS . images
136
+ }
114
137
{
115
138
test : / \. h t m l $ / ,
116
139
loader : 'raw-loader'
117
140
}
118
141
]
119
142
} ,
143
+ postcss : ( ) => {
144
+ return {
145
+ defaults : [ cssnano , autoprefixer ]
146
+ } ;
147
+ } ,
120
148
plugins : [
121
149
new webpack . optimize . CommonsChunkPlugin ( {
122
150
name : [ 'polyfills' , 'vendor' ] . reverse ( )
0 commit comments