|
1 | 1 | 'use strict'; |
2 | 2 |
|
3 | | -var parsers = require('../parsers'); |
4 | | -var implicitSetter = require('../parsers').implicitSetter; |
| 3 | +const { implicitSetter, parseKeyword, parseLength } = require('../parsers'); |
5 | 4 |
|
6 | | -// the valid border-widths: |
7 | | -var widths = ['thin', 'medium', 'thick']; |
| 5 | +function parse(v) { |
| 6 | + return parseLength(v) || parseKeyword(v, ['medium', 'thick', 'thin']); |
| 7 | +} |
8 | 8 |
|
9 | | -module.exports.isValid = function parse(v) { |
10 | | - var length = parsers.parseLength(v); |
11 | | - if (length !== undefined) { |
12 | | - return true; |
13 | | - } |
14 | | - if (v === '') { |
15 | | - return true; |
16 | | - } |
17 | | - v = v.toLowerCase(); |
18 | | - if (widths.indexOf(v) === -1) { |
19 | | - return false; |
20 | | - } |
21 | | - return true; |
22 | | -}; |
23 | | -var isValid = module.exports.isValid; |
24 | | - |
25 | | -var parser = function(v) { |
26 | | - var length = parsers.parseLength(v); |
27 | | - if (length !== undefined) { |
28 | | - return length; |
29 | | - } |
30 | | - if (isValid(v)) { |
31 | | - return v.toLowerCase(); |
32 | | - } |
33 | | - return undefined; |
34 | | -}; |
| 9 | +function isValid(v) { |
| 10 | + return parse(v) !== undefined; |
| 11 | +} |
| 12 | +module.exports.isValid = isValid; |
35 | 13 |
|
36 | 14 | module.exports.definition = { |
37 | | - set: implicitSetter('border', 'width', isValid, parser), |
| 15 | + set: implicitSetter('border', 'width', isValid, parse), |
38 | 16 | get: function() { |
39 | 17 | return this.getPropertyValue('border-width'); |
40 | 18 | }, |
|
0 commit comments