Skip to content

Commit ed75f86

Browse files
committed
fix: flat configs
1 parent efab859 commit ed75f86

10 files changed

+296
-276
lines changed

lib/configs/flat/base.js

+9-13
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,15 @@
1-
/*
2-
* IMPORTANT!
3-
* This file has been automatically generated,
4-
* in order to update its content execute "npm run update"
1+
/**
2+
* @fileoverview flat config - unlike eslintrc configs, it's not auto generated.
3+
* @author 唯然<[email protected]>
54
*/
5+
6+
const globals = require('globals')
67
module.exports = {
7-
parser: require.resolve('vue-eslint-parser'),
8-
parserOptions: {
9-
ecmaVersion: 2020,
10-
sourceType: 'module'
8+
languageOptions: {
9+
parser: require('vue-eslint-parser'),
10+
sourceType: 'module',
11+
globals: globals.browser
1112
},
12-
env: {
13-
browser: true,
14-
es6: true
15-
},
16-
plugins: ['vue'],
1713
rules: {
1814
'vue/comment-directive': 'error',
1915
'vue/jsx-uses-vars': 'error'

lib/configs/flat/no-layout-rules.js

+3-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
/*
2-
* IMPORTANT!
3-
* This file has been automatically generated,
4-
* in order to update its content execute "npm run update"
1+
/**
2+
* @fileoverview flat config - unlike eslintrc configs, it's not auto generated.
3+
* @author 唯然<[email protected]>
54
*/
65
module.exports = {
76
rules: {

lib/configs/flat/vue2-essential.js

+73-71
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,75 @@
1-
/*
2-
* IMPORTANT!
3-
* This file has been automatically generated,
4-
* in order to update its content execute "npm run update"
1+
/**
2+
* @fileoverview flat config - unlike eslintrc configs, it's not auto generated.
3+
* @author 唯然<[email protected]>
54
*/
6-
module.exports = {
7-
extends: require.resolve('./base'),
8-
rules: {
9-
'vue/multi-word-component-names': 'error',
10-
'vue/no-arrow-functions-in-watch': 'error',
11-
'vue/no-async-in-computed-properties': 'error',
12-
'vue/no-child-content': 'error',
13-
'vue/no-computed-properties-in-data': 'error',
14-
'vue/no-custom-modifiers-on-v-model': 'error',
15-
'vue/no-dupe-keys': 'error',
16-
'vue/no-dupe-v-else-if': 'error',
17-
'vue/no-duplicate-attributes': 'error',
18-
'vue/no-export-in-script-setup': 'error',
19-
'vue/no-multiple-template-root': 'error',
20-
'vue/no-mutating-props': 'error',
21-
'vue/no-parsing-error': 'error',
22-
'vue/no-ref-as-operand': 'error',
23-
'vue/no-reserved-component-names': 'error',
24-
'vue/no-reserved-keys': 'error',
25-
'vue/no-reserved-props': [
26-
'error',
27-
{
28-
vueVersion: 2
29-
}
30-
],
31-
'vue/no-shared-component-data': 'error',
32-
'vue/no-side-effects-in-computed-properties': 'error',
33-
'vue/no-template-key': 'error',
34-
'vue/no-textarea-mustache': 'error',
35-
'vue/no-unused-components': 'error',
36-
'vue/no-unused-vars': 'error',
37-
'vue/no-use-computed-property-like-method': 'error',
38-
'vue/no-use-v-if-with-v-for': 'error',
39-
'vue/no-useless-template-attributes': 'error',
40-
'vue/no-v-for-template-key': 'error',
41-
'vue/no-v-model-argument': 'error',
42-
'vue/no-v-text-v-html-on-component': 'error',
43-
'vue/require-component-is': 'error',
44-
'vue/require-prop-type-constructor': 'error',
45-
'vue/require-render-return': 'error',
46-
'vue/require-v-for-key': 'error',
47-
'vue/require-valid-default-prop': 'error',
48-
'vue/return-in-computed-property': 'error',
49-
'vue/return-in-emits-validator': 'error',
50-
'vue/use-v-on-exact': 'error',
51-
'vue/valid-attribute-name': 'error',
52-
'vue/valid-define-emits': 'error',
53-
'vue/valid-define-props': 'error',
54-
'vue/valid-model-definition': 'error',
55-
'vue/valid-next-tick': 'error',
56-
'vue/valid-template-root': 'error',
57-
'vue/valid-v-bind-sync': 'error',
58-
'vue/valid-v-bind': 'error',
59-
'vue/valid-v-cloak': 'error',
60-
'vue/valid-v-else-if': 'error',
61-
'vue/valid-v-else': 'error',
62-
'vue/valid-v-for': 'error',
63-
'vue/valid-v-html': 'error',
64-
'vue/valid-v-if': 'error',
65-
'vue/valid-v-model': 'error',
66-
'vue/valid-v-on': 'error',
67-
'vue/valid-v-once': 'error',
68-
'vue/valid-v-pre': 'error',
69-
'vue/valid-v-show': 'error',
70-
'vue/valid-v-slot': 'error',
71-
'vue/valid-v-text': 'error'
72-
}
5+
6+
const config = require('./base.js')
7+
const { extendsRules } = require('../../utils/config-helpers.js')
8+
9+
const rules = {
10+
'vue/multi-word-component-names': 'error',
11+
'vue/no-arrow-functions-in-watch': 'error',
12+
'vue/no-async-in-computed-properties': 'error',
13+
'vue/no-child-content': 'error',
14+
'vue/no-computed-properties-in-data': 'error',
15+
'vue/no-custom-modifiers-on-v-model': 'error',
16+
'vue/no-dupe-keys': 'error',
17+
'vue/no-dupe-v-else-if': 'error',
18+
'vue/no-duplicate-attributes': 'error',
19+
'vue/no-export-in-script-setup': 'error',
20+
'vue/no-multiple-template-root': 'error',
21+
'vue/no-mutating-props': 'error',
22+
'vue/no-parsing-error': 'error',
23+
'vue/no-ref-as-operand': 'error',
24+
'vue/no-reserved-component-names': 'error',
25+
'vue/no-reserved-keys': 'error',
26+
'vue/no-reserved-props': [
27+
'error',
28+
{
29+
vueVersion: 2
30+
}
31+
],
32+
'vue/no-shared-component-data': 'error',
33+
'vue/no-side-effects-in-computed-properties': 'error',
34+
'vue/no-template-key': 'error',
35+
'vue/no-textarea-mustache': 'error',
36+
'vue/no-unused-components': 'error',
37+
'vue/no-unused-vars': 'error',
38+
'vue/no-use-computed-property-like-method': 'error',
39+
'vue/no-use-v-if-with-v-for': 'error',
40+
'vue/no-useless-template-attributes': 'error',
41+
'vue/no-v-for-template-key': 'error',
42+
'vue/no-v-model-argument': 'error',
43+
'vue/no-v-text-v-html-on-component': 'error',
44+
'vue/require-component-is': 'error',
45+
'vue/require-prop-type-constructor': 'error',
46+
'vue/require-render-return': 'error',
47+
'vue/require-v-for-key': 'error',
48+
'vue/require-valid-default-prop': 'error',
49+
'vue/return-in-computed-property': 'error',
50+
'vue/return-in-emits-validator': 'error',
51+
'vue/use-v-on-exact': 'error',
52+
'vue/valid-attribute-name': 'error',
53+
'vue/valid-define-emits': 'error',
54+
'vue/valid-define-props': 'error',
55+
'vue/valid-model-definition': 'error',
56+
'vue/valid-next-tick': 'error',
57+
'vue/valid-template-root': 'error',
58+
'vue/valid-v-bind-sync': 'error',
59+
'vue/valid-v-bind': 'error',
60+
'vue/valid-v-cloak': 'error',
61+
'vue/valid-v-else-if': 'error',
62+
'vue/valid-v-else': 'error',
63+
'vue/valid-v-for': 'error',
64+
'vue/valid-v-html': 'error',
65+
'vue/valid-v-if': 'error',
66+
'vue/valid-v-model': 'error',
67+
'vue/valid-v-on': 'error',
68+
'vue/valid-v-once': 'error',
69+
'vue/valid-v-pre': 'error',
70+
'vue/valid-v-show': 'error',
71+
'vue/valid-v-slot': 'error',
72+
'vue/valid-v-text': 'error'
7373
}
74+
75+
module.exports = extendsRules(config, rules)

lib/configs/flat/vue2-recommended.js

+17-15
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
1-
/*
2-
* IMPORTANT!
3-
* This file has been automatically generated,
4-
* in order to update its content execute "npm run update"
1+
/**
2+
* @fileoverview flat config - unlike eslintrc configs, it's not auto generated.
3+
* @author 唯然<[email protected]>
54
*/
6-
module.exports = {
7-
extends: require.resolve('./strongly-recommended'),
8-
rules: {
9-
'vue/attributes-order': 'warn',
10-
'vue/component-tags-order': 'warn',
11-
'vue/no-lone-template': 'warn',
12-
'vue/no-multiple-slot-args': 'warn',
13-
'vue/no-v-html': 'warn',
14-
'vue/order-in-components': 'warn',
15-
'vue/this-in-template': 'warn'
16-
}
5+
6+
const config = require('./vue2-strongly-recommended.js')
7+
const { extendsRules } = require('../../utils/config-helpers.js')
8+
9+
const rules = {
10+
'vue/attributes-order': 'warn',
11+
'vue/component-tags-order': 'warn',
12+
'vue/no-lone-template': 'warn',
13+
'vue/no-multiple-slot-args': 'warn',
14+
'vue/no-v-html': 'warn',
15+
'vue/order-in-components': 'warn',
16+
'vue/this-in-template': 'warn'
1717
}
18+
19+
module.exports = extendsRules(config, rules)
+33-31
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,35 @@
1-
/*
2-
* IMPORTANT!
3-
* This file has been automatically generated,
4-
* in order to update its content execute "npm run update"
1+
/**
2+
* @fileoverview flat config - unlike eslintrc configs, it's not auto generated.
3+
* @author 唯然<[email protected]>
54
*/
6-
module.exports = {
7-
extends: require.resolve('./essential'),
8-
rules: {
9-
'vue/attribute-hyphenation': 'warn',
10-
'vue/component-definition-name-casing': 'warn',
11-
'vue/first-attribute-linebreak': 'warn',
12-
'vue/html-closing-bracket-newline': 'warn',
13-
'vue/html-closing-bracket-spacing': 'warn',
14-
'vue/html-end-tags': 'warn',
15-
'vue/html-indent': 'warn',
16-
'vue/html-quotes': 'warn',
17-
'vue/html-self-closing': 'warn',
18-
'vue/max-attributes-per-line': 'warn',
19-
'vue/multiline-html-element-content-newline': 'warn',
20-
'vue/mustache-interpolation-spacing': 'warn',
21-
'vue/no-multi-spaces': 'warn',
22-
'vue/no-spaces-around-equal-signs-in-attribute': 'warn',
23-
'vue/no-template-shadow': 'warn',
24-
'vue/one-component-per-file': 'warn',
25-
'vue/prop-name-casing': 'warn',
26-
'vue/require-default-prop': 'warn',
27-
'vue/require-prop-types': 'warn',
28-
'vue/singleline-html-element-content-newline': 'warn',
29-
'vue/v-bind-style': 'warn',
30-
'vue/v-on-style': 'warn',
31-
'vue/v-slot-style': 'warn'
32-
}
5+
6+
const config = require('./vue2-essential.js')
7+
const { extendsRules } = require('../../utils/config-helpers.js')
8+
9+
const rules = {
10+
'vue/attribute-hyphenation': 'warn',
11+
'vue/component-definition-name-casing': 'warn',
12+
'vue/first-attribute-linebreak': 'warn',
13+
'vue/html-closing-bracket-newline': 'warn',
14+
'vue/html-closing-bracket-spacing': 'warn',
15+
'vue/html-end-tags': 'warn',
16+
'vue/html-indent': 'warn',
17+
'vue/html-quotes': 'warn',
18+
'vue/html-self-closing': 'warn',
19+
'vue/max-attributes-per-line': 'warn',
20+
'vue/multiline-html-element-content-newline': 'warn',
21+
'vue/mustache-interpolation-spacing': 'warn',
22+
'vue/no-multi-spaces': 'warn',
23+
'vue/no-spaces-around-equal-signs-in-attribute': 'warn',
24+
'vue/no-template-shadow': 'warn',
25+
'vue/one-component-per-file': 'warn',
26+
'vue/prop-name-casing': 'warn',
27+
'vue/require-default-prop': 'warn',
28+
'vue/require-prop-types': 'warn',
29+
'vue/singleline-html-element-content-newline': 'warn',
30+
'vue/v-bind-style': 'warn',
31+
'vue/v-on-style': 'warn',
32+
'vue/v-slot-style': 'warn'
3333
}
34+
35+
module.exports = extendsRules(config, rules)

0 commit comments

Comments
 (0)