49 lines
1.2 KiB
JavaScript
49 lines
1.2 KiB
JavaScript
import js from "@eslint/js";
|
|
import tseslint from "@typescript-eslint/eslint-plugin";
|
|
import tsparser from "@typescript-eslint/parser";
|
|
import prettierConfig from "eslint-config-prettier";
|
|
import globals from "globals";
|
|
|
|
export default [
|
|
{
|
|
ignores: ["node_modules/", "dist/", "coverage/", "*.min.js", "*.config.js", ".github/"],
|
|
},
|
|
js.configs.recommended,
|
|
{
|
|
files: ["src/**/*.ts"],
|
|
languageOptions: {
|
|
ecmaVersion: 2020,
|
|
sourceType: "module",
|
|
parser: tsparser,
|
|
parserOptions: {
|
|
project: "./tsconfig.json",
|
|
},
|
|
globals: {
|
|
...globals.node,
|
|
},
|
|
},
|
|
plugins: {
|
|
"@typescript-eslint": tseslint,
|
|
},
|
|
rules: {
|
|
...tseslint.configs.recommended.rules,
|
|
"@typescript-eslint/explicit-function-return-type": "off",
|
|
"@typescript-eslint/no-explicit-any": "off",
|
|
"@typescript-eslint/no-unused-vars": [
|
|
"error",
|
|
{
|
|
argsIgnorePattern: "^_",
|
|
},
|
|
],
|
|
"no-console": "off",
|
|
"no-constant-condition": "off",
|
|
"default-case": "error",
|
|
"prefer-const": "error",
|
|
"no-var": "error",
|
|
eqeqeq: ["error", "always"],
|
|
curly: ["error", "all"],
|
|
},
|
|
},
|
|
prettierConfig,
|
|
];
|