Add eslint and fix eslint errors, other minor improvements

This commit is contained in:
Szymon Nowakowski
2024-12-25 17:26:20 +01:00
parent 8c15df8e06
commit 135d54908f
21 changed files with 911 additions and 144 deletions

47
eslint.config.mjs Normal file
View File

@@ -0,0 +1,47 @@
import eslint from "@eslint/js";
import tseslint from "typescript-eslint";
import stylistic from "@stylistic/eslint-plugin";
export default tseslint.config({
extends: [
eslint.configs.recommended,
tseslint.configs.recommendedTypeChecked,
],
files: ["packages/*/src/**/*.{ts,tsx}"],
plugins: {
"@stylistic": stylistic,
},
languageOptions: {
parserOptions: {
projectService: true,
tsconfigRootDir: import.meta.dirname,
},
},
rules: {
"@stylistic/comma-dangle": ["error", "always-multiline"],
"@stylistic/member-delimiter-style": ["error", {
singleline: {
delimiter: "comma",
requireLast: false,
},
multiline: {
delimiter: "comma",
requireLast: true,
},
overrides: {
interface: {
singleline: {
delimiter: "semi",
},
multiline: {
delimiter: "semi",
},
},
},
}],
"@stylistic/semi": ["error", "always"],
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-namespace": "off",
"@typescript-eslint/no-misused-promises": ["error", { checksVoidReturn: false }],
},
});