diff --git a/lib/rules/jsx-no-target-blank.js b/lib/rules/jsx-no-target-blank.js index cd59296de7..92ad283487 100644 --- a/lib/rules/jsx-no-target-blank.js +++ b/lib/rules/jsx-no-target-blank.js @@ -88,7 +88,8 @@ function hasSecureRel(node, allowReferrer, warnOnSpreadAttributes, spreadAttribu const relAttribute = node.attributes[relIndex]; const value = getStringFromValue(relAttribute.value); const tags = value && typeof value === 'string' && value.toLowerCase().split(' '); - return tags && (allowReferrer ? tags.indexOf('noopener') >= 0 : tags.indexOf('noreferrer') >= 0); + const noreferrer = tags && tags.indexOf('noreferrer') >= 0; + return (allowReferrer ? noreferrer || (tags && tags.indexOf('noopener') >= 0) : noreferrer); } module.exports = { diff --git a/tests/lib/rules/jsx-no-target-blank.js b/tests/lib/rules/jsx-no-target-blank.js index b845ba60dd..703168aef1 100644 --- a/tests/lib/rules/jsx-no-target-blank.js +++ b/tests/lib/rules/jsx-no-target-blank.js @@ -103,6 +103,10 @@ ruleTester.run('jsx-no-target-blank', rule, { code: '', options: [{allowReferrer: true}] }, + { + code: '', + options: [{allowReferrer: true}] + }, { code: '' } @@ -212,6 +216,12 @@ ruleTester.run('jsx-no-target-blank', rule, { output: '', errors: defaultErrors }, + { + code: '', + output: '', + options: [{allowReferrer: true}], + errors: defaultErrors + }, { code: '', output: '',