-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.eslintrc-vue.js
84 lines (83 loc) · 3.42 KB
/
.eslintrc-vue.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
73
74
75
76
77
78
79
80
81
82
83
84
module.exports = {
extends: ['plugin:vue/vue3-recommended', '@vue/standard', '@vue/typescript/recommended', '.eslintrc-ts.js'],
rules: {
// Vue Uncategorized
'vue/block-tag-newline': 'error',
'vue/component-name-in-template-casing': ['error', 'PascalCase'],
'vue/custom-event-name-casing': 'error',
'vue/html-button-has-type': 'error',
'vue/html-comment-content-newline': 'error',
'vue/html-comment-content-spacing': 'error',
'vue/html-comment-indent': 'error',
'vue/match-component-file-name': 'error',
'vue/new-line-between-multi-line-property': 'error',
'vue/next-tick-style': 'error',
'vue/no-bare-strings-in-template': 'off', // TODO: Make this error
'vue/no-boolean-default': 'error',
'vue/no-duplicate-attr-inheritance': 'error',
'vue/no-empty-component-block': 'error',
'vue/no-invalid-model-keys': 'error',
'vue/no-multiple-objects-in-class': 'error',
'vue/no-potential-component-option-typo': 'error',
'vue/no-reserved-component-names': 'error',
'vue/no-restricted-block': 'error',
'vue/no-restricted-call-after-await': 'error',
'vue/no-restricted-component-options': 'error',
'vue/no-restricted-custom-event': 'error',
'vue/no-restricted-props': 'error',
'vue/no-restricted-static-attribute': 'error',
'vue/no-restricted-v-bind': 'error',
'vue/no-static-inline-styles': 'error',
'vue/no-template-target-blank': 'error',
'vue/no-unregistered-components': 'off', // Doesn't work if TS in separate file
'vue/no-unsupported-features': 'error',
'vue/no-unused-properties': 'error',
'vue/no-unused-refs': 'off', // Doesn't work if TS in separate file
'vue/no-useless-mustaches': 'error',
'vue/no-useless-v-bind': 'error',
'vue/padding-line-between-blocks': ['error'],
'vue/require-direct-export': 'error',
'vue/require-name-property': 'error',
'vue/script-indent': 'error',
'vue/sort-keys': 'off', // Too much
'vue/static-class-names-order': 'error',
'vue/v-for-delimiter-style': 'error',
'vue/v-on-event-hyphenation': 'error',
'vue/v-on-function-call': 'error',
'vue/valid-next-tick': 'error',
// ESLint for Vue
// URGENT: Check if these need params
'vue/array-bracket-newline': 'error',
'vue/array-bracket-spacing': 'error',
'vue/arrow-spacing': 'error',
'vue/block-spacing': 'error',
'vue/brace-style': 'error',
'vue/camelcase': 'error',
'vue/comma-dangle': 'error',
'vue/comma-spacing': 'error',
'vue/comma-style': 'error',
'vue/dot-location': 'error',
'vue/dot-notation': 'error',
'vue/eqeqeq': 'error',
'vue/func-call-spacing': 'error',
'vue/key-spacing': 'error',
'vue/keyword-spacing': 'error',
'vue/max-len': 'off', // Let prettier manage this
'vue/no-constant-condition': 'error',
'vue/no-empty-pattern': 'error',
'vue/no-extra-parens': 'error',
'vue/no-irregular-whitespace': 'error',
'vue/no-restricted-syntax': 'error',
'vue/no-sparse-arrays': 'error',
'vue/no-useless-concat': 'error',
'vue/object-curly-newline': 'error',
'vue/object-curly-spacing': ['error', 'always'],
'vue/object-property-newline': ['error', { allowAllPropertiesOnSameLine: true }],
'vue/operator-linebreak': 'error',
'vue/prefer-template': 'error',
'vue/space-in-parens': 'error',
'vue/space-infix-ops': 'error',
'vue/space-unary-ops': 'error',
'vue/template-curly-spacing': 'error'
}
}