@wkovacs64/eslint-config 7.2.0 → 7.2.2
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.
- package/index.js +97 -99
- package/package.json +5 -4
package/index.js
CHANGED
@@ -24,7 +24,7 @@ const hasReact = await has('react');
|
|
24
24
|
const hasTestingLibrary = await has('@testing-library/dom');
|
25
25
|
const hasJestDom = await has('@testing-library/jest-dom');
|
26
26
|
const hasVitest = await has('vitest');
|
27
|
-
const hasPlaywright = await has('playwright');
|
27
|
+
const hasPlaywright = await has('@playwright/test');
|
28
28
|
|
29
29
|
const vitestFiles = ['**/__tests__/**/*', '**/*.test.*'];
|
30
30
|
const testFiles = ['**/tests/**', '**/#tests/**', ...vitestFiles];
|
@@ -160,108 +160,106 @@ export const config = [
|
|
160
160
|
// TODO: figure out how to switch to type-checked configs
|
161
161
|
...tseslint.configs.recommended,
|
162
162
|
...tseslint.configs.stylistic,
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
parserOptions: {
|
170
|
-
parser: tseslint.parser,
|
171
|
-
projectService: true,
|
172
|
-
},
|
173
|
-
},
|
174
|
-
plugins: {
|
175
|
-
'@typescript-eslint': tseslint.plugin,
|
176
|
-
},
|
177
|
-
rules: {
|
178
|
-
'@typescript-eslint/ban-ts-comment': OFF,
|
179
|
-
'@typescript-eslint/consistent-type-assertions': [
|
180
|
-
ERROR,
|
181
|
-
{
|
182
|
-
assertionStyle: 'as',
|
183
|
-
objectLiteralTypeAssertions: 'allow-as-parameter',
|
184
|
-
},
|
185
|
-
],
|
186
|
-
'@typescript-eslint/consistent-type-definitions': OFF,
|
187
|
-
'import/consistent-type-specifier-style': [WARN, 'prefer-inline'],
|
188
|
-
'@typescript-eslint/consistent-type-imports': [
|
189
|
-
ERROR,
|
190
|
-
{
|
191
|
-
prefer: 'type-imports',
|
192
|
-
disallowTypeAnnotations: true,
|
193
|
-
fixStyle: 'inline-type-imports',
|
194
|
-
},
|
195
|
-
],
|
196
|
-
'@typescript-eslint/explicit-module-boundary-types': OFF,
|
197
|
-
'@typescript-eslint/naming-convention': [
|
198
|
-
ERROR,
|
199
|
-
{
|
200
|
-
selector: 'typeLike',
|
201
|
-
format: ['PascalCase'],
|
202
|
-
custom: { regex: '^I[A-Z]', match: false },
|
203
|
-
},
|
204
|
-
],
|
205
|
-
'@typescript-eslint/no-confusing-void-expression': [
|
206
|
-
ERROR,
|
207
|
-
{
|
208
|
-
ignoreArrowShorthand: true,
|
209
|
-
},
|
210
|
-
],
|
211
|
-
'@typescript-eslint/no-explicit-any': OFF,
|
212
|
-
'@typescript-eslint/no-floating-promises': [
|
213
|
-
ERROR,
|
214
|
-
{
|
215
|
-
ignoreIIFE: true,
|
216
|
-
},
|
217
|
-
],
|
218
|
-
'@typescript-eslint/no-import-type-side-effects': ERROR,
|
219
|
-
'no-invalid-this': OFF,
|
220
|
-
'@typescript-eslint/no-invalid-this': ERROR,
|
221
|
-
'no-redeclare': OFF,
|
222
|
-
'@typescript-eslint/no-non-null-assertion': OFF,
|
223
|
-
'@typescript-eslint/no-redeclare': ERROR,
|
224
|
-
'no-shadow': OFF,
|
225
|
-
'@typescript-eslint/no-shadow': ERROR,
|
226
|
-
'@typescript-eslint/no-unnecessary-type-constraint': 'warn',
|
227
|
-
'@typescript-eslint/no-unused-vars': [
|
228
|
-
ERROR,
|
229
|
-
{
|
230
|
-
vars: 'all',
|
231
|
-
args: 'after-used',
|
232
|
-
argsIgnorePattern: '^_',
|
233
|
-
ignoreRestSiblings: true,
|
234
|
-
},
|
235
|
-
],
|
236
|
-
'no-use-before-define': OFF,
|
237
|
-
'@typescript-eslint/no-use-before-define': [
|
238
|
-
ERROR,
|
239
|
-
{
|
240
|
-
functions: false,
|
241
|
-
classes: true,
|
242
|
-
variables: true,
|
243
|
-
},
|
244
|
-
],
|
245
|
-
'@typescript-eslint/prefer-nullish-coalescing': OFF,
|
246
|
-
'@typescript-eslint/restrict-template-expressions': [
|
247
|
-
ERROR,
|
248
|
-
{
|
249
|
-
allowBoolean: true,
|
250
|
-
allowNullish: true,
|
163
|
+
{
|
164
|
+
files: ['**/*.ts?(x)'],
|
165
|
+
languageOptions: {
|
166
|
+
parserOptions: {
|
167
|
+
parser: tseslint.parser,
|
168
|
+
projectService: true,
|
251
169
|
},
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
typescript:
|
259
|
-
|
170
|
+
},
|
171
|
+
plugins: {
|
172
|
+
'@typescript-eslint': tseslint.plugin,
|
173
|
+
},
|
174
|
+
rules: {
|
175
|
+
'@typescript-eslint/ban-ts-comment': OFF,
|
176
|
+
'@typescript-eslint/consistent-type-assertions': [
|
177
|
+
ERROR,
|
178
|
+
{
|
179
|
+
assertionStyle: 'as',
|
180
|
+
objectLiteralTypeAssertions: 'allow-as-parameter',
|
181
|
+
},
|
182
|
+
],
|
183
|
+
'@typescript-eslint/consistent-type-definitions': OFF,
|
184
|
+
// Note: use this rule _OR_ verbatimModuleSyntax in tsconfig.json - not both
|
185
|
+
// '@typescript-eslint/consistent-type-imports': [
|
186
|
+
// ERROR,
|
187
|
+
// {
|
188
|
+
// prefer: 'type-imports',
|
189
|
+
// disallowTypeAnnotations: true,
|
190
|
+
// fixStyle: 'inline-type-imports',
|
191
|
+
// },
|
192
|
+
// ],
|
193
|
+
'@typescript-eslint/explicit-module-boundary-types': OFF,
|
194
|
+
'@typescript-eslint/naming-convention': [
|
195
|
+
ERROR,
|
196
|
+
{
|
197
|
+
selector: 'typeLike',
|
198
|
+
format: ['PascalCase'],
|
199
|
+
custom: { regex: '^I[A-Z]', match: false },
|
200
|
+
},
|
201
|
+
],
|
202
|
+
'@typescript-eslint/no-confusing-void-expression': [
|
203
|
+
ERROR,
|
204
|
+
{
|
205
|
+
ignoreArrowShorthand: true,
|
206
|
+
},
|
207
|
+
],
|
208
|
+
'@typescript-eslint/no-explicit-any': OFF,
|
209
|
+
'@typescript-eslint/no-floating-promises': [
|
210
|
+
ERROR,
|
211
|
+
{
|
212
|
+
ignoreIIFE: true,
|
213
|
+
},
|
214
|
+
],
|
215
|
+
'@typescript-eslint/no-import-type-side-effects': ERROR,
|
216
|
+
'no-invalid-this': OFF,
|
217
|
+
'@typescript-eslint/no-invalid-this': ERROR,
|
218
|
+
'no-redeclare': OFF,
|
219
|
+
'@typescript-eslint/no-non-null-assertion': OFF,
|
220
|
+
'@typescript-eslint/no-redeclare': ERROR,
|
221
|
+
'no-shadow': OFF,
|
222
|
+
'@typescript-eslint/no-shadow': ERROR,
|
223
|
+
'@typescript-eslint/no-unnecessary-type-constraint': 'warn',
|
224
|
+
'@typescript-eslint/no-unused-vars': [
|
225
|
+
ERROR,
|
226
|
+
{
|
227
|
+
vars: 'all',
|
228
|
+
args: 'after-used',
|
229
|
+
argsIgnorePattern: '^_',
|
230
|
+
ignoreRestSiblings: true,
|
231
|
+
},
|
232
|
+
],
|
233
|
+
'no-use-before-define': OFF,
|
234
|
+
'@typescript-eslint/no-use-before-define': [
|
235
|
+
ERROR,
|
236
|
+
{
|
237
|
+
functions: false,
|
238
|
+
classes: true,
|
239
|
+
variables: true,
|
240
|
+
},
|
241
|
+
],
|
242
|
+
'@typescript-eslint/prefer-nullish-coalescing': OFF,
|
243
|
+
'@typescript-eslint/restrict-template-expressions': [
|
244
|
+
ERROR,
|
245
|
+
{
|
246
|
+
allowBoolean: true,
|
247
|
+
allowNullish: true,
|
248
|
+
},
|
249
|
+
],
|
250
|
+
'@typescript-eslint/require-await': OFF,
|
251
|
+
'@typescript-eslint/unified-signatures': 'warn',
|
252
|
+
},
|
253
|
+
settings: {
|
254
|
+
'import/resolver': {
|
255
|
+
typescript: {
|
256
|
+
alwaysTryTypes: true,
|
257
|
+
},
|
260
258
|
},
|
261
259
|
},
|
262
260
|
},
|
263
|
-
|
264
|
-
:
|
261
|
+
]
|
262
|
+
: []),
|
265
263
|
|
266
264
|
// This assumes test files are those which are in the test directory or have
|
267
265
|
// *.test.* in the filename. If a file doesn't match this assumption, then it
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@wkovacs64/eslint-config",
|
3
|
-
"version": "7.2.
|
3
|
+
"version": "7.2.2",
|
4
4
|
"description": "@wKovacs64 ESLint config",
|
5
5
|
"keywords": [
|
6
6
|
"eslint",
|
@@ -18,7 +18,8 @@
|
|
18
18
|
"type": "module",
|
19
19
|
"main": "index.js",
|
20
20
|
"exports": {
|
21
|
-
".": "./index.js"
|
21
|
+
".": "./index.js",
|
22
|
+
"./package.json": "./package.json"
|
22
23
|
},
|
23
24
|
"files": [
|
24
25
|
"index.js"
|
@@ -65,12 +66,12 @@
|
|
65
66
|
"@changesets/changelog-github": "0.5.0",
|
66
67
|
"@changesets/cli": "2.27.5",
|
67
68
|
"@types/eslint__js": "8.42.3",
|
68
|
-
"@types/node": "20.14.
|
69
|
+
"@types/node": "20.14.2",
|
69
70
|
"@types/react": "18.3.3",
|
70
71
|
"@types/react-dom": "18.3.0",
|
71
72
|
"@wkovacs64/prettier-config": "4.1.0",
|
72
73
|
"eslint": "8.57.0",
|
73
|
-
"prettier": "3.3.
|
74
|
+
"prettier": "3.3.1",
|
74
75
|
"typescript": "5.4.5"
|
75
76
|
}
|
76
77
|
}
|