Skip to content

Commit

Permalink
Fix no-target-blank to be case insensitive
Browse files Browse the repository at this point in the history
  • Loading branch information
dmnd authored and yannickcr committed Sep 12, 2016
1 parent 3291358 commit fa99e13
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 3 deletions.
4 changes: 2 additions & 2 deletions lib/rules/jsx-no-target-blank.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ module.exports = {
return;
}

if (node.name.name === 'target' && node.value.value === '_blank') {
if (node.name.name === 'target' && node.value.value.toLowerCase() === '_blank') {
var relFound = false;
var attrs = node.parent.attributes;
for (var idx in attrs) {
if (attrs[idx].name && attrs[idx].name.name === 'rel') {
var tags = attrs[idx].value.value.split(' ');
var tags = attrs[idx].value.value.toLowerCase().split(' ');
if (tags.indexOf('noopener') >= 0 && tags.indexOf('noreferrer') >= 0) {
relFound = true;
break;
Expand Down
6 changes: 5 additions & 1 deletion tests/lib/rules/jsx-no-target-blank.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ ruleTester.run('jsx-no-target-blank', rule, {
{code: '<a href="foobar" target="_blank" rel="noopener noreferrer"></a>', parserOptions: parserOptions},
{code: '<a target="_blank" {...spreadProps} rel="noopener noreferrer"></a>', parserOptions: parserOptions},
{code: '<a target="_blank" rel="noopener noreferrer" {...spreadProps}></a>', parserOptions: parserOptions},
{code: '<p target="_blank"></p>', parserOptions: parserOptions}
{code: '<p target="_blank"></p>', parserOptions: parserOptions},
{code: '<a href="foobar" target="_BLANK" rel="NOOPENER noreferrer"></a>', parserOptions: parserOptions}
],
invalid: [
{code: '<a target="_blank"></a>', parserOptions: parserOptions,
Expand All @@ -40,6 +41,9 @@ ruleTester.run('jsx-no-target-blank', rule, {
errors: [{message: 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
' see https://mathiasbynens.github.io/rel-noopener'}]},
{code: '<a target="_blank" rel="noopenernoreferrer"></a>', parserOptions: parserOptions,
errors: [{message: 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
' see https://mathiasbynens.github.io/rel-noopener'}]},
{code: '<a target="_BLANK"></a>', parserOptions: parserOptions,
errors: [{message: 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
' see https://mathiasbynens.github.io/rel-noopener'}]}
]
Expand Down

0 comments on commit fa99e13

Please sign in to comment.