UNPKG

cssstyle

Version:

CSSStyleDeclaration Object Model implementation

55 lines (50 loc) 1.04 kB
"use strict"; const parsers = require("../parsers"); module.exports.parse = function parse(v) { const keywords = [ "none", "hidden", "dotted", "dashed", "solid", "double", "groove", "ridge", "inset", "outset" ]; 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 (/^none$/i.test(v)) { v = ""; } if (parsers.hasVarFunc(v)) { this._setProperty("border", ""); this._setProperty("border-style", v); return; } const positions = ["top", "right", "bottom", "left"]; this._implicitSetter( "border", "style", v, module.exports.isValid, module.exports.parse, positions ); }, get() { return this.getPropertyValue("border-style"); }, enumerable: true, configurable: true };