9
9
10
10
process . env . NODE_ENV = 'production' ;
11
11
12
- var filesize = require ( 'filesize' ) ;
12
+ var fs = require ( 'fs' ) ;
13
+ var gzipSize = require ( 'gzip-size' ) ;
13
14
var rimrafSync = require ( 'rimraf' ) . sync ;
14
15
var webpack = require ( 'webpack' ) ;
15
16
var config = require ( '../config/webpack.config.prod' ) ;
@@ -22,8 +23,9 @@ rimrafSync(paths.appBuild + '/*');
22
23
function logBuildSize ( assets , extension ) {
23
24
for ( var i = 0 ; i < assets . length ; i ++ ) {
24
25
var asset = assets [ i ] ;
25
- if ( asset [ 'name' ] . endsWith ( extension ) ) {
26
- console . log ( 'Size of ' + asset [ 'name' ] + ': ' + filesize ( asset [ 'size' ] ) ) ;
26
+ if ( asset . name . endsWith ( '.' + extension ) ) {
27
+ var fileContents = fs . readFileSync ( paths . appBuild + '/' + asset . name ) ;
28
+ console . log ( 'Size (gzipped) of ' + asset . name + ': ' + gzipSize . sync ( fileContents ) ) ;
27
29
}
28
30
}
29
31
}
@@ -59,8 +61,8 @@ webpack(config).run(function(err, stats) {
59
61
console . log ( ' ' + openCommand + ' http://localhost:8080' ) ;
60
62
console . log ( ) ;
61
63
var assets = stats . toJson ( ) [ 'assets' ] ;
62
- logBuildSize ( assets , '. js' ) ;
63
- logBuildSize ( assets , '. css' ) ;
64
+ logBuildSize ( assets , 'js' ) ;
65
+ logBuildSize ( assets , 'css' ) ;
64
66
}
65
67
console . log ( 'The bundle is optimized and ready to be deployed to production.' ) ;
66
68
} ) ;
0 commit comments