From 2a595fdda0053f86aa3f1c768e7a7e3cc59bbfaf Mon Sep 17 00:00:00 2001 From: Dustin Yoste Date: Fri, 11 Oct 2019 12:29:51 -0500 Subject: [PATCH] [Fix] `jsx-curly-brace-presence`: Fix filter of undefined error with whitespace inside jsx attr curlies --- lib/rules/jsx-curly-brace-presence.js | 6 ++++++ tests/lib/rules/jsx-curly-brace-presence.js | 3 +++ 2 files changed, 9 insertions(+) diff --git a/lib/rules/jsx-curly-brace-presence.js b/lib/rules/jsx-curly-brace-presence.js index 76dc70fb4e..661fe52337 100755 --- a/lib/rules/jsx-curly-brace-presence.js +++ b/lib/rules/jsx-curly-brace-presence.js @@ -242,12 +242,18 @@ module.exports = { } function hasAdjacentJsxExpressionContainers(node, children) { + if (!children) { + return false; + } const childrenExcludingWhitespaceLiteral = children.filter(child => !isWhiteSpaceLiteral(child)); const adjSiblings = getAdjacentSiblings(node, childrenExcludingWhitespaceLiteral); return adjSiblings.some(x => x.type && x.type === 'JSXExpressionContainer'); } function hasAdjacentJsx(node, children) { + if (!children) { + return false; + } const childrenExcludingWhitespaceLiteral = children.filter(child => !isWhiteSpaceLiteral(child)); const adjSiblings = getAdjacentSiblings(node, childrenExcludingWhitespaceLiteral); diff --git a/tests/lib/rules/jsx-curly-brace-presence.js b/tests/lib/rules/jsx-curly-brace-presence.js index 380d06f787..c6dce207d0 100755 --- a/tests/lib/rules/jsx-curly-brace-presence.js +++ b/tests/lib/rules/jsx-curly-brace-presence.js @@ -145,6 +145,9 @@ ruleTester.run('jsx-curly-brace-presence', rule, { { code: `{'foo \\n bar'}` }, + { + code: `` + }, { code: `foo`, options: [{props: 'never'}]