@@ -7,61 +7,31 @@ module.exports = {
77 } ,
88 overrides : [
99 {
10- files : [
11- 'src/**/*.ts' ,
12- 'src/**/*.d.ts'
13- ] ,
10+ files : [ 'src/**/*.ts' , 'src/**/*.d.ts' ] ,
1411 parser : '@typescript-eslint/parser' ,
1512 parserOptions : {
1613 sourceType : 'module'
1714 } ,
18- plugins : [
19- '@typescript-eslint'
20- ] ,
15+ plugins : [ '@typescript-eslint' ] ,
2116 extends : [
22- 'plugin:@typescript-eslint/recommended'
17+ 'plugin:@typescript-eslint/recommended' ,
18+ 'prettier' ,
19+ 'prettier/@typescript-eslint'
2320 ] ,
2421 rules : {
25- 'arrow-parens' : [ 'error' , 'always' ] ,
26- 'import/extensions' : 'off' ,
27- 'import/no-self-import' : 'off' ,
28- 'import/no-unresolved' : [ 'error' , { 'ignore' : [ 'keytar' ] } ] ,
29- 'lines-between-class-members' : [ 'error' , 'always' , { exceptAfterSingleLine : true } ] ,
30- 'no-empty-function' : [ 'error' , { allow : [ 'constructors' ] } ] ,
31- 'no-useless-constructor' : 'off' ,
32- 'object-curly-newline' : [ 'error' , { multiline : true , minProperties : 5 } ] ,
33- '@typescript-eslint/explicit-function-return-type' : [ 'error' , { allowExpressions : true } ] ,
34- '@typescript-eslint/explicit-member-accessibility' : [ 'error' , { overrides : { constructors : 'no-public' } } ] ,
35- '@typescript-eslint/interface-name-prefix' : 'off' ,
36- '@typescript-eslint/member-delimiter-style' : [ 'error' , {
37- multiline : {
38- delimiter : 'comma' ,
39- requireLast : false
40- } ,
41- singleline : {
42- delimiter : 'comma' ,
43- requireLast : false
44- } ,
45- overrides : {
46- interface : {
47- multiline : {
48- delimiter : 'semi' ,
49- requireLast : true
50- }
51- }
22+ '@typescript-eslint/camelcase' : [
23+ 'error' ,
24+ {
25+ allow : [ 'env_id' , 'env_type' , 'last_modified' ] ,
26+ ignoreDestructuring : true
5227 }
53- } ] ,
54- '@typescript-eslint/no-explicit-any' : 'off' ,
55- '@typescript-eslint/no-parameter-properties' : [ 'error' , { allows : [ 'public' , 'private' ] } ] ,
56- '@typescript-eslint/no-unused-vars' : [ 'error' , { args : 'none' } ] ,
57- '@typescript-eslint/no-use-before-define' : [ 'error' , { classes : false , functions : false } ] ,
58- '@typescript-eslint/no-useless-constructor' : 'error'
28+ ] ,
29+ '@typescript-eslint/interface-name-prefix' : 'off' ,
30+ '@typescript-eslint/no-explicit-any' : 'off'
5931 }
6032 } ,
6133 {
62- files : [
63- 'src/**/*.js'
64- ] ,
34+ files : [ 'src/**/*.js' ] ,
6535 parser : 'babel-eslint' ,
6636 parserOptions : {
6737 sourceType : 'module' ,
@@ -71,63 +41,37 @@ module.exports = {
7141 } ,
7242 extends : [
7343 'airbnb' ,
74- 'plugin:react/recommended'
44+ 'plugin:react/recommended' ,
45+ 'prettier' ,
46+ 'prettier/react'
7547 ] ,
7648 rules : {
77- 'arrow-body-style' : 'off' ,
78- 'arrow-parens' : 'off' ,
7949 'class-methods-use-this' : 'off' ,
80- 'comma-dangle' : 'off' ,
81- 'consistent-return' : 'off' ,
82- 'func-names' : 'off' ,
8350 'import/no-cycle' : 'off' ,
84- 'import/no-extraneous-dependencies' : 'off' ,
85- 'indent' : 'off' ,
86- 'max-len' : 'off' ,
87- 'no-cond-assign' : [ 'error' , 'except-parens' ] ,
88- 'no-console' : 'off' ,
8951 'no-control-regex' : 'off' ,
90- 'no-return-assign' : 'off' ,
91- 'no-underscore-dangle' : 'off' ,
92- 'no-unused-vars' : [ 'error' , { args : 'none' } ] ,
93- 'no-use-before-define' : 'off' ,
94- 'no-useless-escape' : 'off' ,
95- 'prefer-destructuring' : [ 'error' , { array : false } ] ,
96- 'react/jsx-curly-newline' : 'off' ,
97- 'react/jsx-filename-extension' : [ 'error' , { extensions : [ '.js' , '.jsx' ] } ] ,
98- 'react/jsx-one-expression-per-line' : 'off' ,
52+ 'react/forbid-prop-types' : [ 'error' , { forbid : [ 'any' , 'array' ] } ] ,
53+ 'react/jsx-filename-extension' : [
54+ 'error' ,
55+ { extensions : [ '.js' , '.jsx' ] }
56+ ] ,
9957 'react/jsx-props-no-spreading' : [ 'error' , { custom : 'ignore' } ] ,
100- 'react/sort-comp' : 'off' ,
101- 'semi' : 'off' ,
102- 'space-before-function-paren' : [ 'error' , {
103- anonymous : 'never' ,
104- named : 'never' ,
105- asyncArrow : 'always'
106- } ] ,
107- 'template-curly-spacing' : 'off'
58+ 'react/sort-comp' : 'off'
10859 }
10960 } ,
11061 {
111- files : [
112- 'test/**/*.ts'
113- ] ,
62+ files : [ 'test/**/*.ts' ] ,
11463 parserOptions : {
11564 sourceType : 'module'
11665 } ,
117- plugins : [
118- '@typescript-eslint' ,
119- 'mocha'
120- ] ,
66+ plugins : [ '@typescript-eslint' , 'mocha' ] ,
12167 extends : [
12268 'plugin:@typescript-eslint/recommended' ,
123- 'plugin:mocha/recommended'
69+ 'plugin:mocha/recommended' ,
70+ 'prettier' ,
71+ 'prettier/@typescript-eslint'
12472 ] ,
12573 rules : {
126- 'mocha/no-hooks-for-single-case' : 'off' ,
127- 'mocha/no-setup-in-describe' : 'off' ,
128- 'mocha/prefer-arrow-callback' : 'error' ,
129- 'no-unused-expressions' : 'off' ,
130- 'prefer-arrow-callback' : 'off'
74+ 'mocha/no-setup-in-describe' : 'off'
13175 }
13276 }
13377 ] ,
0 commit comments