File tree 1 file changed +26
-15
lines changed
1 file changed +26
-15
lines changed Original file line number Diff line number Diff line change @@ -54,23 +54,34 @@ module.exports = {
54
54
create ( context ) {
55
55
return {
56
56
JSXOpeningElement ( node ) {
57
- if ( node . name . type === 'JSXMemberExpression' ) {
58
- if ( node . name . object . type === 'JSXIdentifier' && node . name . property . type === 'JSXIdentifier' ) {
59
- const name = `${ node . name . object . name } .${ node . name . property . name } `
60
- if ( forbidden . has ( name ) ) {
61
- context . report ( {
62
- node,
63
- messageId : 'sxProp' ,
64
- } )
65
- }
66
- }
57
+ let name = null
58
+
59
+ if (
60
+ node . name . type === 'JSXMemberExpression' &&
61
+ node . name . object . type === 'JSXIdentifier' &&
62
+ node . name . property . type === 'JSXIdentifier'
63
+ ) {
64
+ name = `${ node . name . object . name } .${ node . name . property . name } `
67
65
} else if ( node . name . type === 'JSXIdentifier' ) {
68
- if ( forbidden . has ( node . name . name ) ) {
69
- context . report ( {
70
- node,
71
- messageId : 'sxProp' ,
72
- } )
66
+ name = node . name . name
67
+ }
68
+
69
+ if ( ! forbidden . has ( name ) ) {
70
+ return
71
+ }
72
+
73
+ const hasSxProp = node . attributes . some ( attr => {
74
+ if ( attr . name . type === 'JSXIdentifier' && attr . name . name === 'sx' ) {
75
+ return true
73
76
}
77
+ return false
78
+ } )
79
+
80
+ if ( hasSxProp ) {
81
+ context . report ( {
82
+ node,
83
+ messageId : 'sxProp' ,
84
+ } )
74
85
}
75
86
} ,
76
87
}
You can’t perform that action at this time.
0 commit comments