Skip to content

Commit fa99e13

Browse files
dmndyannickcr
authored andcommitted
Fix no-target-blank to be case insensitive
1 parent 3291358 commit fa99e13

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

lib/rules/jsx-no-target-blank.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,12 @@ module.exports = {
2525
return;
2626
}
2727

28-
if (node.name.name === 'target' && node.value.value === '_blank') {
28+
if (node.name.name === 'target' && node.value.value.toLowerCase() === '_blank') {
2929
var relFound = false;
3030
var attrs = node.parent.attributes;
3131
for (var idx in attrs) {
3232
if (attrs[idx].name && attrs[idx].name.name === 'rel') {
33-
var tags = attrs[idx].value.value.split(' ');
33+
var tags = attrs[idx].value.value.toLowerCase().split(' ');
3434
if (tags.indexOf('noopener') >= 0 && tags.indexOf('noreferrer') >= 0) {
3535
relFound = true;
3636
break;

tests/lib/rules/jsx-no-target-blank.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ ruleTester.run('jsx-no-target-blank', rule, {
3030
{code: '<a href="foobar" target="_blank" rel="noopener noreferrer"></a>', parserOptions: parserOptions},
3131
{code: '<a target="_blank" {...spreadProps} rel="noopener noreferrer"></a>', parserOptions: parserOptions},
3232
{code: '<a target="_blank" rel="noopener noreferrer" {...spreadProps}></a>', parserOptions: parserOptions},
33-
{code: '<p target="_blank"></p>', parserOptions: parserOptions}
33+
{code: '<p target="_blank"></p>', parserOptions: parserOptions},
34+
{code: '<a href="foobar" target="_BLANK" rel="NOOPENER noreferrer"></a>', parserOptions: parserOptions}
3435
],
3536
invalid: [
3637
{code: '<a target="_blank"></a>', parserOptions: parserOptions,
@@ -40,6 +41,9 @@ ruleTester.run('jsx-no-target-blank', rule, {
4041
errors: [{message: 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
4142
' see https://mathiasbynens.github.io/rel-noopener'}]},
4243
{code: '<a target="_blank" rel="noopenernoreferrer"></a>', parserOptions: parserOptions,
44+
errors: [{message: 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
45+
' see https://mathiasbynens.github.io/rel-noopener'}]},
46+
{code: '<a target="_BLANK"></a>', parserOptions: parserOptions,
4347
errors: [{message: 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
4448
' see https://mathiasbynens.github.io/rel-noopener'}]}
4549
]

0 commit comments

Comments
 (0)