-
Notifications
You must be signed in to change notification settings - Fork 0
/
.eslintrc.cjs
74 lines (73 loc) · 2.06 KB
/
.eslintrc.cjs
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
module.exports = {
settings: {
"import/parsers": {
"@typescript-eslint/parser": [".ts", ".tsx"]
},
"import/resolver": {
"typescript": {
"alwaysTryTypes": true, // always try to resolve types under `<root>@types` directory even it doesn't contain any source code, like `@types/unist`
},
"node": {
"extensions": [".jsx", ".ts", ".tsx"]
}
}
},
parser: '@typescript-eslint/parser',
parserOptions: {
project: './tsconfig.json'
},
plugins: [
'@typescript-eslint',
'sort-keys-fix',
'align-import',
],
extends: [
'@wortise/eslint-config',
"plugin:import/typescript",
],
'rules': {
'sort-keys': ['error', 'asc'],
'sort-keys-fix/sort-keys-fix': 'error',
"no-shadow": "off",
"@typescript-eslint/no-shadow": "warn",
'@typescript-eslint/no-unused-vars': ['error', {
argsIgnorePattern: '^_',
destructuredArrayIgnorePattern: '^_'
}],
"import/no-unresolved": "error",
"class-methods-use-this": "off",
'@typescript-eslint/no-use-before-define': 'error',
'align-import/align-import': 'error',
'align-import/trim-import': 'error',
'class-methods-use-this': 'off',
'import/no-anonymous-default-export': ['error', { allowObject: true }],
'import/no-cycle': ['error', { maxDepth: 1 }],
'import/no-extraneous-dependencies': ['error', { devDependencies: true }],
'import/order': ['error', {
'alphabetize': {
caseInsensitive: true,
order: 'asc'
},
'groups': ['builtin', 'external', 'internal'],
'newlines-between': 'always',
'pathGroups': [
{
group: 'builtin',
pattern: 'react',
position: 'before'
}
],
'pathGroupsExcludedImportTypes': ['react']
}],
"sort-imports": [
"error",
{
"allowSeparatedGroups": true,
"ignoreCase": true,
"ignoreDeclarationSort": true,
"ignoreMemberSort": false,
"memberSyntaxSortOrder": ['single', 'all', 'multiple', 'none'],
}
]
},
};