Use UglifyJS to minify files in minified target
It is written in JavaScript, is less buggy, and compresses better.
This commit is contained in:
parent
5d797e1a85
commit
e403f52722
30
make.js
30
make.js
@ -652,15 +652,9 @@ function cleanupCSSSource(file) {
|
||||
//
|
||||
// make minified
|
||||
// Builds the minified production viewer that should be compatible with most
|
||||
// modern HTML5 browsers. Requires Google Closure Compiler.
|
||||
// modern HTML5 browsers.
|
||||
//
|
||||
target.minified = function() {
|
||||
var compilerPath = process.env['CLOSURE_COMPILER'];
|
||||
if (!compilerPath) {
|
||||
echo('### Closure Compiler is not set. Specify CLOSURE_COMPILER variable');
|
||||
exit(1);
|
||||
}
|
||||
|
||||
target.bundle({});
|
||||
target.locale();
|
||||
|
||||
@ -703,22 +697,20 @@ target.minified = function() {
|
||||
MINIFIED_DIR + BUILD_DIR + 'pdf.js',
|
||||
MINIFIED_DIR + '/web/viewer.js'
|
||||
];
|
||||
var cmdPrefix = 'java -jar \"' + compilerPath + '\" ' +
|
||||
'--language_in ECMASCRIPT5 ' +
|
||||
'--warning_level QUIET ' +
|
||||
'--compilation_level SIMPLE_OPTIMIZATIONS ';
|
||||
|
||||
echo();
|
||||
echo('### Minifying js files');
|
||||
|
||||
exec(cmdPrefix + viewerFiles.map(function(s) {
|
||||
return '--js \"' + s + '\"';
|
||||
}).join(' ') +
|
||||
' --js_output_file \"' + MINIFIED_DIR + '/web/pdf.viewer.js\"');
|
||||
exec(cmdPrefix + '--js \"' + MINIFIED_DIR + '/build/pdf.js' + '\" ' +
|
||||
'--js_output_file \"' + MINIFIED_DIR + '/build/pdf.min.js' + '\"');
|
||||
exec(cmdPrefix + '--js \"' + MINIFIED_DIR + '/build/pdf.worker.js' + '\" ' +
|
||||
'--js_output_file \"' + MINIFIED_DIR + '/build/pdf.worker.min.js' + '\"');
|
||||
var UglifyJS = require('uglify-js');
|
||||
// V8 chokes on very long sequences. Works around that.
|
||||
var optsForHugeFile = {compress: {sequences: false}};
|
||||
|
||||
UglifyJS.minify(viewerFiles).code
|
||||
.to(MINIFIED_DIR + '/web/pdf.viewer.js');
|
||||
UglifyJS.minify(MINIFIED_DIR + '/build/pdf.js').code
|
||||
.to(MINIFIED_DIR + '/build/pdf.min.js');
|
||||
UglifyJS.minify(MINIFIED_DIR + '/build/pdf.worker.js', optsForHugeFile).code
|
||||
.to(MINIFIED_DIR + '/build/pdf.worker.min.js');
|
||||
|
||||
echo();
|
||||
echo('### Cleaning js files');
|
||||
|
@ -9,6 +9,7 @@
|
||||
"rimraf": "^2.4.1",
|
||||
"shelljs": "~0.4.0",
|
||||
"typogr": "~0.6.5",
|
||||
"uglify-js": "^2.6.1",
|
||||
"wintersmith": "^2.0.0",
|
||||
"yargs": "^3.14.0"
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user