Skip to content

Commit 827658e

Browse files
author
Ev Haus
committed
Fix another crash in boolean-prop-naming rule related to old-style Flow prop type definitions.
1 parent 07b348d commit 827658e

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

lib/rules/boolean-prop-naming.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ module.exports = {
118118
const component = components.get(node) || node;
119119
const invalidProps = component.invalidProps || [];
120120

121-
proptypes.forEach(prop => {
121+
(proptypes || []).forEach(prop => {
122122
const propKey = getPropKey(prop);
123123
const flowCheck = (
124124
prop.type === 'ObjectTypeProperty' &&

tests/lib/rules/boolean-prop-naming.js

+12
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,18 @@ ruleTester.run('boolean-prop-naming', rule, {
257257
rule: '^is[A-Z]([A-Za-z0-9]?)+'
258258
}],
259259
parser: 'babel-eslint'
260+
}, {
261+
// Ensure rule doesn't crash on on components reference old-style Flow props
262+
code: [
263+
'class Hello extends PureComponent {',
264+
' props: PropsType;',
265+
' render () { return <div /> }',
266+
'}'
267+
].join('\n'),
268+
options: [{
269+
rule: '^is[A-Z]([A-Za-z0-9]?)+'
270+
}],
271+
parser: 'babel-eslint'
260272
}],
261273

262274
invalid: [{

0 commit comments

Comments
 (0)