12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- 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;
|