@alexlit/config-eslint 90.0.0 → 91.0.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.
Files changed (67) hide show
  1. package/README.md +14 -29
  2. package/index.js +44 -8
  3. package/package.json +11 -53
  4. package/constants/allow-boolean-property-list.js +0 -38
  5. package/constants/boolean-prefixes.js +0 -11
  6. package/constants/english-verbs.js +0 -3368
  7. package/dictionaries/index.js +0 -467
  8. package/dictionaries/programming/bash.js +0 -25
  9. package/dictionaries/programming/django.js +0 -2345
  10. package/dictionaries/programming/elixir.js +0 -64
  11. package/dictionaries/programming/go.js +0 -7748
  12. package/dictionaries/programming/java.js +0 -33527
  13. package/dictionaries/programming/latex.js +0 -675
  14. package/dictionaries/programming/lua.js +0 -394
  15. package/dictionaries/programming/php.js +0 -9788
  16. package/dictionaries/programming/python.js +0 -367
  17. package/dictionaries/programming/ruby.js +0 -357
  18. package/dictionaries/programming/rust.js +0 -115
  19. package/dictionaries/programming/scala.js +0 -2755
  20. package/dictionaries/specialized/html-symbol-entities.js +0 -1118
  21. package/dictionaries/specialized/lorem-ipsum.js +0 -359
  22. package/legacy.js +0 -3
  23. package/plugins/array-func.js +0 -20
  24. package/plugins/compat.js +0 -7
  25. package/plugins/decorator-position.js +0 -15
  26. package/plugins/eslint-comments.js +0 -9
  27. package/plugins/etc.js +0 -13
  28. package/plugins/ext.js +0 -12
  29. package/plugins/filenames.js +0 -38
  30. package/plugins/import.js +0 -133
  31. package/plugins/jsdoc.js +0 -32
  32. package/plugins/jsx-a11y.js +0 -5
  33. package/plugins/lit-a11y.js +0 -5
  34. package/plugins/lit.js +0 -9
  35. package/plugins/more.js +0 -17
  36. package/plugins/no-await-in-promise.js +0 -5
  37. package/plugins/no-constructor-bind.js +0 -8
  38. package/plugins/no-explicit-type-exports.js +0 -7
  39. package/plugins/no-loops.js +0 -7
  40. package/plugins/no-secrets.js +0 -12
  41. package/plugins/no-use-extend-native.js +0 -5
  42. package/plugins/node.js +0 -5
  43. package/plugins/prettier.js +0 -24
  44. package/plugins/promise.js +0 -10
  45. package/plugins/regexp.js +0 -7
  46. package/plugins/security.js +0 -10
  47. package/plugins/simple-import-sort.js +0 -7
  48. package/plugins/sonar.js +0 -5
  49. package/plugins/sort-class-members.js +0 -298
  50. package/plugins/sort-destructure-keys.js +0 -10
  51. package/plugins/sort-keys-fix.js +0 -7
  52. package/plugins/spellcheck.js +0 -9
  53. package/plugins/sql.js +0 -26
  54. package/plugins/tanstack-query.js +0 -4
  55. package/plugins/testing-library.js +0 -9
  56. package/plugins/typescript-sort-keys.js +0 -5
  57. package/plugins/typescript.js +0 -157
  58. package/plugins/unicorn.js +0 -70
  59. package/plugins/unused-imports.js +0 -17
  60. package/plugins/vitest.js +0 -16
  61. package/plugins/vue-i18n.js +0 -34
  62. package/plugins/vue.js +0 -291
  63. package/plugins/vuejs-accessibility.js +0 -20
  64. package/plugins/wc.js +0 -5
  65. package/plugins/write-good-comments.js +0 -7
  66. package/utils/create-config.js +0 -377
  67. package/utils/extend-spell-checker.js +0 -23
