@@ -4,8 +4,6 @@ var chalk = require('chalk');
4
4
var filesize = require ( 'filesize' ) ;
5
5
var stripAnsi = require ( 'strip-ansi' ) ;
6
6
var gzipSize = require ( 'gzip-size' ) . sync ;
7
- var removeFileNameHash = require ( './removeFileNameHash' ) ;
8
- var getDifferenceLabel = require ( './getDifferenceLabel' ) ;
9
7
// Print a detailed summary of build files.
10
8
module . exports = function printFileSizes ( appBuild , stats , previousSizeMap ) {
11
9
var assets = stats
@@ -45,4 +43,27 @@ module.exports = function printFileSizes(appBuild, stats, previousSizeMap) {
45
43
} ) ;
46
44
} ;
47
45
46
+ function removeFileNameHash ( appBuild , fileName ) {
47
+ return fileName
48
+ . replace ( appBuild , '' )
49
+ . replace ( / \/ ? ( .* ) ( \. \w + ) ( \. j s | \. c s s ) / , ( match , p1 , p2 , p3 ) => p1 + p3 ) ;
50
+ } ;
51
+
52
+ // Input: 1024, 2048
53
+ // Output: "(+1 KB)"
54
+ function getDifferenceLabel ( currentSize , previousSize ) {
55
+ var FIFTY_KILOBYTES = 1024 * 50 ;
56
+ var difference = currentSize - previousSize ;
57
+ var fileSize = ! Number . isNaN ( difference ) ? filesize ( difference ) : 0 ;
58
+ if ( difference >= FIFTY_KILOBYTES ) {
59
+ return chalk . red ( '+' + fileSize ) ;
60
+ } else if ( difference < FIFTY_KILOBYTES && difference > 0 ) {
61
+ return chalk . yellow ( '+' + fileSize ) ;
62
+ } else if ( difference < 0 ) {
63
+ return chalk . green ( fileSize ) ;
64
+ } else {
65
+ return '' ;
66
+ }
67
+ } ;
68
+
48
69
0 commit comments