@jakubmazanec/eslint-config 4.1.2 → 4.1.3-next.1ccffc71
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/README.md +4 -1
- package/build/configs/main.js +0 -2
- package/build/configs/main.js.map +2 -2
- package/package.json +10 -10
- package/source/configs/main.ts +1 -3
package/README.md
CHANGED
|
@@ -14,10 +14,13 @@ ESLint config for TypeScript projects.
|
|
|
14
14
|
npm install @jakubmazanec/eslint-config
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
+
<!-- prerequisites -->
|
|
18
|
+
|
|
17
19
|
#### Prerequisites
|
|
18
20
|
|
|
19
|
-
- Node.js
|
|
21
|
+
- Node.js 22 or later
|
|
20
22
|
- TypeScript 5 or later
|
|
23
|
+
<!-- prerequisites -->
|
|
21
24
|
|
|
22
25
|
## Usage
|
|
23
26
|
|
package/build/configs/main.js
CHANGED
|
@@ -121,8 +121,6 @@ export const main = [
|
|
|
121
121
|
parser: typescriptEslintParser,
|
|
122
122
|
globals: {
|
|
123
123
|
...globals.node,
|
|
124
|
-
// TODO: fix somehow
|
|
125
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access -- plugin has bad types
|
|
126
124
|
...vitestEslintPlugin.environments.env.globals,
|
|
127
125
|
jsdom: "readonly"
|
|
128
126
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../source/configs/main.ts"],
|
|
4
|
-
"sourcesContent": ["import commentsEslintPlugin from '@eslint-community/eslint-plugin-eslint-comments';\nimport stylisticEslintPlugin from '@stylistic/eslint-plugin';\nimport typescriptEslintPlugin from '@typescript-eslint/eslint-plugin';\nimport typescriptEslintParser from '@typescript-eslint/parser';\nimport vitestEslintPlugin from '@vitest/eslint-plugin';\nimport {type default as eslint, type ESLint} from 'eslint';\nimport importEslintPlugin from 'eslint-plugin-import';\nimport a11yEslintPlugin from 'eslint-plugin-jsx-a11y';\nimport perfectionistEslintPlugin from 'eslint-plugin-perfectionist';\nimport promiseEslintPlugin from 'eslint-plugin-promise';\nimport reactEslintPlugin from 'eslint-plugin-react';\nimport reactCompilerEslintPlugin from 'eslint-plugin-react-compiler';\nimport reactHooksEslintPlugin from 'eslint-plugin-react-hooks';\nimport securityEslintPlugin from 'eslint-plugin-security';\nimport testingLibraryEslintPlugin from 'eslint-plugin-testing-library';\nimport unicornEslintPlugin from 'eslint-plugin-unicorn';\nimport globals from 'globals';\n\nimport {\n ASSET_EXTENSIONS_REGEXP,\n CSS_EXTENSIONS_REGEXP,\n GRAPHQL_EXTENSIONS_REGEXP,\n JS_AND_TS_EXTENSIONS,\n JS_AND_TS_EXTENSIONS_GLOB_PART,\n TS_EXTENSIONS,\n TS_EXTENSIONS_GLOB_PART,\n} from '../constants.js';\nimport {\n a11yRules,\n commentsRules,\n eslintRules,\n importRules,\n perfectionistRules,\n promiseRules,\n reactCompilerRules,\n reactHooksRules,\n reactRules,\n securityRules,\n stylisticRules,\n testingLibraryRules,\n typescriptRules,\n unicornRules,\n vitestRules,\n} from '../rules.js';\n\nexport const main: eslint.Linter.Config[] = [\n {\n linterOptions: {\n reportUnusedDisableDirectives: 'error',\n },\n },\n {\n files: [`**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`],\n\n languageOptions: {\n ecmaVersion: 2024,\n parserOptions: {\n ecmaFeatures: {jsx: true},\n },\n globals: {\n ...globals.builtin,\n ...globals.browser,\n ...globals.es2024,\n ...globals.serviceworker,\n ...globals.worker,\n },\n },\n // TODO: fix the type essertions\n plugins: {\n '@stylistic/js': stylisticEslintPlugin as ESLint.Plugin,\n 'eslint-comments': commentsEslintPlugin as ESLint.Plugin,\n import: importEslintPlugin as ESLint.Plugin,\n 'jsx-a11y': a11yEslintPlugin as ESLint.Plugin, // type assertions needed because of `exactOptionalPropertyTypes: true`\n promise: promiseEslintPlugin as ESLint.Plugin,\n react: reactEslintPlugin as unknown as ESLint.Plugin,\n 'react-hooks': reactHooksEslintPlugin as ESLint.Plugin,\n unicorn: unicornEslintPlugin as ESLint.Plugin, // type assertions needed because of `exactOptionalPropertyTypes: true`\n security: securityEslintPlugin as ESLint.Plugin,\n 'react-compiler': reactCompilerEslintPlugin as ESLint.Plugin,\n perfectionist: perfectionistEslintPlugin as unknown as ESLint.Plugin,\n },\n\n settings: {\n 'import/ignore': [\n 'node_modules',\n String.raw`\\.json$`,\n ASSET_EXTENSIONS_REGEXP.source,\n CSS_EXTENSIONS_REGEXP.source,\n GRAPHQL_EXTENSIONS_REGEXP.source,\n ],\n react: {\n version: 'detect',\n },\n propWrapperFunctions: ['forbidExtraProps', 'exact', 'Object.freeze'],\n 'jsx-a11y': {\n polymorphicPropName: 'as',\n components: {\n Button: 'button',\n },\n },\n perfectionist: {\n locales: ['en'],\n },\n },\n\n rules: {\n ...a11yRules,\n ...commentsRules,\n ...eslintRules,\n ...importRules,\n ...perfectionistRules,\n ...promiseRules,\n ...reactCompilerRules,\n ...reactHooksRules,\n ...reactRules,\n ...securityRules,\n ...stylisticRules,\n ...unicornRules,\n },\n },\n {\n files: [`**/*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`],\n\n languageOptions: {\n parser: typescriptEslintParser,\n globals: {\n ...globals.node,\n
|
|
5
|
-
"mappings": ";AAAA,OAAO,0BAA0B;AACjC,OAAO,2BAA2B;AAClC,OAAO,4BAA4B;AACnC,OAAO,4BAA4B;AACnC,OAAO,wBAAwB;AAE/B,OAAO,wBAAwB;AAC/B,OAAO,sBAAsB;AAC7B,OAAO,+BAA+B;AACtC,OAAO,yBAAyB;AAChC,OAAO,uBAAuB;AAC9B,OAAO,+BAA+B;AACtC,OAAO,4BAA4B;AACnC,OAAO,0BAA0B;AACjC,OAAO,gCAAgC;AACvC,OAAO,yBAAyB;AAChC,OAAO,aAAa;AAEpB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEA,aAAM,OAA+B;AAAA,EAC1C;AAAA,IACE,eAAe;AAAA,MACb,+BAA+B;AAAA,IACjC;AAAA,EACF;AAAA,EACA;AAAA,IACE,OAAO,CAAC,QAAQ,8BAA8B,EAAE;AAAA,IAEhD,iBAAiB;AAAA,MACf,aAAa;AAAA,MACb,eAAe;AAAA,QACb,cAAc,EAAC,KAAK,KAAI;AAAA,MAC1B;AAAA,MACA,SAAS;AAAA,QACP,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,MACb;AAAA,IACF;AAAA;AAAA,IAEA,SAAS;AAAA,MACP,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,MACnB,QAAQ;AAAA,MACR,YAAY;AAAA;AAAA,MACZ,SAAS;AAAA,MACT,OAAO;AAAA,MACP,eAAe;AAAA,MACf,SAAS;AAAA;AAAA,MACT,UAAU;AAAA,MACV,kBAAkB;AAAA,MAClB,eAAe;AAAA,IACjB;AAAA,IAEA,UAAU;AAAA,MACR,iBAAiB;AAAA,QACf;AAAA,QACA,OAAO;AAAA,QACP,wBAAwB;AAAA,QACxB,sBAAsB;AAAA,QACtB,0BAA0B;AAAA,MAC5B;AAAA,MACA,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,MACA,sBAAsB,CAAC,oBAAoB,SAAS,eAAe;AAAA,MACnE,YAAY;AAAA,QACV,qBAAqB;AAAA,QACrB,YAAY;AAAA,UACV,QAAQ;AAAA,QACV;AAAA,MACF;AAAA,MACA,eAAe;AAAA,QACb,SAAS,CAAC,IAAI;AAAA,MAChB;AAAA,IACF;AAAA,IAEA,OAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,IACL;AAAA,EACF;AAAA,EACA;AAAA,IACE,OAAO,CAAC,aAAa,8BAA8B,EAAE;AAAA,IAErD,iBAAiB;AAAA,MACf,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,GAAG,QAAQ;AAAA
|
|
4
|
+
"sourcesContent": ["import commentsEslintPlugin from '@eslint-community/eslint-plugin-eslint-comments';\nimport stylisticEslintPlugin from '@stylistic/eslint-plugin';\nimport typescriptEslintPlugin from '@typescript-eslint/eslint-plugin';\nimport typescriptEslintParser from '@typescript-eslint/parser';\nimport vitestEslintPlugin from '@vitest/eslint-plugin';\nimport {type default as eslint, type ESLint} from 'eslint';\nimport importEslintPlugin from 'eslint-plugin-import';\nimport a11yEslintPlugin from 'eslint-plugin-jsx-a11y';\nimport perfectionistEslintPlugin from 'eslint-plugin-perfectionist';\nimport promiseEslintPlugin from 'eslint-plugin-promise';\nimport reactEslintPlugin from 'eslint-plugin-react';\nimport reactCompilerEslintPlugin from 'eslint-plugin-react-compiler';\nimport reactHooksEslintPlugin from 'eslint-plugin-react-hooks';\nimport securityEslintPlugin from 'eslint-plugin-security';\nimport testingLibraryEslintPlugin from 'eslint-plugin-testing-library';\nimport unicornEslintPlugin from 'eslint-plugin-unicorn';\nimport globals from 'globals';\n\nimport {\n ASSET_EXTENSIONS_REGEXP,\n CSS_EXTENSIONS_REGEXP,\n GRAPHQL_EXTENSIONS_REGEXP,\n JS_AND_TS_EXTENSIONS,\n JS_AND_TS_EXTENSIONS_GLOB_PART,\n TS_EXTENSIONS,\n TS_EXTENSIONS_GLOB_PART,\n} from '../constants.js';\nimport {\n a11yRules,\n commentsRules,\n eslintRules,\n importRules,\n perfectionistRules,\n promiseRules,\n reactCompilerRules,\n reactHooksRules,\n reactRules,\n securityRules,\n stylisticRules,\n testingLibraryRules,\n typescriptRules,\n unicornRules,\n vitestRules,\n} from '../rules.js';\n\nexport const main: eslint.Linter.Config[] = [\n {\n linterOptions: {\n reportUnusedDisableDirectives: 'error',\n },\n },\n {\n files: [`**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`],\n\n languageOptions: {\n ecmaVersion: 2024,\n parserOptions: {\n ecmaFeatures: {jsx: true},\n },\n globals: {\n ...globals.builtin,\n ...globals.browser,\n ...globals.es2024,\n ...globals.serviceworker,\n ...globals.worker,\n },\n },\n // TODO: fix the type essertions\n plugins: {\n '@stylistic/js': stylisticEslintPlugin as ESLint.Plugin,\n 'eslint-comments': commentsEslintPlugin as ESLint.Plugin,\n import: importEslintPlugin as ESLint.Plugin,\n 'jsx-a11y': a11yEslintPlugin as ESLint.Plugin, // type assertions needed because of `exactOptionalPropertyTypes: true`\n promise: promiseEslintPlugin as ESLint.Plugin,\n react: reactEslintPlugin as unknown as ESLint.Plugin,\n 'react-hooks': reactHooksEslintPlugin as ESLint.Plugin,\n unicorn: unicornEslintPlugin as ESLint.Plugin, // type assertions needed because of `exactOptionalPropertyTypes: true`\n security: securityEslintPlugin as ESLint.Plugin,\n 'react-compiler': reactCompilerEslintPlugin as ESLint.Plugin,\n perfectionist: perfectionistEslintPlugin as unknown as ESLint.Plugin,\n },\n\n settings: {\n 'import/ignore': [\n 'node_modules',\n String.raw`\\.json$`,\n ASSET_EXTENSIONS_REGEXP.source,\n CSS_EXTENSIONS_REGEXP.source,\n GRAPHQL_EXTENSIONS_REGEXP.source,\n ],\n react: {\n version: 'detect',\n },\n propWrapperFunctions: ['forbidExtraProps', 'exact', 'Object.freeze'],\n 'jsx-a11y': {\n polymorphicPropName: 'as',\n components: {\n Button: 'button',\n },\n },\n perfectionist: {\n locales: ['en'],\n },\n },\n\n rules: {\n ...a11yRules,\n ...commentsRules,\n ...eslintRules,\n ...importRules,\n ...perfectionistRules,\n ...promiseRules,\n ...reactCompilerRules,\n ...reactHooksRules,\n ...reactRules,\n ...securityRules,\n ...stylisticRules,\n ...unicornRules,\n },\n },\n {\n files: [`**/*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`],\n\n languageOptions: {\n parser: typescriptEslintParser,\n globals: {\n ...globals.node,\n ...vitestEslintPlugin.environments.env.globals,\n jsdom: 'readonly',\n },\n },\n // TODO: fix the type essertions\n plugins: {\n vitest: vitestEslintPlugin as unknown as ESLint.Plugin,\n 'testing-library': testingLibraryEslintPlugin as ESLint.Plugin,\n },\n settings: {\n vitest: {\n typecheck: true,\n },\n 'testing-library/custom-queries': 'off',\n 'testing-library/custom-renders': 'off',\n 'testing-library/utils-module': 'off',\n },\n rules: {\n ...vitestRules,\n ...testingLibraryRules,\n\n // override ESLint rules\n 'max-classes-per-file': 'off', // enforce a maximum number of classes per file\n\n // override eslint-plugin-node rules\n 'node/no-sync': 'off', // disallow synchronous methods\n },\n },\n {\n files: [`**/*.${TS_EXTENSIONS_GLOB_PART}`],\n\n languageOptions: {\n parser: typescriptEslintParser,\n parserOptions: {\n project: 'tsconfig.typecheck.json',\n },\n },\n // TODO: fix the type essertion\n plugins: {\n '@typescript-eslint': typescriptEslintPlugin as unknown as ESLint.Plugin,\n },\n settings: {\n node: {\n tryExtensions: JS_AND_TS_EXTENSIONS,\n },\n 'import/resolver': {\n typescript: {},\n },\n 'import/parsers': {\n '@typescript-eslint/parser': TS_EXTENSIONS,\n },\n },\n rules: {\n ...typescriptRules,\n\n // override eslint-plugin-import rules\n 'import/no-extraneous-dependencies': [\n 'error',\n {\n devDependencies: [\n `**/*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `**/*.tests.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `**/*.stories.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `./.storybook/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `dbschema/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `stories/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `tests/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `tools/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `./*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n ],\n optionalDependencies: false,\n },\n ],\n },\n },\n {\n files: [`**/*.test.${TS_EXTENSIONS_GLOB_PART}`],\n\n rules: {\n // override @typescript-eslint/eslint-plugin rules\n '@typescript-eslint/ban-ts-comment': 'off', // bans // @ts-<directive> comments from being used\n '@typescript-eslint/no-floating-promises': 'off', // requires Promise-like values to be handled appropriately\n },\n },\n];\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jakubmazanec/eslint-config",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.3-next.1ccffc71",
|
|
4
4
|
"description": "ESLint config for TypeScript projects.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"source"
|
|
18
18
|
],
|
|
19
19
|
"scripts": {
|
|
20
|
-
"build": "del-cli build tsconfig.tsbuildinfo && esbuild \"source/**/*\" --platform=node --target=node22.
|
|
20
|
+
"build": "del-cli build tsconfig.tsbuildinfo && esbuild \"source/**/*\" --platform=node --target=node22.13 --outdir=build --sourcemap && tsc",
|
|
21
21
|
"check-rules": "tsx tools/check-rules/main.ts",
|
|
22
22
|
"clean": "del-cli coverage build *.tsbuildinfo",
|
|
23
23
|
"format": "prettier . --write --ignore-unknown",
|
|
@@ -27,16 +27,16 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.4.1 ",
|
|
29
29
|
"@stylistic/eslint-plugin": "^2.12.1",
|
|
30
|
-
"@typescript-eslint/eslint-plugin": "^8.19.
|
|
31
|
-
"@typescript-eslint/parser": "^8.19.
|
|
32
|
-
"@vitest/eslint-plugin": "^1.1.
|
|
30
|
+
"@typescript-eslint/eslint-plugin": "^8.19.1",
|
|
31
|
+
"@typescript-eslint/parser": "^8.19.1",
|
|
32
|
+
"@vitest/eslint-plugin": "^1.1.25",
|
|
33
33
|
"confusing-browser-globals": "^1.0.11",
|
|
34
34
|
"eslint-config-prettier": "^9.1.0",
|
|
35
35
|
"eslint-import-resolver-typescript": "^3.7.0",
|
|
36
36
|
"eslint-plugin-import": "^2.31.0",
|
|
37
37
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
38
38
|
"eslint-plugin-n": "^17.15.1",
|
|
39
|
-
"eslint-plugin-perfectionist": "^4.
|
|
39
|
+
"eslint-plugin-perfectionist": "^4.6.0",
|
|
40
40
|
"eslint-plugin-prettier": "^5.2.1",
|
|
41
41
|
"eslint-plugin-promise": "^7.2.1",
|
|
42
42
|
"eslint-plugin-react": "^7.37.3",
|
|
@@ -51,14 +51,14 @@
|
|
|
51
51
|
"@types/confusing-browser-globals": "^1.0.3",
|
|
52
52
|
"@types/eslint-config-prettier": "^6.11.3",
|
|
53
53
|
"@types/eslint-plugin-jsx-a11y": "^6.10.0",
|
|
54
|
-
"@types/node": "^22.10.
|
|
54
|
+
"@types/node": "^22.10.5",
|
|
55
55
|
"del-cli": "^6.0.0",
|
|
56
56
|
"esbuild": "^0.24.2",
|
|
57
|
-
"eslint": "^9.
|
|
57
|
+
"eslint": "^9.18.0",
|
|
58
58
|
"prettier": "^3.4.2",
|
|
59
59
|
"prettier-plugin-packagejson": "^2.5.6",
|
|
60
60
|
"tsx": "^4.19.2",
|
|
61
|
-
"typescript": "^5.7.
|
|
61
|
+
"typescript": "^5.7.3"
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
64
|
"eslint": "^9.0.0",
|
|
@@ -72,6 +72,6 @@
|
|
|
72
72
|
},
|
|
73
73
|
"packageManager": "npm@10.9.0",
|
|
74
74
|
"engines": {
|
|
75
|
-
"node": "^22.
|
|
75
|
+
"node": "^22.13.0"
|
|
76
76
|
}
|
|
77
77
|
}
|
package/source/configs/main.ts
CHANGED
|
@@ -125,9 +125,7 @@ export const main: eslint.Linter.Config[] = [
|
|
|
125
125
|
parser: typescriptEslintParser,
|
|
126
126
|
globals: {
|
|
127
127
|
...globals.node,
|
|
128
|
-
|
|
129
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access -- plugin has bad types
|
|
130
|
-
...(vitestEslintPlugin.environments!.env.globals as object),
|
|
128
|
+
...vitestEslintPlugin.environments.env.globals,
|
|
131
129
|
jsdom: 'readonly',
|
|
132
130
|
},
|
|
133
131
|
},
|