v3 new release (#80)
This commit is contained in:
committed by
GitHub
parent
a767c8d3a1
commit
20d2b4f98d
38
node_modules/cssstyle/lib/properties/fontSize.js
generated
vendored
Normal file
38
node_modules/cssstyle/lib/properties/fontSize.js
generated
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
'use strict';
|
||||
|
||||
var TYPES = require('../parsers').TYPES;
|
||||
var valueType = require('../parsers').valueType;
|
||||
var parseMeasurement = require('../parsers').parseMeasurement;
|
||||
|
||||
var absoluteSizes = ['xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'];
|
||||
var relativeSizes = ['larger', 'smaller'];
|
||||
|
||||
module.exports.isValid = function(v) {
|
||||
var type = valueType(v.toLowerCase());
|
||||
return (
|
||||
type === TYPES.LENGTH ||
|
||||
type === TYPES.PERCENT ||
|
||||
(type === TYPES.KEYWORD && absoluteSizes.indexOf(v.toLowerCase()) !== -1) ||
|
||||
(type === TYPES.KEYWORD && relativeSizes.indexOf(v.toLowerCase()) !== -1)
|
||||
);
|
||||
};
|
||||
|
||||
function parse(v) {
|
||||
const valueAsString = String(v).toLowerCase();
|
||||
const optionalArguments = absoluteSizes.concat(relativeSizes);
|
||||
const isOptionalArgument = optionalArguments.some(
|
||||
stringValue => stringValue.toLowerCase() === valueAsString
|
||||
);
|
||||
return isOptionalArgument ? valueAsString : parseMeasurement(v);
|
||||
}
|
||||
|
||||
module.exports.definition = {
|
||||
set: function(v) {
|
||||
this._setProperty('font-size', parse(v));
|
||||
},
|
||||
get: function() {
|
||||
return this.getPropertyValue('font-size');
|
||||
},
|
||||
enumerable: true,
|
||||
configurable: true,
|
||||
};
|
Reference in New Issue
Block a user