Skip to content

Commit 771376d

Browse files
Shinigamithedaviddias
Shinigami
authored andcommitted
chore: add lint rule one-var:never (#392)
* chore: add lint rule one-var:never * chore: apply one-var * chore: run prettier
1 parent 9fddad0 commit 771376d

23 files changed

+140
-136
lines changed

.eslintrc.js

+3
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,7 @@ module.exports = {
1010
ecmaVersion: 6,
1111
sourceType: 'module',
1212
},
13+
rules: {
14+
'one-var': ['error', 'never'],
15+
},
1316
}

src/core.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ class HTMLHintCore {
5757
var parser = new HTMLParser()
5858
var reporter = new Reporter(html, ruleset)
5959

60-
var rules = this.rules,
61-
rule
60+
var rules = this.rules
61+
var rule
6262

6363
for (var id in ruleset) {
6464
rule = rules[id]

src/htmlparser.js

+44-44
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ class HTMLParser {
77
}
88

99
makeMap(str) {
10-
var obj = {},
11-
items = str.split(',')
10+
var obj = {}
11+
var items = str.split(',')
1212

1313
for (var i = 0; i < items.length; i++) {
1414
obj[items[i]] = true
@@ -18,27 +18,27 @@ class HTMLParser {
1818
}
1919

2020
parse(html) {
21-
var self = this,
22-
mapCdataTags = self._mapCdataTags
21+
var self = this
22+
var mapCdataTags = self._mapCdataTags
2323

2424
// eslint-disable-next-line
2525
var regTag = /<(?:\/([^\s>]+)\s*|!--([\s\S]*?)--|!([^>]*?)|([\w\-:]+)((?:\s+[^\s"'>\/=\x00-\x0F\x7F\x80-\x9F]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s"'>]*))?)*?)\s*(\/?))>/g,
2626
// eslint-disable-next-line
2727
regAttr = /\s*([^\s"'>\/=\x00-\x0F\x7F\x80-\x9F]+)(?:\s*=\s*(?:(")([^"]*)"|(')([^']*)'|([^\s"'>]*)))?/g,
2828
regLine = /\r?\n/g
2929

30-
var match,
31-
matchIndex,
32-
lastIndex = 0,
33-
tagName,
34-
arrAttrs,
35-
tagCDATA,
36-
attrsCDATA,
37-
arrCDATA,
38-
lastCDATAIndex = 0,
39-
text
40-
var lastLineIndex = 0,
41-
line = 1
30+
var match
31+
var matchIndex
32+
var lastIndex = 0
33+
var tagName
34+
var arrAttrs
35+
var tagCDATA
36+
var attrsCDATA
37+
var arrCDATA
38+
var lastCDATAIndex = 0
39+
var text
40+
var lastLineIndex = 0
41+
var line = 1
4242
var arrBlocks = self._arrBlocks
4343

4444
self.fire('start', {
@@ -110,24 +110,24 @@ class HTMLParser {
110110
if ((tagName = match[4])) {
111111
// Label start
112112
arrAttrs = []
113-
var attrs = match[5],
114-
attrMatch,
115-
attrMatchCount = 0
113+
var attrs = match[5]
114+
var attrMatch
115+
var attrMatchCount = 0
116116

117117
while ((attrMatch = regAttr.exec(attrs))) {
118-
var name = attrMatch[1],
119-
quote = attrMatch[2]
120-
? attrMatch[2]
121-
: attrMatch[4]
122-
? attrMatch[4]
123-
: '',
124-
value = attrMatch[3]
125-
? attrMatch[3]
126-
: attrMatch[5]
127-
? attrMatch[5]
128-
: attrMatch[6]
129-
? attrMatch[6]
130-
: ''
118+
var name = attrMatch[1]
119+
var quote = attrMatch[2]
120+
? attrMatch[2]
121+
: attrMatch[4]
122+
? attrMatch[4]
123+
: ''
124+
var value = attrMatch[3]
125+
? attrMatch[3]
126+
: attrMatch[5]
127+
? attrMatch[5]
128+
: attrMatch[6]
129+
? attrMatch[6]
130+
: ''
131131

132132
arrAttrs.push({
133133
name: name,
@@ -181,8 +181,8 @@ class HTMLParser {
181181

182182
addListener(types, listener) {
183183
var _listeners = this._listeners
184-
var arrTypes = types.split(/[,\s]/),
185-
type
184+
var arrTypes = types.split(/[,\s]/)
185+
var type
186186

187187
for (var i = 0, l = arrTypes.length; i < l; i++) {
188188
type = arrTypes[i]
@@ -198,10 +198,10 @@ class HTMLParser {
198198
data = {}
199199
}
200200
data.type = type
201-
var self = this,
202-
listeners = [],
203-
listenersType = self._listeners[type],
204-
listenersAll = self._listeners['all']
201+
var self = this
202+
var listeners = []
203+
var listenersType = self._listeners[type]
204+
var listenersAll = self._listeners['all']
205205

206206
if (listenersType !== undefined) {
207207
listeners = listeners.concat(listenersType)
@@ -237,10 +237,10 @@ class HTMLParser {
237237

238238
fixPos(event, index) {
239239
var text = event.raw.substr(0, index)
240-
var arrLines = text.split(/\r?\n/),
241-
lineCount = arrLines.length - 1,
242-
line = event.line,
243-
col
240+
var arrLines = text.split(/\r?\n/)
241+
var lineCount = arrLines.length - 1
242+
var line = event.line
243+
var col
244244

245245
if (lineCount > 0) {
246246
line += lineCount
@@ -256,8 +256,8 @@ class HTMLParser {
256256
}
257257

258258
getMapAttrs(arrAttrs) {
259-
var mapAttrs = {},
260-
attr
259+
var mapAttrs = {}
260+
var attr
261261

262262
for (var i = 0, l = arrAttrs.length; i < l; i++) {
263263
attr = arrAttrs[i]

src/reporter.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ class Reporter {
1717
var self = this
1818
var lines = self.lines
1919
var brLen = self.brLen
20-
var evidence, evidenceLen
20+
var evidence
21+
var evidenceLen
2122

2223
for (var i = line - 1, lineCount = lines.length; i < lineCount; i++) {
2324
evidence = lines[i]

src/rules/alt-require.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ export default {
55
init: function (parser, reporter) {
66
var self = this
77
parser.addListener('tagstart', function (event) {
8-
var tagName = event.tagName.toLowerCase(),
9-
mapAttrs = parser.getMapAttrs(event.attrs),
10-
col = event.col + tagName.length + 1,
11-
selector
8+
var tagName = event.tagName.toLowerCase()
9+
var mapAttrs = parser.getMapAttrs(event.attrs)
10+
var col = event.col + tagName.length + 1
11+
var selector
1212

1313
if (tagName === 'img' && !('alt' in mapAttrs)) {
1414
reporter.warn(

src/rules/attr-lowercase.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ export default {
4646
var exceptions = Array.isArray(options) ? options : []
4747

4848
parser.addListener('tagstart', function (event) {
49-
var attrs = event.attrs,
50-
attr,
51-
col = event.col + event.tagName.length + 1
49+
var attrs = event.attrs
50+
var attr
51+
var col = event.col + event.tagName.length + 1
5252

5353
for (var i = 0, l = attrs.length; i < l; i++) {
5454
attr = attrs[i]

src/rules/attr-no-unnecessary-whitespace.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ export default {
66
var exceptions = Array.isArray(options) ? options : []
77

88
parser.addListener('tagstart', function (event) {
9-
var attrs = event.attrs,
10-
col = event.col + event.tagName.length + 1
9+
var attrs = event.attrs
10+
var col = event.col + event.tagName.length + 1
1111

1212
for (var i = 0; i < attrs.length; i++) {
1313
if (

src/rules/attr-unsafe-chars.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ export default {
55
var self = this
66

77
parser.addListener('tagstart', function (event) {
8-
var attrs = event.attrs,
9-
attr,
10-
col = event.col + event.tagName.length + 1
8+
var attrs = event.attrs
9+
var attr
10+
var col = event.col + event.tagName.length + 1
1111
// exclude \x09(\t), \x0a(\r), \x0d(\n)
1212
// eslint-disable-next-line
1313
var regUnsafe = /[\u0000-\u0008\u000b\u000c\u000e-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/

src/rules/attr-value-double-quotes.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ export default {
55
var self = this
66

77
parser.addListener('tagstart', function (event) {
8-
var attrs = event.attrs,
9-
attr,
10-
col = event.col + event.tagName.length + 1
8+
var attrs = event.attrs
9+
var attr
10+
var col = event.col + event.tagName.length + 1
1111

1212
for (var i = 0, l = attrs.length; i < l; i++) {
1313
attr = attrs[i]

src/rules/attr-value-not-empty.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ export default {
55
var self = this
66

77
parser.addListener('tagstart', function (event) {
8-
var attrs = event.attrs,
9-
attr,
10-
col = event.col + event.tagName.length + 1
8+
var attrs = event.attrs
9+
var attr
10+
var col = event.col + event.tagName.length + 1
1111

1212
for (var i = 0, l = attrs.length; i < l; i++) {
1313
attr = attrs[i]

src/rules/attr-value-single-quotes.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ export default {
55
var self = this
66

77
parser.addListener('tagstart', function (event) {
8-
var attrs = event.attrs,
9-
attr,
10-
col = event.col + event.tagName.length + 1
8+
var attrs = event.attrs
9+
var attr
10+
var col = event.col + event.tagName.length + 1
1111

1212
for (var i = 0, l = attrs.length; i < l; i++) {
1313
attr = attrs[i]

src/rules/attr-whitespace.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ export default {
77
var exceptions = Array.isArray(options) ? options : []
88

99
parser.addListener('tagstart', function (event) {
10-
var attrs = event.attrs,
11-
attr,
12-
col = event.col + event.tagName.length + 1
10+
var attrs = event.attrs
11+
var attr
12+
var col = event.col + event.tagName.length + 1
1313

1414
attrs.forEach(function (elem) {
1515
attr = elem

src/rules/id-class-value.js

+23-23
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,23 @@ export default {
55
init: function (parser, reporter, options) {
66
var self = this
77
var arrRules = {
8-
underline: {
9-
regId: /^[a-z\d]+(_[a-z\d]+)*$/,
10-
message:
11-
'The id and class attribute values must be in lowercase and split by an underscore.',
12-
},
13-
dash: {
14-
regId: /^[a-z\d]+(-[a-z\d]+)*$/,
15-
message:
16-
'The id and class attribute values must be in lowercase and split by a dash.',
17-
},
18-
hump: {
19-
regId: /^[a-z][a-zA-Z\d]*([A-Z][a-zA-Z\d]*)*$/,
20-
message:
21-
'The id and class attribute values must meet the camelCase style.',
22-
},
8+
underline: {
9+
regId: /^[a-z\d]+(_[a-z\d]+)*$/,
10+
message:
11+
'The id and class attribute values must be in lowercase and split by an underscore.',
2312
},
24-
rule
13+
dash: {
14+
regId: /^[a-z\d]+(-[a-z\d]+)*$/,
15+
message:
16+
'The id and class attribute values must be in lowercase and split by a dash.',
17+
},
18+
hump: {
19+
regId: /^[a-z][a-zA-Z\d]*([A-Z][a-zA-Z\d]*)*$/,
20+
message:
21+
'The id and class attribute values must meet the camelCase style.',
22+
},
23+
}
24+
var rule
2525

2626
if (typeof options === 'string') {
2727
rule = arrRules[options]
@@ -30,17 +30,17 @@ export default {
3030
}
3131

3232
if (rule && rule.regId) {
33-
var regId = rule.regId,
34-
message = rule.message
33+
var regId = rule.regId
34+
var message = rule.message
3535

3636
if (!(regId instanceof RegExp)) {
3737
regId = new RegExp(regId)
3838
}
3939

4040
parser.addListener('tagstart', function (event) {
41-
var attrs = event.attrs,
42-
attr,
43-
col = event.col + event.tagName.length + 1
41+
var attrs = event.attrs
42+
var attr
43+
var col = event.col + event.tagName.length + 1
4444

4545
for (var i = 0, l1 = attrs.length; i < l1; i++) {
4646
attr = attrs[i]
@@ -58,8 +58,8 @@ export default {
5858
}
5959

6060
if (attr.name.toLowerCase() === 'class') {
61-
var arrClass = attr.value.split(/\s+/g),
62-
classValue
61+
var arrClass = attr.value.split(/\s+/g)
62+
var classValue
6363

6464
for (var j = 0, l2 = arrClass.length; j < l2; j++) {
6565
classValue = arrClass[j]

src/rules/id-unique.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ export default {
66
var mapIdCount = {}
77

88
parser.addListener('tagstart', function (event) {
9-
var attrs = event.attrs,
10-
attr,
11-
id,
12-
col = event.col + event.tagName.length + 1
9+
var attrs = event.attrs
10+
var attr
11+
var id
12+
var col = event.col + event.tagName.length + 1
1313

1414
for (var i = 0, l = attrs.length; i < l; i++) {
1515
attr = attrs[i]

src/rules/input-requires-label.js

+6-6
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ export default {
22
id: 'input-requires-label',
33
description: 'All [ input ] tags must have a corresponding [ label ] tag. ',
44
init: function (parser, reporter) {
5-
var self = this,
6-
labelTags = [],
7-
inputTags = []
5+
var self = this
6+
var labelTags = []
7+
var inputTags = []
88

99
parser.addListener('tagstart', function (event) {
10-
var tagName = event.tagName.toLowerCase(),
11-
mapAttrs = parser.getMapAttrs(event.attrs),
12-
col = event.col + tagName.length + 1
10+
var tagName = event.tagName.toLowerCase()
11+
var mapAttrs = parser.getMapAttrs(event.attrs)
12+
var col = event.col + tagName.length + 1
1313

1414
if (tagName === 'input') {
1515
inputTags.push({ event: event, col: col, id: mapAttrs['id'] })

0 commit comments

Comments
 (0)