summaryrefslogtreecommitdiff
path: root/node_modules/clean-css/lib/optimizer/level-1/value-optimizers
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/clean-css/lib/optimizer/level-1/value-optimizers')
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color.js89
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hex.js189
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hsl.js54
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-rgb.js10
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/degrees.js19
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/fraction.js72
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/precision.js22
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/starts-as-url.js7
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/text-quotes.js31
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/time.js31
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/unit.js46
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-prefix.js23
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-quotes.js22
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-whitespace.js22
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/whitespace.js48
-rw-r--r--node_modules/clean-css/lib/optimizer/level-1/value-optimizers/zero.js49
16 files changed, 0 insertions, 734 deletions
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color.js
deleted file mode 100644
index 58018c90..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color.js
+++ /dev/null
@@ -1,89 +0,0 @@
-var shortenHex = require('./color/shorten-hex');
-var shortenHsl = require('./color/shorten-hsl');
-var shortenRgb = require('./color/shorten-rgb');
-
-var split = require('../../../utils/split');
-
-var ANY_COLOR_FUNCTION_PATTERN = /(rgb|rgba|hsl|hsla)\(([^()]+)\)/gi;
-var COLOR_PREFIX_PATTERN = /#|rgb|hsl/gi;
-var HEX_LONG_PATTERN = /(^|[^='"])#([0-9a-f]{6})/gi;
-var HEX_SHORT_PATTERN = /(^|[^='"])#([0-9a-f]{3})/gi;
-var HEX_VALUE_PATTERN = /[0-9a-f]/i;
-var HSL_PATTERN = /hsl\((-?\d+),(-?\d+)%?,(-?\d+)%?\)/gi;
-var RGBA_HSLA_PATTERN = /(rgb|hsl)a?\((-?\d+),(-?\d+%?),(-?\d+%?),(0*[1-9]+[0-9]*(\.?\d*)?)\)/gi;
-var RGB_PATTERN = /rgb\((-?\d+),(-?\d+),(-?\d+)\)/gi;
-var TRANSPARENT_FUNCTION_PATTERN = /(?:rgba|hsla)\(0,0%?,0%?,0\)/g;
-
-var plugin = {
- level1: {
- value: function color(name, value, options) {
- if (!options.compatibility.properties.colors) {
- return value;
- }
-
- if (!value.match(COLOR_PREFIX_PATTERN)) {
- return shortenHex(value);
- }
-
- value = value
- .replace(RGBA_HSLA_PATTERN, function(match, colorFn, p1, p2, p3, alpha) {
- return (parseInt(alpha) >= 1 ? colorFn + '(' + [p1, p2, p3].join(',') + ')' : match);
- })
- .replace(RGB_PATTERN, function(match, red, green, blue) {
- return shortenRgb(red, green, blue);
- })
- .replace(HSL_PATTERN, function(match, hue, saturation, lightness) {
- return shortenHsl(hue, saturation, lightness);
- })
- .replace(HEX_LONG_PATTERN, function(match, prefix, color, at, inputValue) {
- var suffix = inputValue[at + match.length];
-
- if (suffix && HEX_VALUE_PATTERN.test(suffix)) {
- return match;
- } if (color[0] == color[1] && color[2] == color[3] && color[4] == color[5]) {
- return (prefix + '#' + color[0] + color[2] + color[4]).toLowerCase();
- }
- return (prefix + '#' + color).toLowerCase();
- })
- .replace(HEX_SHORT_PATTERN, function(match, prefix, color) {
- return prefix + '#' + color.toLowerCase();
- })
- .replace(ANY_COLOR_FUNCTION_PATTERN, function(match, colorFunction, colorDef) {
- var tokens = colorDef.split(',');
- var colorFnLowercase = colorFunction && colorFunction.toLowerCase();
- var applies = (colorFnLowercase == 'hsl' && tokens.length == 3)
- || (colorFnLowercase == 'hsla' && tokens.length == 4)
- || (colorFnLowercase == 'rgb' && tokens.length === 3 && colorDef.indexOf('%') > 0)
- || (colorFnLowercase == 'rgba' && tokens.length == 4 && tokens[0].indexOf('%') > 0);
-
- if (!applies) {
- return match;
- }
-
- if (tokens[1].indexOf('%') == -1) {
- tokens[1] += '%';
- }
-
- if (tokens[2].indexOf('%') == -1) {
- tokens[2] += '%';
- }
-
- return colorFunction + '(' + tokens.join(',') + ')';
- });
-
- if (options.compatibility.colors.opacity && name.indexOf('background') == -1) {
- value = value.replace(TRANSPARENT_FUNCTION_PATTERN, function(match) {
- if (split(value, ',').pop().indexOf('gradient(') > -1) {
- return match;
- }
-
- return 'transparent';
- });
- }
-
- return shortenHex(value);
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hex.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hex.js
deleted file mode 100644
index 448ffd85..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hex.js
+++ /dev/null
@@ -1,189 +0,0 @@
-var COLORS = {
- aliceblue: '#f0f8ff',
- antiquewhite: '#faebd7',
- aqua: '#0ff',
- aquamarine: '#7fffd4',
- azure: '#f0ffff',
- beige: '#f5f5dc',
- bisque: '#ffe4c4',
- black: '#000',
- blanchedalmond: '#ffebcd',
- blue: '#00f',
- blueviolet: '#8a2be2',
- brown: '#a52a2a',
- burlywood: '#deb887',
- cadetblue: '#5f9ea0',
- chartreuse: '#7fff00',
- chocolate: '#d2691e',
- coral: '#ff7f50',
- cornflowerblue: '#6495ed',
- cornsilk: '#fff8dc',
- crimson: '#dc143c',
- cyan: '#0ff',
- darkblue: '#00008b',
- darkcyan: '#008b8b',
- darkgoldenrod: '#b8860b',
- darkgray: '#a9a9a9',
- darkgreen: '#006400',
- darkgrey: '#a9a9a9',
- darkkhaki: '#bdb76b',
- darkmagenta: '#8b008b',
- darkolivegreen: '#556b2f',
- darkorange: '#ff8c00',
- darkorchid: '#9932cc',
- darkred: '#8b0000',
- darksalmon: '#e9967a',
- darkseagreen: '#8fbc8f',
- darkslateblue: '#483d8b',
- darkslategray: '#2f4f4f',
- darkslategrey: '#2f4f4f',
- darkturquoise: '#00ced1',
- darkviolet: '#9400d3',
- deeppink: '#ff1493',
- deepskyblue: '#00bfff',
- dimgray: '#696969',
- dimgrey: '#696969',
- dodgerblue: '#1e90ff',
- firebrick: '#b22222',
- floralwhite: '#fffaf0',
- forestgreen: '#228b22',
- fuchsia: '#f0f',
- gainsboro: '#dcdcdc',
- ghostwhite: '#f8f8ff',
- gold: '#ffd700',
- goldenrod: '#daa520',
- gray: '#808080',
- green: '#008000',
- greenyellow: '#adff2f',
- grey: '#808080',
- honeydew: '#f0fff0',
- hotpink: '#ff69b4',
- indianred: '#cd5c5c',
- indigo: '#4b0082',
- ivory: '#fffff0',
- khaki: '#f0e68c',
- lavender: '#e6e6fa',
- lavenderblush: '#fff0f5',
- lawngreen: '#7cfc00',
- lemonchiffon: '#fffacd',
- lightblue: '#add8e6',
- lightcoral: '#f08080',
- lightcyan: '#e0ffff',
- lightgoldenrodyellow: '#fafad2',
- lightgray: '#d3d3d3',
- lightgreen: '#90ee90',
- lightgrey: '#d3d3d3',
- lightpink: '#ffb6c1',
- lightsalmon: '#ffa07a',
- lightseagreen: '#20b2aa',
- lightskyblue: '#87cefa',
- lightslategray: '#778899',
- lightslategrey: '#778899',
- lightsteelblue: '#b0c4de',
- lightyellow: '#ffffe0',
- lime: '#0f0',
- limegreen: '#32cd32',
- linen: '#faf0e6',
- magenta: '#ff00ff',
- maroon: '#800000',
- mediumaquamarine: '#66cdaa',
- mediumblue: '#0000cd',
- mediumorchid: '#ba55d3',
- mediumpurple: '#9370db',
- mediumseagreen: '#3cb371',
- mediumslateblue: '#7b68ee',
- mediumspringgreen: '#00fa9a',
- mediumturquoise: '#48d1cc',
- mediumvioletred: '#c71585',
- midnightblue: '#191970',
- mintcream: '#f5fffa',
- mistyrose: '#ffe4e1',
- moccasin: '#ffe4b5',
- navajowhite: '#ffdead',
- navy: '#000080',
- oldlace: '#fdf5e6',
- olive: '#808000',
- olivedrab: '#6b8e23',
- orange: '#ffa500',
- orangered: '#ff4500',
- orchid: '#da70d6',
- palegoldenrod: '#eee8aa',
- palegreen: '#98fb98',
- paleturquoise: '#afeeee',
- palevioletred: '#db7093',
- papayawhip: '#ffefd5',
- peachpuff: '#ffdab9',
- peru: '#cd853f',
- pink: '#ffc0cb',
- plum: '#dda0dd',
- powderblue: '#b0e0e6',
- purple: '#800080',
- rebeccapurple: '#663399',
- red: '#f00',
- rosybrown: '#bc8f8f',
- royalblue: '#4169e1',
- saddlebrown: '#8b4513',
- salmon: '#fa8072',
- sandybrown: '#f4a460',
- seagreen: '#2e8b57',
- seashell: '#fff5ee',
- sienna: '#a0522d',
- silver: '#c0c0c0',
- skyblue: '#87ceeb',
- slateblue: '#6a5acd',
- slategray: '#708090',
- slategrey: '#708090',
- snow: '#fffafa',
- springgreen: '#00ff7f',
- steelblue: '#4682b4',
- tan: '#d2b48c',
- teal: '#008080',
- thistle: '#d8bfd8',
- tomato: '#ff6347',
- turquoise: '#40e0d0',
- violet: '#ee82ee',
- wheat: '#f5deb3',
- white: '#fff',
- whitesmoke: '#f5f5f5',
- yellow: '#ff0',
- yellowgreen: '#9acd32'
-};
-
-var toHex = {};
-var toName = {};
-
-for (var name in COLORS) {
- var hex = COLORS[name];
-
- if (name.length < hex.length) {
- toName[hex] = name;
- } else {
- toHex[name] = hex;
- }
-}
-
-var toHexPattern = new RegExp('(^| |,|\\))(' + Object.keys(toHex).join('|') + ')( |,|\\)|$)', 'ig');
-var toNamePattern = new RegExp('(' + Object.keys(toName).join('|') + ')([^a-f0-9]|$)', 'ig');
-
-function hexConverter(match, prefix, colorValue, suffix) {
- return prefix + toHex[colorValue.toLowerCase()] + suffix;
-}
-
-function nameConverter(match, colorValue, suffix) {
- return toName[colorValue.toLowerCase()] + suffix;
-}
-
-function shortenHex(value) {
- var hasHex = value.indexOf('#') > -1;
- var shortened = value.replace(toHexPattern, hexConverter);
-
- if (shortened != value) {
- shortened = shortened.replace(toHexPattern, hexConverter);
- }
-
- return hasHex
- ? shortened.replace(toNamePattern, nameConverter)
- : shortened;
-}
-
-module.exports = shortenHex;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hsl.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hsl.js
deleted file mode 100644
index 883bf69e..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-hsl.js
+++ /dev/null
@@ -1,54 +0,0 @@
-// HSL to RGB converter. Both methods adapted from:
-// http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript
-
-function hslToRgb(h, s, l) {
- var r, g, b;
-
- // normalize hue orientation b/w 0 and 360 degrees
- h %= 360;
- if (h < 0) { h += 360; }
- h = ~~h / 360;
-
- if (s < 0) { s = 0; } else if (s > 100) { s = 100; }
- s = ~~s / 100;
-
- if (l < 0) { l = 0; } else if (l > 100) { l = 100; }
- l = ~~l / 100;
-
- if (s === 0) {
- r = g = b = l; // achromatic
- } else {
- var q = l < 0.5
- ? l * (1 + s)
- : l + s - l * s;
- var p = 2 * l - q;
- r = hueToRgb(p, q, h + 1 / 3);
- g = hueToRgb(p, q, h);
- b = hueToRgb(p, q, h - 1 / 3);
- }
-
- return [~~(r * 255), ~~(g * 255), ~~(b * 255)];
-}
-
-function hueToRgb(p, q, t) {
- if (t < 0) { t += 1; }
- if (t > 1) { t -= 1; }
- if (t < 1 / 6) { return p + (q - p) * 6 * t; }
- if (t < 1 / 2) { return q; }
- if (t < 2 / 3) { return p + (q - p) * (2 / 3 - t) * 6; }
- return p;
-}
-
-function shortenHsl(hue, saturation, lightness) {
- var asRgb = hslToRgb(hue, saturation, lightness);
- var redAsHex = asRgb[0].toString(16);
- var greenAsHex = asRgb[1].toString(16);
- var blueAsHex = asRgb[2].toString(16);
-
- return '#'
- + ((redAsHex.length == 1 ? '0' : '') + redAsHex)
- + ((greenAsHex.length == 1 ? '0' : '') + greenAsHex)
- + ((blueAsHex.length == 1 ? '0' : '') + blueAsHex);
-}
-
-module.exports = shortenHsl;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-rgb.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-rgb.js
deleted file mode 100644
index 3c0a5fa3..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/color/shorten-rgb.js
+++ /dev/null
@@ -1,10 +0,0 @@
-function shortenRgb(red, green, blue) {
- var normalizedRed = Math.max(0, Math.min(parseInt(red), 255));
- var normalizedGreen = Math.max(0, Math.min(parseInt(green), 255));
- var normalizedBlue = Math.max(0, Math.min(parseInt(blue), 255));
-
- // Credit: Asen http://jsbin.com/UPUmaGOc/2/edit?js,console
- return '#' + ('00000' + (normalizedRed << 16 | normalizedGreen << 8 | normalizedBlue).toString(16)).slice(-6);
-}
-
-module.exports = shortenRgb;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/degrees.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/degrees.js
deleted file mode 100644
index 29b7672a..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/degrees.js
+++ /dev/null
@@ -1,19 +0,0 @@
-var ZERO_DEG_PATTERN = /\(0deg\)/g;
-
-var plugin = {
- level1: {
- value: function degrees(_name, value, options) {
- if (!options.compatibility.properties.zeroUnits) {
- return value;
- }
-
- if (value.indexOf('0deg') == -1) {
- return value;
- }
-
- return value.replace(ZERO_DEG_PATTERN, '(0)');
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/fraction.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/fraction.js
deleted file mode 100644
index c29a04c3..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/fraction.js
+++ /dev/null
@@ -1,72 +0,0 @@
-var split = require('../../../utils/split');
-var startsAsUrl = require('./starts-as-url');
-
-var OptimizationLevel = require('../../../options/optimization-level').OptimizationLevel;
-
-var EXPRESSION_PATTERN = /^expression\(.*\)$/;
-var ANY_FUNCTION_PATTERN = /^(-(?:moz|ms|o|webkit)-[a-z-]+|[a-z-]+)\((.+)\)$/;
-var TOKEN_SEPARATOR_PATTERN = /([\s,/])/;
-
-var DOT_ZERO_PATTERN = /(^|\D)\.0+(\D|$)/g;
-var FRACTION_PATTERN = /\.([1-9]*)0+(\D|$)/g;
-var LEADING_ZERO_FRACTION_PATTERN = /(^|\D)0\.(\d)/g;
-var MINUS_ZERO_FRACTION_PATTERN = /([^\w\d-]|^)-0([^.]|$)/g;
-var ZERO_PREFIXED_UNIT_PATTERN = /(^|\s)0+([1-9])/g;
-
-function optimizeRecursively(value) {
- var functionTokens;
- var tokens;
-
- if (startsAsUrl(value)) {
- return value;
- }
-
- if (EXPRESSION_PATTERN.test(value)) {
- return value;
- }
-
- functionTokens = ANY_FUNCTION_PATTERN.exec(value);
-
- if (!functionTokens) {
- return optimizeFractions(value);
- }
-
- tokens = split(functionTokens[2], TOKEN_SEPARATOR_PATTERN)
- .map(function(token) { return optimizeRecursively(token); });
-
- return functionTokens[1] + '(' + tokens.join('') + ')';
-}
-
-function optimizeFractions(value) {
- if (value.indexOf('0') == -1) {
- return value;
- }
-
- if (value.indexOf('-') > -1) {
- value = value
- .replace(MINUS_ZERO_FRACTION_PATTERN, '$10$2')
- .replace(MINUS_ZERO_FRACTION_PATTERN, '$10$2');
- }
-
- return value
- .replace(ZERO_PREFIXED_UNIT_PATTERN, '$1$2')
- .replace(DOT_ZERO_PATTERN, '$10$2')
- .replace(FRACTION_PATTERN, function(match, nonZeroPart, suffix) {
- return (nonZeroPart.length > 0 ? '.' : '') + nonZeroPart + suffix;
- })
- .replace(LEADING_ZERO_FRACTION_PATTERN, '$1.$2');
-}
-
-var plugin = {
- level1: {
- value: function fraction(name, value, options) {
- if (!options.level[OptimizationLevel.One].replaceZeroUnits) {
- return value;
- }
-
- return optimizeRecursively(value);
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/precision.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/precision.js
deleted file mode 100644
index 6cbc359b..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/precision.js
+++ /dev/null
@@ -1,22 +0,0 @@
-var plugin = {
- level1: {
- value: function precision(_name, value, options) {
- if (!options.precision.enabled || value.indexOf('.') === -1) {
- return value;
- }
-
- return value
- .replace(options.precision.decimalPointMatcher, '$1$2$3')
- .replace(options.precision.zeroMatcher, function(match, integerPart, fractionPart, unit) {
- var multiplier = options.precision.units[unit].multiplier;
- var parsedInteger = parseInt(integerPart);
- var integer = Number.isNaN(parsedInteger) ? 0 : parsedInteger;
- var fraction = parseFloat(fractionPart);
-
- return Math.round((integer + fraction) * multiplier) / multiplier + unit;
- });
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/starts-as-url.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/starts-as-url.js
deleted file mode 100644
index 7b7f1477..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/starts-as-url.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var URL_PREFIX_PATTERN = /^url\(/i;
-
-function startsAsUrl(value) {
- return URL_PREFIX_PATTERN.test(value);
-}
-
-module.exports = startsAsUrl;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/text-quotes.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/text-quotes.js
deleted file mode 100644
index 09923428..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/text-quotes.js
+++ /dev/null
@@ -1,31 +0,0 @@
-var OptimizationLevel = require('../../../options/optimization-level').OptimizationLevel;
-
-var LOCAL_PREFIX_PATTERN = /^local\(/i;
-var QUOTED_PATTERN = /^('.*'|".*")$/;
-var QUOTED_BUT_SAFE_PATTERN = /^['"][a-zA-Z][a-zA-Z\d\-_]+['"]$/;
-// eslint-disable-next-line max-len
-var GENERIC_FONT_FAMILY_PATTERN = /^['"](?:cursive|default|emoji|fangsong|fantasy|inherit|initial|math|monospace|revert|revert-layer|sans-serif|serif|system-ui|ui-monospace|ui-rounded|ui-sans-serif|ui-serif|unset)['"]$/;
-
-var plugin = {
- level1: {
- value: function textQuotes(name, value, options) {
- if ((name == 'font-family' || name == 'font') && GENERIC_FONT_FAMILY_PATTERN.test(value)) {
- return value;
- }
-
- if (!options.level[OptimizationLevel.One].removeQuotes) {
- return value;
- }
-
- if (!QUOTED_PATTERN.test(value) && !LOCAL_PREFIX_PATTERN.test(value)) {
- return value;
- }
-
- return QUOTED_BUT_SAFE_PATTERN.test(value)
- ? value.substring(1, value.length - 1)
- : value;
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/time.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/time.js
deleted file mode 100644
index 8fb2021c..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/time.js
+++ /dev/null
@@ -1,31 +0,0 @@
-var OptimizationLevel = require('../../../options/optimization-level').OptimizationLevel;
-
-var TIME_VALUE = /^(-?[\d.]+)(m?s)$/;
-
-var plugin = {
- level1: {
- value: function time(name, value, options) {
- if (!options.level[OptimizationLevel.One].replaceTimeUnits) {
- return value;
- }
-
- if (!TIME_VALUE.test(value)) {
- return value;
- }
-
- return value.replace(TIME_VALUE, function(match, val, unit) {
- var newValue;
-
- if (unit == 'ms') {
- newValue = parseInt(val) / 1000 + 's';
- } else if (unit == 's') {
- newValue = parseFloat(val) * 1000 + 'ms';
- }
-
- return newValue.length < match.length ? newValue : match;
- });
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/unit.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/unit.js
deleted file mode 100644
index df2cda59..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/unit.js
+++ /dev/null
@@ -1,46 +0,0 @@
-var WHOLE_PIXEL_VALUE = /(?:^|\s|\()(-?\d+)px/;
-
-var plugin = {
- level1: {
- value: function unit(_name, value, options) {
- if (!WHOLE_PIXEL_VALUE.test(value)) {
- return value;
- }
-
- return value.replace(WHOLE_PIXEL_VALUE, function(match, val) {
- var newValue;
- var intVal = parseInt(val);
-
- if (intVal === 0) {
- return match;
- }
-
- if (options.compatibility.properties.shorterLengthUnits
- && options.compatibility.units.pt
- && intVal * 3 % 4 === 0) {
- newValue = intVal * 3 / 4 + 'pt';
- }
-
- if (options.compatibility.properties.shorterLengthUnits
- && options.compatibility.units.pc
- && intVal % 16 === 0) {
- newValue = intVal / 16 + 'pc';
- }
-
- if (options.compatibility.properties.shorterLengthUnits
- && options.compatibility.units.in
- && intVal % 96 === 0) {
- newValue = intVal / 96 + 'in';
- }
-
- if (newValue) {
- newValue = match.substring(0, match.indexOf(val)) + newValue;
- }
-
- return newValue && newValue.length < match.length ? newValue : match;
- });
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-prefix.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-prefix.js
deleted file mode 100644
index 8ae7e508..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-prefix.js
+++ /dev/null
@@ -1,23 +0,0 @@
-var startsAsUrl = require('./starts-as-url');
-
-var OptimizationLevel = require('../../../options/optimization-level').OptimizationLevel;
-
-var URL_PREFIX_PATTERN = /^url\(/i;
-
-var plugin = {
- level1: {
- value: function urlPrefix(_name, value, options) {
- if (!options.level[OptimizationLevel.One].normalizeUrls) {
- return value;
- }
-
- if (!startsAsUrl(value)) {
- return value;
- }
-
- return value.replace(URL_PREFIX_PATTERN, 'url(');
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-quotes.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-quotes.js
deleted file mode 100644
index 022b80b1..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-quotes.js
+++ /dev/null
@@ -1,22 +0,0 @@
-var QUOTED_URL_PATTERN = /^url\(['"].+['"]\)$/;
-var QUOTED_URL_WITH_WHITESPACE_PATTERN = /^url\(['"].*[*\s()'"].*['"]\)$/;
-var QUOTES_PATTERN = /["']/g;
-var URL_DATA_PATTERN = /^url\(['"]data:[^;]+;charset/;
-
-var plugin = {
- level1: {
- value: function urlQuotes(_name, value, options) {
- if (options.compatibility.properties.urlQuotes) {
- return value;
- }
-
- return QUOTED_URL_PATTERN.test(value)
- && !QUOTED_URL_WITH_WHITESPACE_PATTERN.test(value)
- && !URL_DATA_PATTERN.test(value)
- ? value.replace(QUOTES_PATTERN, '')
- : value;
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-whitespace.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-whitespace.js
deleted file mode 100644
index bd1aaff9..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/url-whitespace.js
+++ /dev/null
@@ -1,22 +0,0 @@
-var startsAsUrl = require('./starts-as-url');
-
-var WHITESPACE_PATTERN = /\\?\n|\\?\r\n/g;
-var WHITESPACE_PREFIX_PATTERN = /(\()\s+/g;
-var WHITESPACE_SUFFIX_PATTERN = /\s+(\))/g;
-
-var plugin = {
- level1: {
- value: function urlWhitespace(_name, value) {
- if (!startsAsUrl(value)) {
- return value;
- }
-
- return value
- .replace(WHITESPACE_PATTERN, '')
- .replace(WHITESPACE_PREFIX_PATTERN, '$1')
- .replace(WHITESPACE_SUFFIX_PATTERN, '$1');
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/whitespace.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/whitespace.js
deleted file mode 100644
index bf776301..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/whitespace.js
+++ /dev/null
@@ -1,48 +0,0 @@
-var OptimizationLevel = require('../../../options/optimization-level').OptimizationLevel;
-
-var Marker = require('../../../tokenizer/marker');
-
-var CALC_DIVISION_WHITESPACE_PATTERN = /\) ?\/ ?/g;
-var COMMA_AND_SPACE_PATTERN = /, /g;
-var LINE_BREAK_PATTERN = /\r?\n/g;
-var MULTI_WHITESPACE_PATTERN = /\s+/g;
-var FUNCTION_CLOSING_BRACE_WHITESPACE_PATTERN = /\s+(;?\))/g;
-var FUNCTION_OPENING_BRACE_WHITESPACE_PATTERN = /(\(;?)\s+/g;
-var VARIABLE_NAME_PATTERN = /^--\S+$/;
-var VARIABLE_VALUE_PATTERN = /^var\(\s*--\S+\s*\)$/;
-
-var plugin = {
- level1: {
- value: function whitespace(name, value, options) {
- if (!options.level[OptimizationLevel.One].removeWhitespace) {
- return value;
- }
-
- if (VARIABLE_NAME_PATTERN.test(name) && !VARIABLE_VALUE_PATTERN.test(value)) {
- return value;
- }
-
- if ((value.indexOf(' ') == -1 && value.indexOf('\n') == -1) || value.indexOf('expression') === 0) {
- return value;
- }
-
- if (value.indexOf(Marker.SINGLE_QUOTE) > -1 || value.indexOf(Marker.DOUBLE_QUOTE) > -1) {
- return value;
- }
-
- value = value.replace(LINE_BREAK_PATTERN, '');
- value = value.replace(MULTI_WHITESPACE_PATTERN, ' ');
-
- if (value.indexOf('calc') > -1) {
- value = value.replace(CALC_DIVISION_WHITESPACE_PATTERN, ')/ ');
- }
-
- return value
- .replace(FUNCTION_OPENING_BRACE_WHITESPACE_PATTERN, '$1')
- .replace(FUNCTION_CLOSING_BRACE_WHITESPACE_PATTERN, '$1')
- .replace(COMMA_AND_SPACE_PATTERN, ',');
- }
- }
-};
-
-module.exports = plugin;
diff --git a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/zero.js b/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/zero.js
deleted file mode 100644
index 0e60346a..00000000
--- a/node_modules/clean-css/lib/optimizer/level-1/value-optimizers/zero.js
+++ /dev/null
@@ -1,49 +0,0 @@
-var split = require('../../../utils/split');
-
-var ANY_FUNCTION_PATTERN = /^(-(?:moz|ms|o|webkit)-[a-z-]+|[a-z-]+)\((.+)\)$/;
-var SKIP_FUNCTION_PATTERN = /^(?:-moz-calc|-webkit-calc|calc|rgb|hsl|rgba|hsla|min|max|clamp|expression)\(/;
-var TOKEN_SEPARATOR_PATTERN = /([\s,/])/;
-
-function removeRecursively(value, options) {
- var functionTokens;
- var tokens;
-
- if (SKIP_FUNCTION_PATTERN.test(value)) {
- return value;
- }
-
- functionTokens = ANY_FUNCTION_PATTERN.exec(value);
-
- if (!functionTokens) {
- return removeZeros(value, options);
- }
-
- tokens = split(functionTokens[2], TOKEN_SEPARATOR_PATTERN)
- .map(function(token) { return removeRecursively(token, options); });
-
- return functionTokens[1] + '(' + tokens.join('') + ')';
-}
-
-function removeZeros(value, options) {
- return value
- .replace(options.unitsRegexp, '$10$2')
- .replace(options.unitsRegexp, '$10$2');
-}
-
-var plugin = {
- level1: {
- value: function zero(name, value, options) {
- if (!options.compatibility.properties.zeroUnits) {
- return value;
- }
-
- if (value.indexOf('%') > 0 && (name == 'height' || name == 'max-height' || name == 'width' || name == 'max-width')) {
- return value;
- }
-
- return removeRecursively(value, options);
- }
- }
-};
-
-module.exports = plugin;