eslint-config-greenpie 16.3.0 → 16.4.0

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.
@@ -199,6 +199,7 @@
199
199
  "vue/no-deprecated-model-definition": "error",
200
200
  "vue/no-deprecated-props-default-this": "error",
201
201
  "vue/no-deprecated-vue-config-keycodes": "error",
202
+ "vue/no-dupe-keys": "error",
202
203
  "vue/no-expose-after-await": "error",
203
204
  "vue/no-export-in-script-setup": "error",
204
205
  "vue/no-lifecycle-after-await": "error",
@@ -206,6 +207,7 @@
206
207
  "vue/no-reserved-keys": "error",
207
208
  "vue/no-reserved-props": "error",
208
209
  "vue/no-shared-component-data": "error",
210
+ "vue/no-side-effects-in-computed-properties": "error",
209
211
  "vue/no-this-in-before-route-enter": "error",
210
212
  "vue/no-watch-after-await": "error",
211
213
  "vue/prefer-import-from-vue": "error",
@@ -428,6 +430,7 @@
428
430
 
429
431
  "unicorn/consistent-function-scoping": "error",
430
432
  "unicorn/no-accessor-recursion": "error",
433
+ "unicorn/no-array-fill-with-reference-type": "error",
431
434
  "unicorn/no-array-reverse": "error",
432
435
  "unicorn/no-array-sort": "error",
433
436
  "unicorn/no-instanceof-builtins": "error",
@@ -580,6 +583,7 @@
580
583
  "unicorn/prefer-prototype-methods": "error",
581
584
  "unicorn/prefer-query-selector": "error",
582
585
  "unicorn/prefer-regexp-test": "error",
586
+ "unicorn/prefer-single-call": "error",
583
587
  "unicorn/prefer-string-replace-all": "error",
584
588
  "unicorn/prefer-string-slice": "error",
585
589
  "unicorn/prefer-top-level-await": "error",
@@ -760,6 +764,7 @@
760
764
  "unicorn/prefer-classlist-toggle": "error",
761
765
  "unicorn/prefer-default-parameters": "error",
762
766
  "unicorn/prefer-dom-node-text-content": "error",
767
+ "unicorn/prefer-export-from": "error",
763
768
  "unicorn/prefer-global-this": "error",
764
769
  "unicorn/import-style": "off", // Needs a project-specific import style policy first
765
770
  "unicorn/prefer-includes": "error",
@@ -791,6 +796,12 @@
791
796
  "vue/define-props-destructuring": "off", // It requires destructuring, even when not needed
792
797
  "vue/next-tick-style": "error",
793
798
  "vue/prop-name-casing": "error",
799
+
800
+ // Still reports props typed as `T | undefined` without defaults:
801
+ // https://github.com/vuejs/eslint-plugin-vue/issues/2475
802
+ // Adding `= undefined` to satisfy it conflicts with unicorn/no-useless-undefined.
803
+ "vue/require-default-prop": "off",
804
+
794
805
  "vue/require-direct-export": "error",
795
806
  "vue/require-prop-types": "error",
796
807
  "vue/require-typed-ref": "error",
