-
Notifications
You must be signed in to change notification settings - Fork 0
/
.eslintrc.js
72 lines (71 loc) · 2.16 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
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
module.exports = {
root: true,
env: {
node: true,
},
extends: [
'@vue/typescript/recommended',
'@vue/prettier/@typescript-eslint',
'plugin:vue/vue3-essential',
'plugin:@typescript-eslint/eslint-recommended',
//'prettier', // Avoid conflicts between prettier and eslint
],
parserOptions: {
ecmaVersion: 2020,
parser: require.resolve('@typescript-eslint/parser'),
},
plugins: ['@typescript-eslint'],
// Prerequisite `eslint-plugin-vue`, being extended, sets
// root property `parser` to `'vue-eslint-parser'`, which, for code parsing,
// in turn delegates to the parser, specified in `parserOptions.parser`:
// https://github.com/vuejs/eslint-plugin-vue#what-is-the-use-the-latest-vue-eslint-parser-error
rules: {
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'@typescript-eslint/no-explicit-any': 'off',
'vue/script-indent': ['error', 4, { baseIndent: 0 }],
'comma-dangle': ['error', 'only-multiline'],
'vue/script-indent': [
'error',
4,
{
baseIndent: 1,
switchCase: 0,
ignores: [],
},
],
'vue/html-indent': [
'error',
4,
{
attribute: 1,
baseIndent: 1,
closeBracket: 0,
alignAttributesVertically: true,
ignores: [],
},
],
},
overrides: [
{
files: ['*.vue'],
rules: {
indent: 'off',
},
},
{
files: ['*.ts', '*.tsx'],
rules: {
// The core 'no-unused-vars' rules (in the eslint:recommeded ruleset)
// does not work with type definitions
'no-unused-vars': 'off',
},
},
],
globals: {
defineProps: 'readonly',
defineEmits: 'readonly',
defineExpose: 'readonly',
withDefaults: 'readonly',
},
}