cssstyle
Version:
CSSStyleDeclaration Object Model implementation
37 lines (32 loc) • 852 B
JavaScript
const parsers = require("../parsers");
module.exports.parse = function parse(v) {
const num = parsers.parseNumber(v, true);
if (num && parseFloat(num) <= 1000) {
return num;
}
const keywords = ["normal", "bold", "lighter", "bolder"];
return parsers.parseKeyword(v, keywords);
};
module.exports.isValid = function isValid(v) {
if (v === "") {
return true;
}
return typeof module.exports.parse(v) === "string";
};
module.exports.definition = {
set(v) {
v = parsers.prepareValue(v, this._global);
if (parsers.hasVarFunc(v)) {
this._setProperty("font", "");
this._setProperty("font-weight", v);
} else {
this._setProperty("font-weight", module.exports.parse(v));
}
},
get() {
return this.getPropertyValue("font-weight");
},
enumerable: true,
configurable: true
};
;