diff --git a/lib/rules/jsx-no-target-blank.js b/lib/rules/jsx-no-target-blank.js
index b25edd872f..9e2861b406 100644
--- a/lib/rules/jsx-no-target-blank.js
+++ b/lib/rules/jsx-no-target-blank.js
@@ -66,14 +66,7 @@ function hasDynamicLink(node, linkAttribute) {
}
function attributeValuePossiblyRel(value) {
- if (
- typeof value === 'string'
- // && (
- // (value && value.toLowerCase() === 'noreferrer')
- // || (value && value.toLowerCase() === 'noopener noreferrer')
- // || (value && value.toLowerCase() === 'noreferrer noopener')
- // )
- ) {
+ if (typeof value === 'string') {
return true;
}
}
@@ -110,23 +103,15 @@ function hasSecureRel(node, allowReferrer, warnOnSpreadAttributes, spreadAttribu
const relAttribute = node.attributes[relIndex];
const value = getStringFromValue(relAttribute.value);
- if (Array.isArray(value)) {
- return [].concat(value).filter(Boolean).some((item) => {
- const tags = typeof item === 'string' && item.toLowerCase().split(' ');
- const noreferrer = tags && tags.indexOf('noreferrer') >= 0;
- const noopener = tags && tags.indexOf('noopener') >= 0;
- if (!noreferrer) {
- return allowReferrer && noopener;
- }
- return false;
- });
- }
- const tags = value && typeof value === 'string' && value.toLowerCase().split(' ');
- const noreferrer = tags && tags.indexOf('noreferrer') >= 0;
- if (noreferrer) {
- return true;
- }
- return allowReferrer && tags && tags.indexOf('noopener') >= 0;
+ return [].concat(value).filter(Boolean).every((item) => {
+ const tags = typeof item === 'string' && item.toLowerCase().split(' ');
+ const noreferrer = tags && tags.indexOf('noreferrer') >= 0;
+ const noopener = tags && tags.indexOf('noopener') >= 0;
+ if (noreferrer) {
+ return true;
+ }
+ return allowReferrer && noopener;
+ });
}
const messages = {
diff --git a/tests/lib/rules/jsx-no-target-blank.js b/tests/lib/rules/jsx-no-target-blank.js
index f0c488fd8b..9d797307ad 100644
--- a/tests/lib/rules/jsx-no-target-blank.js
+++ b/tests/lib/rules/jsx-no-target-blank.js
@@ -393,10 +393,10 @@ ruleTester.run('jsx-no-target-blank', rule, {
code: '',
errors: defaultErrors,
},
- // {
- // code: '',
- // options: [{ allowReferrer: true }],
- // errors: defaultErrors,
- // },
+ {
+ code: '',
+ options: [{ allowReferrer: true }],
+ errors: defaultErrors,
+ },
]),
});