diff options
Diffstat (limited to 'node_modules/clean-css/lib/options')
4 files changed, 24 insertions, 3 deletions
diff --git a/node_modules/clean-css/lib/options/compatibility.js b/node_modules/clean-css/lib/options/compatibility.js index ca881c627..8e6a119a8 100644 --- a/node_modules/clean-css/lib/options/compatibility.js +++ b/node_modules/clean-css/lib/options/compatibility.js @@ -56,7 +56,9 @@ var DEFAULTS = { '::before', '::first-letter', '::first-line' - ] // selectors with these pseudo-elements can be merged as these are universally supported + ], // selectors with these pseudo-elements can be merged as these are universally supported + mergeLimit: 8191, // number of rules that can be safely merged together + multiplePseudoMerging: true }, units: { ch: true, diff --git a/node_modules/clean-css/lib/options/fetch.js b/node_modules/clean-css/lib/options/fetch.js new file mode 100644 index 000000000..0aaad7866 --- /dev/null +++ b/node_modules/clean-css/lib/options/fetch.js @@ -0,0 +1,7 @@ +var loadRemoteResource = require('../reader/load-remote-resource'); + +function fetchFrom(callback) { + return callback || loadRemoteResource; +} + +module.exports = fetchFrom; diff --git a/node_modules/clean-css/lib/options/inline.js b/node_modules/clean-css/lib/options/inline.js index 4a6997075..54761f40a 100644 --- a/node_modules/clean-css/lib/options/inline.js +++ b/node_modules/clean-css/lib/options/inline.js @@ -3,6 +3,10 @@ function inlineOptionsFrom(rules) { return rules; } + if (rules === false) { + return ['none']; + } + return undefined === rules ? ['local'] : rules.split(','); diff --git a/node_modules/clean-css/lib/options/optimization-level.js b/node_modules/clean-css/lib/options/optimization-level.js index d9828287b..0d3ad7303 100644 --- a/node_modules/clean-css/lib/options/optimization-level.js +++ b/node_modules/clean-css/lib/options/optimization-level.js @@ -17,9 +17,9 @@ DEFAULTS[OptimizationLevel.One] = { optimizeBackground: true, optimizeBorderRadius: true, optimizeFilter: true, - optimizeFont: true, optimizeFontWeight: true, optimizeOutline: true, + removeEmpty: true, removeNegativePaddings: true, removeQuotes: true, removeWhitespace: true, @@ -41,11 +41,14 @@ DEFAULTS[OptimizationLevel.Two] = { mergeNonAdjacentRules: true, mergeSemantically: false, overrideProperties: true, + removeEmpty: true, reduceNonAdjacentRules: true, removeDuplicateFontRules: true, removeDuplicateMediaBlocks: true, removeDuplicateRules: true, - restructureRules: false + removeUnusedAtRules: false, + restructureRules: false, + skipProperties: [] }; var ALL_KEYWORD_1 = '*'; @@ -55,6 +58,7 @@ var FALSE_KEYWORD_2 = 'off'; var TRUE_KEYWORD_1 = 'true'; var TRUE_KEYWORD_2 = 'on'; +var LIST_VALUE_SEPARATOR = ','; var OPTION_SEPARATOR = ';'; var OPTION_VALUE_SEPARATOR = ':'; @@ -99,6 +103,10 @@ function optimizationLevelFrom(source) { source[One].roundingPrecision = roundingPrecisionFrom(source[One].roundingPrecision); } + if (Two in source && 'skipProperties' in source[Two] && typeof(source[Two].skipProperties) == 'string') { + source[Two].skipProperties = source[Two].skipProperties.split(LIST_VALUE_SEPARATOR); + } + if (Zero in source || One in source || Two in source) { level[Zero] = override(level[Zero], source[Zero]); } |