29 lines
753 B
JavaScript
29 lines
753 B
JavaScript
/**
|
|
* Copyright (c) Nicolas Gallagher.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
*
|
|
*/
|
|
var CSS_UNIT_RE = /^[+-]?\d*(?:\.\d+)?(?:[Ee][+-]?\d+)?(%|\w*)/;
|
|
|
|
var getUnit = function getUnit(str) {
|
|
return str.match(CSS_UNIT_RE)[1];
|
|
};
|
|
|
|
var isNumeric = function isNumeric(n) {
|
|
return !isNaN(parseFloat(n)) && isFinite(n);
|
|
};
|
|
|
|
var multiplyStyleLengthValue = function multiplyStyleLengthValue(value, multiple) {
|
|
if (typeof value === 'string') {
|
|
var number = parseFloat(value) * multiple;
|
|
var unit = getUnit(value);
|
|
return "" + number + unit;
|
|
} else if (isNumeric(value)) {
|
|
return value * multiple;
|
|
}
|
|
};
|
|
|
|
export default multiplyStyleLengthValue; |