-
Notifications
You must be signed in to change notification settings - Fork 0
/
.eslintrc.yml
91 lines (84 loc) · 2.12 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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
root: true
extends:
- eslint:recommended
- plugin:vue/vue3-recommended
- plugin:vuetify/recommended
- plugin:import/typescript
- '@vue/eslint-config-typescript'
- '@vue/eslint-config-typescript/recommended'
parser: vue-eslint-parser
parserOptions:
ecmaVersion: latest
parser: '@typescript-eslint/parser'
sourceType: module
project:
- ./tsconfig.app.json
- ./tsconfig.node.json
- ./tsconfig.vitest.json
extraFileExtensions:
- .vue
plugins:
- import
- vue
rules:
indent:
- error
- 2
- SwitchCase: 1
quotes:
- error
- single
no-unused-vars: error
semi:
- error
- always
'@typescript-eslint/consistent-type-imports': # Enable import sort order, see bellow.
- off
- prefer: type-imports
'@typescript-eslint/no-unnecessary-condition':
- warn
- allowConstantLoopConditions: true
import/default: off # Fix for Vue setup style
import/no-default-export: off # Fix for Vue setup style
import/order: # Sort Import Order. see https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/order.md#importorder-enforce-a-convention-in-module-import-order
- warn
- groups:
['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type']
pathGroups:
# Vue Core
- pattern: '{vue,vue-router,pinia,vite,vitest,vitest/**,@vitejs/**,@vue/**,vuetify,vue-i18n,vuetify/**}'
group: external
position: before
# Internal Codes
- pattern: '{@/**}'
group: internal
position: before
pathGroupsExcludedImportTypes:
- builtin
alphabetize:
order: asc
caseInsensitive: true
newlines-between: always
vuetify/no-deprecated-props: warn
settings:
import/parsers:
'@typescript-eslint/parser':
- .ts
- .tsx
vue-eslint-parser:
- .vue
import/resolver:
typescript: true
node: true
alias:
map:
- ['@', './src']
- ['~', './node_modules']
extensions:
- .js
- .ts
- .jsx
- .tsx
- .vue
vite:
configPath: ./vite.config.ts