Skip to content

Commit b81f42b

Browse files
committed
Updated config some more, held off on testing until more deliberation tomorrow
1 parent 5985eeb commit b81f42b

File tree

1 file changed

+32
-4
lines changed

1 file changed

+32
-4
lines changed

addon/ng2/models/webpack-build-config.ts

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ const webpack = require('webpack');
22
const HtmlWebpackPlugin = require('html-webpack-plugin');
33
const path = require('path');
44
const ClosureCompilerPlugin = require('webpack-closure-compiler');
5-
// const autoprefixer = require('autoprefixer');
5+
const autoprefixer = require('autoprefixer');
6+
const cssnano = require('cssnano');
67

78

89
// Resolve to the generated applications
@@ -67,18 +68,17 @@ export const webpackCommonConfig = {
6768
test: /\.ts$/,
6869
loaders: [
6970
{
70-
loader: 'babel-loader',
71+
loader: 'babel-loader', //TODO: Remove Babel once support for lib: for typescript@next
7172
query: {
7273
presets: [
7374
'babel-preset-es2015-webpack'
7475
].map(require.resolve)
7576
}
76-
}
77+
},
7778
{
7879
loader: 'awesome-typescript-loader',
7980
query: {
8081
useWebpackText: true,
81-
library: "es6",
8282
tsconfig: ngAppResolve('./src/tsconfig.json'),
8383
resolveGlobs: false,
8484
module: "es2015",
@@ -95,6 +95,12 @@ export const webpackCommonConfig = {
9595
test: /\.json$/,
9696
loader: 'json-loader'
9797
},
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
98104
{
99105
test: /\.css$/,
100106
loaders: ['raw-loader', 'postcss-loader']
@@ -111,12 +117,34 @@ export const webpackCommonConfig = {
111117
test:/\.scss$/,
112118
loaders: ['raw-loader', 'postcss-loader', 'sass-loader?sourceMap']
113119
},
120+
// Asset loaders
121+
//
122+
{
123+
test: /\.(jpg|png)$/,
124+
loader: 'url-loader?limit=25000', // Only inline for sizes <= 25000
125+
include: PATHS.images
126+
},
127+
{
128+
test: /\.(jpg|png)$/,
129+
loader: 'file-loader?name=[path][name].[hash].[ext]',
130+
include: PATHS.images
131+
},
132+
{
133+
test: /\.svg$/,
134+
loader: 'file-loader',
135+
include: PATHS.images
136+
}
114137
{
115138
test: /\.html$/,
116139
loader: 'raw-loader'
117140
}
118141
]
119142
},
143+
postcss: () => {
144+
return {
145+
defaults: [cssnano, autoprefixer]
146+
};
147+
},
120148
plugins: [
121149
new webpack.optimize.CommonsChunkPlugin({
122150
name: ['polyfills', 'vendor'].reverse()

0 commit comments

Comments
 (0)