@egs33/eslint-config 1.11.0 → 1.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +14 -13
  2. package/vue3.js +105 -0
package/package.json CHANGED
@@ -1,30 +1,31 @@
1
1
  {
2
2
  "name": "@egs33/eslint-config",
3
3
  "description": "eslint config for me",
4
- "version": "1.11.0",
4
+ "version": "1.12.1",
5
5
  "author": "egs33",
6
6
  "dependencies": {
7
7
  "eslint-config-airbnb-base": "^15.0.0",
8
- "eslint-config-airbnb-typescript": "^16.1.0",
8
+ "eslint-config-airbnb-typescript": "^17.0.0",
9
9
  "eslint-plugin-array-func": "^3.1.7",
10
- "eslint-plugin-import": "^2.25.3",
10
+ "eslint-plugin-import": "^2.26.0",
11
11
  "eslint-plugin-node": "^11.1.0",
12
- "eslint-plugin-promise": "^6.0.0",
13
- "eslint-plugin-regexp": "^1.5.1"
12
+ "eslint-plugin-promise": "^6.0.1",
13
+ "eslint-plugin-regexp": "^1.9.0"
14
14
  },
15
15
  "devDependencies": {
16
- "eslint": "^8.5.0",
17
- "eslint-plugin-vue": "^8.2.0",
18
- "vue-eslint-parser": "^7.11.0 || ^8.0.1"
16
+ "eslint": "^8.23.1",
17
+ "eslint-plugin-vue": "^9.5.0",
18
+ "vue-eslint-parser": "^9.1.0"
19
19
  },
20
20
  "engines": {
21
- "node": ">=12"
21
+ "node": ">=16"
22
22
  },
23
23
  "files": [
24
24
  "base.js",
25
25
  "browser.js",
26
26
  "nodejs.js",
27
27
  "vue.js",
28
+ "vue3.js",
28
29
  "typescript-base.js",
29
30
  "typescript-node.js",
30
31
  "typescript-browser.js",
@@ -38,11 +39,11 @@
38
39
  "license": "MIT",
39
40
  "main": "nodejs.js",
40
41
  "peerDependencies": {
41
- "@typescript-eslint/eslint-plugin": "^5.0.0",
42
- "eslint": "^8.5.0",
43
- "eslint-plugin-vue": "^8.2.0",
42
+ "@typescript-eslint/eslint-plugin": "^5.37.0",
43
+ "eslint": "^8.23.1",
44
+ "eslint-plugin-vue": "^9.5.0",
44
45
  "typescript": "^4.4.4",
45
- "vue-eslint-parser": "^7.11.0 || ^8.0.1"
46
+ "vue-eslint-parser": "^9.1.0"
46
47
  },
47
48
  "peerDependenciesMeta": {
48
49
  "@typescript-eslint/eslint-plugin": {
package/vue3.js ADDED
@@ -0,0 +1,105 @@
1
+ module.exports = {
2
+ extends: ['./browser', 'plugin:vue/vue3-recommended'],
3
+ plugins: ['vue'],
4
+ parser: 'vue-eslint-parser',
5
+ overrides: [
6
+ {
7
+ files: '**.vue',
8
+ rules: {
9
+ 'import/no-default-export': 'off',
10
+ },
11
+ },
12
+ ],
13
+ rules: {
14
+ 'vue/max-attributes-per-line': ['error', {
15
+ singleline: 4,
16
+ }],
17
+ 'vue/html-indent': ['error', 2],
18
+ 'vue/html-closing-bracket-newline': ['error', {
19
+ singleline: 'never',
20
+ multiline: 'never',
21
+ }],
22
+ // use airbnb rules in vue templates
23
+ 'vue/array-bracket-spacing': 'error',
24
+ 'vue/arrow-spacing': 'error',
25
+ 'vue/block-spacing': 'error',
26
+ 'vue/brace-style': [
27
+ 'error',
28
+ '1tbs',
29
+ {
30
+ allowSingleLine: true,
31
+ },
32
+ ],
33
+ 'vue/camelcase': [
34
+ 'error',
35
+ {
36
+ properties: 'never',
37
+ },
38
+ ],
39
+ 'vue/comma-dangle': [
40
+ 'error',
41
+ {
42
+ arrays: 'always-multiline',
43
+ objects: 'always-multiline',
44
+ imports: 'always-multiline',
45
+ exports: 'always-multiline',
46
+ functions: 'always-multiline',
47
+ },
48
+ ],
49
+ 'vue/comma-spacing': 'error',
50
+ 'vue/comma-style': [
51
+ 'error',
52
+ 'last',
53
+ {
54
+ exceptions: {
55
+ ArrayExpression: false,
56
+ ArrayPattern: false,
57
+ ArrowFunctionExpression: false,
58
+ CallExpression: false,
59
+ FunctionDeclaration: false,
60
+ FunctionExpression: false,
61
+ ImportDeclaration: false,
62
+ ObjectExpression: false,
63
+ ObjectPattern: false,
64
+ VariableDeclaration: false,
65
+ NewExpression: false,
66
+ },
67
+ },
68
+ ],
69
+ 'vue/dot-location': [
70
+ 'error',
71
+ 'property',
72
+ ],
73
+ 'vue/dot-notation': 'error',
74
+ 'vue/eqeqeq': 'error',
75
+ 'vue/key-spacing': 'error',
76
+ 'vue/keyword-spacing': 'error',
77
+ 'vue/max-len': ['error', {
78
+ code: 100,
79
+ template: 100,
80
+ comments: 100,
81
+ ignoreUrls: true,
82
+ ignoreRegExpLiterals: true,
83
+ ignoreStrings: true,
84
+ ignoreTemplateLiterals: true,
85
+ }],
86
+ 'vue/no-empty-pattern': 'error',
87
+ 'vue/no-irregular-whitespace': 'error',
88
+ 'vue/no-restricted-syntax': [
89
+ 'error',
90
+ 'ForInStatement',
91
+ 'LabeledStatement',
92
+ 'WithStatement',
93
+ ],
94
+ 'vue/no-useless-concat': 'error',
95
+ 'vue/object-curly-spacing': [
96
+ 'error',
97
+ 'always',
98
+ ],
99
+ 'vue/prefer-template': 'error',
100
+ 'vue/space-in-parens': 'error',
101
+ 'vue/space-infix-ops': 'error',
102
+ 'vue/space-unary-ops': 'error',
103
+ 'vue/template-curly-spacing': 'error',
104
+ },
105
+ };