-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.eslintrc.yml
74 lines (73 loc) · 2.03 KB
/
.eslintrc.yml
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
74
env:
browser: true
es2021: true
extends:
- eslint:recommended
- plugin:@typescript-eslint/recommended
# - plugin:react/recommended
- plugin:import/recommended
- plugin:import/typescript
parser: '@typescript-eslint/parser'
parserOptions:
ecmaVersion: latest
sourceType: module
plugins:
- '@typescript-eslint'
- react
- import
settings:
import/resolver:
typescript:
project: './tsconfig.json'
import/parsers:
'@typescript-eslint/parser': ['.ts', '.tsx']
ignorePatterns:
- node_modules
- dist
- .vscode
- .github
- postCss
- src/generated
- '**generated.ts'
rules:
semi: ['error', 'always']
# max-lines-per-function: ['warn', 60]
eqeqeq: 'error'
# max-lines: ['warn', 300]
no-console: ['error', { 'allow': ['warn', 'error'] }]
'no-var': 'error'
'@typescript-eslint/no-unused-vars':
- warn
- varsIgnorePattern: '^_'
destructuredArrayIgnorePattern: '^_'
argsIgnorePattern: '^_'
quotes: ['error', 'single']
import/order:
# Make sure to update changes in vite.config and the tsconfig as well
- 'error'
- newlines-between: always
pathGroups:
- pattern: '{assets,common,components,generated,hooks,layout,pages,signals,styles,types,utils,src}/**'
group: 'parent'
- pattern: '{assets,common,components,generated,hooks,layout,pages,signals,styles,types,utils,src}'
group: parent
position: before
alphabetize:
order: asc
groups:
- builtin
- external
- internal
- parent
- sibling
- index
- object
import/no-useless-path-segments:
- error
- noUselessIndex: true
import/newline-after-import: error
'@typescript-eslint/consistent-type-imports': error
# import/no-duplicates:
# - error
# - preferInline: false
root: true