File tree Expand file tree Collapse file tree 2 files changed +45
-2
lines changed Expand file tree Collapse file tree 2 files changed +45
-2
lines changed Original file line number Diff line number Diff line change @@ -23,7 +23,8 @@ module.exports = {
23
23
'sort-comp' : require ( './lib/rules/sort-comp' ) ,
24
24
'require-extension' : require ( './lib/rules/require-extension' ) ,
25
25
'jsx-no-duplicate-props' : require ( './lib/rules/jsx-no-duplicate-props' ) ,
26
- 'jsx-max-props-per-line' : require ( './lib/rules/jsx-max-props-per-line' )
26
+ 'jsx-max-props-per-line' : require ( './lib/rules/jsx-max-props-per-line' ) ,
27
+ 'no-literals' : require ( './lib/rules/no-literals' )
27
28
} ,
28
29
rulesConfig : {
29
30
'jsx-uses-react' : 0 ,
@@ -47,6 +48,7 @@ module.exports = {
47
48
'sort-comp' : 0 ,
48
49
'require-extension' : 0 ,
49
50
'jsx-no-duplicate-props' : 0 ,
50
- 'jsx-max-props-per-line' : 0
51
+ 'jsx-max-props-per-line' : 0 ,
52
+ 'no-literals' : 0
51
53
}
52
54
} ;
Original file line number Diff line number Diff line change
1
+ /*
2
+ * @fileoverview Prevent using string literals in React component definition
3
+ * @author Caleb Morris
4
+ */
5
+ 'use strict' ;
6
+
7
+ // ------------------------------------------------------------------------------
8
+ // Rule Definition
9
+ // ------------------------------------------------------------------------------
10
+
11
+ module . exports = function ( context ) {
12
+
13
+ function reportLiteralNode ( node ) {
14
+ context . report ( node , 'Missing JSX expression container around literal string' ) ;
15
+ }
16
+
17
+ // --------------------------------------------------------------------------
18
+ // Public
19
+ // --------------------------------------------------------------------------
20
+
21
+ return {
22
+
23
+ Literal : function ( node ) {
24
+ if (
25
+ / [ \S ] / . test ( node . value ) &&
26
+ node . parent &&
27
+ node . parent . type !== 'JSXExpressionContainer'
28
+ ) {
29
+ reportLiteralNode ( node ) ;
30
+ }
31
+ }
32
+
33
+ } ;
34
+
35
+ } ;
36
+
37
+ module . exports . schema = [ {
38
+ type : 'object' ,
39
+ properties : { } ,
40
+ additionalProperties : false
41
+ } ] ;
You can’t perform that action at this time.
0 commit comments