| 'use strict'; |
| |
| var shorthandParser = require('../parsers').shorthandParser; |
| var shorthandSetter = require('../parsers').shorthandSetter; |
| var shorthandGetter = require('../parsers').shorthandGetter; |
| |
| var shorthand_for = { |
| 'border-width': require('./borderWidth'), |
| 'border-style': require('./borderStyle'), |
| 'border-color': require('./borderColor') |
| }; |
| |
| var isValid = function isValid(v) { |
| return shorthandParser(v, shorthand_for) !== undefined; |
| }; |
| module.exports.isValid = isValid; |
| |
| var parser = function (v) { |
| if (v.toString().toLowerCase() === 'none') { |
| v = ''; |
| } |
| if (isValid(v)) { |
| return v; |
| } |
| return undefined; |
| }; |
| |
| var myShorthandSetter = shorthandSetter('border', shorthand_for); |
| var myShorthandGetter = shorthandGetter('border', shorthand_for); |
| |
| module.exports.definition = { |
| set: function (v) { |
| if (v.toString().toLowerCase() === 'none') { |
| v = ''; |
| } |
| myShorthandSetter.call(this, v); |
| this.removeProperty('border-top'); |
| this.removeProperty('border-left'); |
| this.removeProperty('border-right'); |
| this.removeProperty('border-bottom'); |
| this._values['border-top'] = this._values.border; |
| this._values['border-left'] = this._values.border; |
| this._values['border-right'] = this._values.border; |
| this._values['border-bottom'] = this._values.border; |
| }, |
| get: myShorthandGetter, |
| enumerable: true, |
| configurable: true |
| }; |