package/configs/vue.js CHANGED
@@ -36,6 +36,7 @@ export default defineConfig(
36
36
  'vue/no-deprecated-model-definition': 'off',
37
37
  'vue/no-deprecated-props-default-this': 'off',
38
38
  'vue/no-deprecated-vue-config-keycodes': 'off',
39
+ 'vue/no-dupe-keys': 'off',
39
40
  'vue/no-expose-after-await': 'off',
40
41
  'vue/no-export-in-script-setup': 'off',
41
42
  'vue/no-import-compiler-macros': 'off',
@@ -46,11 +47,22 @@ export default defineConfig(
46
47
  'vue/no-reserved-props': 'off',
47
48
  'vue/no-required-prop-with-default': 'off',
48
49
  'vue/no-shared-component-data': 'off',
50
+ 'vue/no-side-effects-in-computed-properties': 'off',
49
51
  'vue/no-this-in-before-route-enter': 'off',
50
52
  'vue/no-watch-after-await': 'off',
51
53
  'vue/prefer-import-from-vue': 'off',
52
54
  'vue/prop-name-casing': 'off',
53
55
  'vue/require-default-export': 'off',
56
+
57
+ /*
58
+ * Kept disabled in oxlint because it still reports props typed
59
+ * as `T | undefined` without defaults:
60
+ * https://github.com/vuejs/eslint-plugin-vue/issues/2475
61
+ *
62
+ * Adding `= undefined` to satisfy it conflicts with unicorn/no-useless-undefined.
63
+ */
64
+ 'vue/require-default-prop': 'off',
65
+
54
66
  'vue/require-direct-export': 'off',
55
67
  'vue/require-prop-type-constructor': 'off',
56
68
  'vue/require-prop-types': 'off',
@@ -80,13 +92,11 @@ export default defineConfig(
80
92
  'vue/multi-word-component-names': 'error',
81
93
  'vue/no-async-in-computed-properties': 'error',
82
94
  'vue/no-child-content': 'error',
83
- 'vue/no-dupe-keys': 'error',
84
95
  'vue/no-dupe-v-else-if': 'error',
85
96
  'vue/no-duplicate-attributes': 'error',
86
97
  'vue/no-mutating-props': 'error',
87
98
  'vue/no-parsing-error': 'error',
88
99
  'vue/no-ref-as-operand': 'error',
89
- 'vue/no-side-effects-in-computed-properties': 'error',
90
100
  'vue/no-template-key': 'error',
91
101
  'vue/no-textarea-mustache': 'error',
92
102
  'vue/no-unused-components': 'error',
@@ -163,15 +173,6 @@ export default defineConfig(
163
173
  'vue/no-template-shadow': 'error',
164
174
  'vue/one-component-per-file': 'error',
165
175
 
166
- /**
167
- * Conflicts with
168
- * - `unicorn/no-useless-undefined`
169
- * - `@typescript-eslint/no-useless-default-assignment`
170
- *
171
- * {@link https://github.com/vuejs/eslint-plugin-vue/issues/2475}
172
- */
173
- 'vue/require-default-prop': 'off',
174
-
175
176
  'vue/singleline-html-element-content-newline': 'error',
176
177
 
177
178
  'vue/v-bind-style': ['error', 'shorthand', {
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "eslint-config-greenpie",
3
- "version": "16.3.0",
3
+ "version": "16.4.0",
4
4
  "description": "GreenPie's ESLint and oxlint configs",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
7
7
  "author": "Roman Nuritdinov (Ky6uk)",
8
8
  "license": "MIT",
9
9
  "type": "module",
10
- "packageManager": "npm@11.16.0",
10
+ "packageManager": "npm@11.17.0",
11
11
  "homepage": "https://github.com/GreenPie/eslint-config-greenpie",
12
12
  "repository": {
13
13
  "type": "git",
@@ -37,20 +37,20 @@
37
37
  "oxlint"
38
38
  ],
39
39
  "devDependencies": {
40
- "@types/node": "^25.9.2",
40
+ "@types/node": "^25.9.3",
41
41
  "execa": "^9.6.1",
42
42
  "husky": "^9.1.7",
43
- "oxlint": "^1.69.0",
43
+ "oxlint": "^1.70.0",
44
44
  "taze": "^19.14.1",
45
45
  "valibot": "1.4.1",
46
- "vitest": "^4.1.8",
47
- "vue": "^3.5.35"
46
+ "vitest": "^4.1.9",
47
+ "vue": "^3.5.38"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "@stylistic/eslint-plugin": "^5.10.0",
51
- "eslint": "^10.4.1",
51
+ "eslint": "^10.5.0",
52
52
  "eslint-plugin-vue": "^10.9.2",
53
- "oxlint": "^1.69.0",
53
+ "oxlint": "^1.70.0",
54
54
  "oxlint-tsgolint": "^0.23.0",
55
55
  "typescript-eslint": "^8.61.0"
56
56
  }