|
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