From: alexlamsl Date: Sun, 25 Dec 2016 02:36:23 +0000 (+0800) Subject: upgrade dependencies X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=917d2201e84cea98f86f4fa216bd596ef21fc913;p=html-minifier.git upgrade dependencies clean-css 4.0.0 --- diff --git a/README.md b/README.md index 4bb4900..e34b70f 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ Most of the options are disabled by default. | `includeAutoGeneratedTags` | Insert tags generated by HTML parser | `true` | | `keepClosingSlash` | Keep the trailing slash on singleton elements | `false` | | `maxLineLength` | Specify a maximum line length. Compressed output will be split by newlines at valid HTML split-points | -| `minifyCSS` | Minify CSS in style elements and style attributes (uses [clean-css](https://github.com/jakubpawlowicz/clean-css)). `advanced` optimisations are disabled by default | `false` (could be `true`, `Object`, `Function(text)`) | +| `minifyCSS` | Minify CSS in style elements and style attributes (uses [clean-css](https://github.com/jakubpawlowicz/clean-css)) | `false` (could be `true`, `Object`, `Function(text)`) | | `minifyJS` | Minify JavaScript in script elements and event attributes (uses [UglifyJS](https://github.com/mishoo/UglifyJS2)) | `false` (could be `true`, `Object`, `Function(text, inline)`) | | `minifyURLs` | Minify URLs in various attributes (uses [relateurl](https://github.com/stevenvachon/relateurl)) | `false` (could be `String`, `Object`, `Function(text)`) | | `preserveLineBreaks` | Always collapse to 1 line break (never remove it entirely) when whitespace between tags include a line break. Must be used in conjunction with `collapseWhitespace=true` | `false` | diff --git a/package.json b/package.json index 38b8091..55a229e 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ }, "dependencies": { "camel-case": "3.0.x", - "clean-css": "3.4.x", + "clean-css": "4.0.x", "commander": "2.9.x", "he": "1.1.x", "ncname": "1.0.x", diff --git a/src/htmlminifier.js b/src/htmlminifier.js index f9841bc..431281b 100644 --- a/src/htmlminifier.js +++ b/src/htmlminifier.js @@ -702,17 +702,12 @@ function processOptions(options) { if (typeof minifyCSS !== 'object') { minifyCSS = {}; } - if (typeof minifyCSS.advanced === 'undefined') { - minifyCSS.advanced = false; - } options.minifyCSS = function(text) { text = text.replace(/(url\s*\(\s*)("|'|)(.*?)\2(\s*\))/ig, function(match, prefix, quote, url, suffix) { return prefix + quote + options.minifyURLs(url) + quote + suffix; }); - var start = text.match(/^\s*\s*$/, '') : text; try { - return new CleanCSS(minifyCSS).minify(style).styles; + return new CleanCSS(minifyCSS).minify(text).styles; } catch (err) { options.log(err); diff --git a/tests/minifier.js b/tests/minifier.js index 77c63be..dd7ec27 100644 --- a/tests/minifier.js +++ b/tests/minifier.js @@ -595,7 +595,7 @@ QUnit.test('remove comments from styles', function(assert) { input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; @@ -658,37 +658,37 @@ QUnit.test('remove CDATA sections from scripts/styles', function(assert) { input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; assert.equal(minify(input), input); - output = ''; + output = ''; assert.equal(minify(input, { minifyCSS: true }), output); input = ''; @@ -2252,6 +2252,26 @@ QUnit.test('url attribute minification', function(assert) { minifyURLs: { site: 'http://website.com/foo bar/' } }), output); + input = ''; + assert.equal(minify(input, { minifyURLs: { site: 'http://website.com/' } }), input); + assert.equal(minify(input, { minifyURLs: { site: 'http://website.com/foo%20bar/' } }), input); + assert.equal(minify(input, { minifyURLs: { site: 'http://website.com/foo%20bar/(baz)/' } }), input); + output = ''; + assert.equal(minify(input, { + minifyCSS: true, + minifyURLs: { site: 'http://website.com/' } + }), output); + output = ''; + assert.equal(minify(input, { + minifyCSS: true, + minifyURLs: { site: 'http://website.com/foo%20bar/' } + }), output); + output = ''; + assert.equal(minify(input, { + minifyCSS: true, + minifyURLs: { site: 'http://website.com/foo%20bar/(baz)/' } + }), output); + input = ''; output = ''; assert.equal(minify(input, { minifyURLs: { site: 'http://site.com/' } }), output);