-
Notifications
You must be signed in to change notification settings - Fork 0
/
.eslintrc.js
38 lines (38 loc) · 1.24 KB
/
.eslintrc.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
module.exports = {
extends: [
'airbnb',
'airbnb/hooks',
'airbnb-typescript',
'plugin:react-perf/recommended',
'plugin:prettier/recommended',
'plugin:jest/recommended',
'plugin:jest/style',
],
overrides: [
{
extends: ['plugin:testing-library/react'],
files: ['**/__tests__/**/*.[jt]s?(x)', '**/?(*.)+(spec|test).[jt]s?(x)'],
},
],
parserOptions: { project: './tsconfig.eslint.json' },
plugins: ['sort-destructure-keys'],
rules: {
'import/order': [
'error',
{
alphabetize: { caseInsensitive: true, order: 'asc' },
groups: ['builtin', 'external', 'parent', 'sibling', 'index'],
},
],
'react/jsx-no-useless-fragment': ['error', { allowExpressions: true }],
'react/jsx-sort-props': ['error', { ignoreCase: true }],
'react/require-default-props': [
'error',
{ forbidDefaultForRequired: true, ignoreFunctionalComponents: true },
],
'sort-destructure-keys/sort-destructure-keys': ['error', { caseSensitive: false }],
'sort-imports': ['error', { ignoreCase: true, ignoreDeclarationSort: true }],
'sort-keys': ['error', 'asc', { caseSensitive: false, natural: true }],
},
settings: { 'testing-library/custom-renders': 'off' },
};