@@ -16,6 +16,17 @@ const { version } = require( './package' );
16
16
*/
17
17
const majorMinorRegExp = escapeRegExp ( version . replace ( / \. \d + $ / , '' ) ) + '(\\.\\d+)?' ;
18
18
19
+ /**
20
+ * The list of patterns matching files used only for development purposes.
21
+ *
22
+ * @type {string[] }
23
+ */
24
+ const developmentFiles = [
25
+ '**/benchmark/**/*.js' ,
26
+ '**/@(__mocks__|__tests__|test)/**/*.js' ,
27
+ '**/@(storybook|stories)/**/*.js' ,
28
+ ] ;
29
+
19
30
module . exports = {
20
31
root : true ,
21
32
extends : [
@@ -97,34 +108,42 @@ module.exports = {
97
108
message : 'Avoid truthy checks on length property rendering, as zero length is rendered verbatim.' ,
98
109
} ,
99
110
] ,
100
- 'react/forbid-elements' : [ 'error' , {
101
- forbid : [
102
- [ 'circle' , 'Circle' ] ,
103
- [ 'g' , 'G' ] ,
104
- [ 'path' , 'Path' ] ,
105
- [ 'polygon' , 'Polygon' ] ,
106
- [ 'rect' , 'Rect' ] ,
107
- [ 'svg' , 'SVG' ] ,
108
- ] . map ( ( [ element , componentName ] ) => {
109
- return {
110
- element,
111
- message : `use cross-platform <${ componentName } > component instead.` ,
112
- } ;
113
- } ) ,
114
- } ] ,
115
111
} ,
116
112
overrides : [
117
113
{
118
114
files : [ 'packages/**/*.js' ] ,
115
+ excludedFiles : [
116
+ '**/*.@(android|ios|native).js' ,
117
+ ...developmentFiles ,
118
+ ] ,
119
119
rules : {
120
120
'import/no-extraneous-dependencies' : 'error' ,
121
121
} ,
122
+ } ,
123
+ {
124
+ files : [ 'packages/**/*.js' ] ,
122
125
excludedFiles : [
123
- '**/*.@(android|ios|native).js' ,
124
- '**/benchmark/**/*.js' ,
125
- '**/@(__mocks__|__tests__|test)/**/*.js' ,
126
- '**/@(storybook|stories)/**/*.js' ,
126
+ 'packages/block-library/src/*/save.js' ,
127
+ ...developmentFiles ,
127
128
] ,
129
+ rules : {
130
+ 'react/forbid-elements' : [ 'error' , {
131
+ forbid : [
132
+ [ 'button' , 'Button' ] ,
133
+ [ 'circle' , 'Circle' ] ,
134
+ [ 'g' , 'G' ] ,
135
+ [ 'path' , 'Path' ] ,
136
+ [ 'polygon' , 'Polygon' ] ,
137
+ [ 'rect' , 'Rect' ] ,
138
+ [ 'svg' , 'SVG' ] ,
139
+ ] . map ( ( [ element , componentName ] ) => {
140
+ return {
141
+ element,
142
+ message : `use cross-platform <${ componentName } /> component instead.` ,
143
+ } ;
144
+ } ) ,
145
+ } ] ,
146
+ } ,
128
147
} ,
129
148
{
130
149
files : [
0 commit comments