Skip to content

Commit 244e890

Browse files
chore: setup stricter linting (#3533)
Adds these linting packages: - eslint-plugin-import: for better import linting - eslint-plugin-simple-import-sort: for automatic import sorting - eslint-plugin-wc: for linting web components - eslint-plugin-lit: for linting lit components
1 parent 5790445 commit 244e890

File tree

106 files changed

+2072
-389
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

106 files changed

+2072
-389
lines changed

libs/eslint-plugin-mte/index.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { Linter } from 'eslint';
1+
import type { config } from 'typescript-eslint';
22

3-
declare const configs: Linter.FlatConfig[];
3+
declare const configs: ReturnType<typeof config>;
44
export default configs;

libs/eslint-plugin-mte/index.js

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,43 @@
11
import eslint from '@eslint/js';
22
import eslintConfigPrettier from 'eslint-config-prettier';
3-
import tseslint from 'typescript-eslint';
3+
import importX from 'eslint-plugin-import-x';
4+
import simpleImportSort from 'eslint-plugin-simple-import-sort';
45
import globals from 'globals';
6+
import tseslint from 'typescript-eslint';
57

6-
/**
7-
* @type {import('eslint').Linter.FlatConfig[]}
8-
*/
9-
export default [
8+
export default tseslint.config(
109
eslint.configs.recommended,
1110
tseslint.configs.eslintRecommended,
1211
...tseslint.configs.recommendedTypeChecked,
1312
...tseslint.configs.stylisticTypeChecked,
1413
eslintConfigPrettier,
14+
importX.flatConfigs.recommended,
15+
importX.flatConfigs.typescript,
1516
{
1617
languageOptions: {
1718
parserOptions: {
1819
project: ['./tsconfig.json', './{src,test}/tsconfig.json', './test/{unit,integration}/tsconfig.json', '../../tsconfig.node.json'],
1920
},
2021
},
22+
plugins: {
23+
'simple-import-sort': simpleImportSort,
24+
},
2125
linterOptions: {
2226
reportUnusedDisableDirectives: 'error',
2327
},
2428
rules: {
25-
eqeqeq: 'error',
29+
'@typescript-eslint/consistent-type-imports': 'error',
2630
'@typescript-eslint/explicit-function-return-type': 'off',
2731
'@typescript-eslint/explicit-module-boundary-types': 'off',
2832
'@typescript-eslint/no-unsafe-assignment': 'off',
29-
'@typescript-eslint/consistent-type-imports': 'error',
33+
34+
'import-x/newline-after-import': 'error',
35+
'import-x/no-deprecated': 'error',
36+
37+
'simple-import-sort/exports': 'error',
38+
'simple-import-sort/imports': 'error',
39+
40+
eqeqeq: 'error',
3041
},
3142
},
3243
{
@@ -63,4 +74,4 @@ export default [
6374
'playwright-report',
6475
],
6576
},
66-
];
77+
);

libs/eslint-plugin-mte/package.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,12 @@
2222
"@eslint/js": "^9.0.0",
2323
"eslint": "^9.0.0",
2424
"eslint-config-prettier": "~9.1.0",
25-
"eslint-plugin-lit": "^1.10.1",
26-
"eslint-plugin-wc": "^2.0.4",
27-
"typescript-eslint": "8.15.0"
25+
"eslint-import-resolver-typescript": "^3.6.3",
26+
"eslint-plugin-import-x": "^4.4.3",
27+
"eslint-plugin-lit": "^1.15.0",
28+
"eslint-plugin-simple-import-sort": "^12.1.1",
29+
"eslint-plugin-wc": "^2.2.0",
30+
"typescript-eslint": "8.16.0"
2831
},
2932
"devDependencies": {}
3033
}

0 commit comments

Comments
 (0)