@@ -1,70 +0,0 @@
1
- /* eslint-disable no-undef */
2
- module.exports = {
3
- extends: ['plugin:unicorn/recommended'],
4
-
5
- overrides: [
6
- {
7
- files: ['.*'],
8
-
9
- rules: {
10
- 'unicorn/no-null': 'off',
11
- },
12
- },
13
- {
14
- files: ['*.d.ts'],
15
-
16
- rules: {
17
- 'unicorn/prefer-export-from': 'off',
18
- },
19
- },
20
- ],
21
-
22
- plugins: ['unicorn'],
23
-
24
- rules: {
25
- 'unicorn/better-regex': 'off',
26
-
27
- 'unicorn/consistent-destructuring': 'warn',
28
-
29
- 'unicorn/consistent-function-scoping': [
30
- 'error',
31
- { checkArrowFunctions: false },
32
- ],
33
-
34
- 'unicorn/no-array-for-each': 'off',
35
-
36
- 'unicorn/no-array-reduce': ['error', { allowSimpleOperations: true }],
37
-
38
- 'unicorn/no-empty-file': 'off',
39
-
40
- 'unicorn/prefer-module': 'off',
41
-
42
- 'unicorn/prefer-node-protocol': 'off',
43
-
44
- 'unicorn/prevent-abbreviations': [
45
- 'warn',
46
- {
47
- allowList: {
48
- ImportMetaEnv: true,
49
- ProcessEnv: true,
50
- Props: true,
51
- args: true,
52
- attrs: true,
53
- env: true,
54
- i18n: true,
55
- params: true,
56
- props: true,
57
- ref: true,
58
- },
59
-
60
- checkFilenames: false, // delegate to eslint-plugin-filenames
61
-
62
- replacements: {
63
- index18n: {
64
- i18n: true,
65
- },
66
- },
67
- },
68
- ],
69
- },
70
- };
@@ -1,17 +0,0 @@
1
- module.exports = {
2
- plugins: ['unused-imports'],
3
-
4
- rules: {
5
- 'unused-imports/no-unused-imports': 'error',
6
-
7
- 'unused-imports/no-unused-vars': [
8
- 'error',
9
- {
10
- args: 'after-used',
11
- argsIgnorePattern: '^_',
12
- vars: 'all',
13
- varsIgnorePattern: '^_',
14
- },
15
- ],
16
- },
17
- };
package/plugins/vitest.js DELETED
@@ -1,16 +0,0 @@
1
- module.exports = {
2
- overrides: [
3
- {
4
- extends: ['plugin:vitest/legacy-all'],
5
- files: ['*.{test,spec}.{js,ts}'],
6
- plugins: ['vitest'],
7
-
8
- rules: {
9
- 'vitest/no-conditional-in-test': 'off',
10
- 'vitest/no-conditional-tests': 'off',
11
- 'vitest/no-hooks': 'off',
12
- 'vitest/require-to-throw-message': 'off',
13
- },
14
- },
15
- ],
16
- };
@@ -1,34 +0,0 @@
1
- module.exports = {
2
- extends: ['plugin:@intlify/vue-i18n/recommended'],
3
-
4
- plugins: ['@intlify/vue-i18n'],
5
-
6
- rules: {
7
- '@intlify/vue-i18n/key-format-style': [
8
- 'error',
9
- 'snake_case',
10
- {
11
- allowArray: false,
12
- },
13
- ],
14
-
15
- '@intlify/vue-i18n/no-duplicate-keys-in-locale': [
16
- 'error',
17
- {
18
- ignoreI18nBlock: false,
19
- },
20
- ],
21
-
22
- '@intlify/vue-i18n/no-dynamic-keys': 'warn',
23
- '@intlify/vue-i18n/no-raw-text': 'off',
24
- '@intlify/vue-i18n/no-unused-keys': 'warn',
25
- '@intlify/vue-i18n/prefer-sfc-lang-attr': 'error',
26
- },
27
-
28
- settings: {
29
- 'vue-i18n': {
30
- localeDir: './src/locales/*.{json,json5,yaml,yml}',
31
- messageSyntaxVersion: '^9.0.0',
32
- },
33
- },
34
- };
package/plugins/vue.js DELETED
@@ -1,291 +0,0 @@
1
- /* eslint-disable spellcheck/spell-checker */
2
- module.exports = {
3
- extends: ['plugin:vue/vue3-recommended'],
4
-
5
- overrides: [
6
- {
7
- files: ['**/pages/**/*', '**/layouts/**/*'],
8
-
9
- rules: {
10
- 'vue/multi-word-component-names': 'off',
11
- },
12
- },
13
- ],
14
-
15
- plugins: ['vue'],
16
-
17
- rules: {
18
- 'vue/attributes-order': [
19
- 'error',
20
- {
21
- alphabetical: true,
22
- },
23
- ],
24
-
25
- 'vue/block-lang': [
26
- 'error',
27
- {
28
- script: { lang: 'ts' },
29
- style: { lang: 'scss' },
30
- template: {},
31
- },
32
- ],
33
-
34
- 'vue/component-api-style': ['error', ['script-setup']],
35
-
36
- 'vue/component-definition-name-casing': ['error', 'kebab-case'],
37
-
38
- 'vue/component-name-in-template-casing': [
39
- 'error',
40
- 'PascalCase',
41
- {
42
- registeredComponentsOnly: false,
43
- },
44
- ],
45
-
46
- 'vue/component-options-name-casing': ['error', 'PascalCase'],
47
-
48
- 'vue/component-tags-order': [
49
- 'error',
50
- {
51
- order: ['script', 'template', 'style'],
52
- },
53
- ],
54
-
55
- 'vue/define-emits-declaration': ['error'],
56
-
57
- 'vue/define-macros-order': [
58
- 'error',
59
- {
60
- defineExposeLast: true,
61
-
62
- order: [
63
- 'defineOptions',
64
- 'defineModel',
65
- 'defineProps',
66
- 'defineEmits',
67
- 'defineSlots',
68
- ],
69
- },
70
- ],
71
-
72
- 'vue/define-props-declaration': ['error'],
73
-
74
- 'vue/dot-notation': ['error'],
75
-
76
- 'vue/enforce-style-attribute': ['error', { allow: ['module'] }],
77
-
78
- 'vue/eqeqeq': ['error'],
79
-
80
- 'vue/html-button-has-type': ['error'],
81
-
82
- 'vue/html-comment-content-newline': ['warn'],
83
-
84
- 'vue/html-comment-content-spacing': ['warn'],
85
-
86
- 'vue/html-comment-indent': ['warn'],
87
-
88
- 'vue/html-end-tags': ['error'],
89
-
90
- // 'vue/html-self-closing': [], // delegate to plugins/prettier
91
- 'vue/match-component-file-name': ['error'],
92
-
93
- 'vue/match-component-import-name': ['error'],
94
-
95
- 'vue/max-attributes-per-line': [
96
- 'error',
97
- {
98
- singleline: 3,
99
- },
100
- ],
101
-
102
- 'vue/max-lines-per-block': [
103
- 'warn',
104
- {
105
- script: 500,
106
- skipBlankLines: true,
107
- style: 500,
108
- template: 500,
109
- },
110
- ],
111
-
112
- 'vue/new-line-between-multi-line-property': ['error'],
113
-
114
- 'vue/next-tick-style': ['error', 'promise'],
115
-
116
- 'vue/no-child-content': ['error'],
117
-
118
- 'vue/no-console': ['error'],
119
-
120
- 'vue/no-custom-modifiers-on-v-model': 'off',
121
-
122
- 'vue/no-deprecated-model-definition': ['error'],
123
-
124
- 'vue/no-deprecated-scope-attribute': ['error'],
125
-
126
- 'vue/no-deprecated-slot-attribute': ['error'],
127
-
128
- 'vue/no-deprecated-slot-scope-attribute': ['error'],
129
-
130
- 'vue/no-duplicate-attr-inheritance': ['error'],
131
-
132
- 'vue/no-empty-component-block': ['error'],
133
-
134
- 'vue/no-invalid-model-keys': ['error'],
135
-
136
- 'vue/no-irregular-whitespace': ['error'],
137
-
138
- 'vue/no-loss-of-precision': ['error'],
139
-
140
- 'vue/no-multiple-objects-in-class': ['error'],
141
-
142
- 'vue/no-multiple-template-root': 'off',
143
-
144
- 'vue/no-parsing-error': ['error'],
145
-
146
- 'vue/no-potential-component-option-typo': ['error'],
147
-
148
- 'vue/no-ref-object-reactivity-loss': ['error'],
149
-
150
- 'vue/no-required-prop-with-default': [
151
- 'error',
152
- {
153
- autofix: true,
154
- },
155
- ],
156
-
157
- 'vue/no-reserved-component-names': [
158
- 'error',
159
- {
160
- disallowVue3BuiltInComponents: true,
161
- disallowVueBuiltInComponents: true,
162
- },
163
- ],
164
-
165
- 'vue/no-restricted-component-names': ['error'],
166
-
167
- 'vue/no-restricted-component-options': ['error'],
168
-
169
- 'vue/no-restricted-props': ['error'],
170
-
171
- 'vue/no-root-v-if': ['error'],
172
-
173
- 'vue/no-setup-props-reactivity-loss': ['error'],
174
-
175
- 'vue/no-static-inline-styles': [
176
- 'error',
177
- {
178
- allowBinding: true,
179
- },
180
- ],
181
-
182
- 'vue/no-this-in-before-route-enter': ['error'],
183
-
184
- 'vue/no-unsupported-features': ['error'],
185
-
186
- 'vue/no-unused-components': ['error'],
187
-
188
- 'vue/no-unused-emit-declarations': ['error'],
189
-
190
- 'vue/no-unused-refs': 'off',
191
-
192
- 'vue/no-use-computed-property-like-method': ['error'],
193
-
194
- 'vue/no-use-v-else-with-v-for': ['warn'],
195
-
196
- 'vue/no-useless-mustaches': ['error'],
197
-
198
- 'vue/no-useless-template-attributes': ['error'],
199
-
200
- 'vue/no-useless-v-bind': ['error'],
201
-
202
- 'vue/no-v-for-template-key': 'off',
203
-
204
- 'vue/no-v-html': ['error'],
205
-
206
- 'vue/no-v-model-argument': 'off',
207
-
208
- 'vue/no-v-text': ['error'],
209
-
210
- 'vue/no-v-text-v-html-on-component': ['error'],
211
-
212
- 'vue/object-shorthand': ['error'],
213
-
214
- 'vue/padding-line-between-blocks': ['error'],
215
-
216
- 'vue/padding-line-between-tags': [
217
- 'error',
218
- [
219
- {
220
- blankLine: 'always',
221
- next: '*',
222
- prev: '*',
223
- },
224
- ],
225
- ],
226
-
227
- 'vue/padding-lines-in-component-definition': [
228
- 'error',
229
- { groupSingleLineProperties: true },
230
- ],
231
-
232
- 'vue/prefer-define-options': ['error'],
233
-
234
- 'vue/prefer-prop-type-boolean-first': ['error'],
235
-
236
- 'vue/prefer-separate-static-class': ['error'],
237
-
238
- 'vue/prefer-true-attribute-shorthand': ['error'],
239
-
240
- 'vue/quote-props': ['error', 'as-needed'],
241
-
242
- 'vue/require-direct-export': 'off',
243
-
244
- 'vue/require-explicit-slots': ['warn'],
245
-
246
- 'vue/require-macro-variable-name': [
247
- 'error',
248
- {
249
- defineEmits: '$emit',
250
- defineProps: '$props',
251
- defineSlots: '$slots',
252
- useAttrs: '$attrs',
253
- useSlots: '$slots',
254
- },
255
- ],
256
-
257
- 'vue/require-typed-object-prop': ['error'],
258
-
259
- 'vue/require-typed-ref': ['error'],
260
-
261
- 'vue/sort-keys': 'off', // delegate to sort-keys-fix,
262
-
263
- 'vue/static-class-names-order': ['warn'],
264
-
265
- 'vue/this-in-template': ['error', 'never'],
266
-
267
- 'vue/v-bind-style': [
268
- 'error',
269
- 'shorthand',
270
- {
271
- sameNameShorthand: 'always',
272
- },
273
- ],
274
-
275
- 'vue/v-for-delimiter-style': ['error'],
276
-
277
- 'vue/v-if-else-key': ['error'],
278
-
279
- 'vue/v-on-event-hyphenation': ['error'],
280
-
281
- 'vue/v-on-handler-style': ['error', 'inline-function'],
282
-
283
- 'vue/valid-define-options': ['error'],
284
-
285
- 'vue/valid-next-tick': ['error'],
286
-
287
- 'vue/valid-v-bind-sync': ['error'],
288
-
289
- 'vue/valid-v-slot': ['error'],
290
- },
291
- };
@@ -1,20 +0,0 @@
1
- module.exports = {
2
- extends: ['plugin:vuejs-accessibility/recommended'],
3
-
4
- plugins: ['vuejs-accessibility'],
5
-
6
- rules: {
7
- 'vuejs-accessibility/label-has-for': [
8
- 'warn',
9
- {
10
- allowChildren: true,
11
-
12
- required: {
13
- some: ['nesting', 'id'],
14
- },
15
- },
16
- ],
17
-
18
- 'vuejs-accessibility/no-autofocus': ['warn', { ignoreNonDOM: true }],
19
- },
20
- };
package/plugins/wc.js DELETED
@@ -1,5 +0,0 @@
1
- module.exports = {
2
- extends: ['plugin:wc/recommended'],
3
-
4
- plugins: ['wc'],
5
- };
@@ -1,7 +0,0 @@
1
- module.exports = {
2
- plugins: ['write-good-comments'],
3
-
4
- rules: {
5
- 'write-good-comments/write-good-comments': 'warn',
6
- },
7
- };