Skip to content

Commit

Permalink
chore: Migrating from .eslintrc.json to eslint.config.mjs to meet new…
Browse files Browse the repository at this point in the history
… eslint requirements
  • Loading branch information
yegor-pelykh committed Jun 28, 2024
1 parent 94baf67 commit ee0cf90
Show file tree
Hide file tree
Showing 3 changed files with 97 additions and 186 deletions.
186 changes: 0 additions & 186 deletions .eslintrc.json

This file was deleted.

96 changes: 96 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
import typescriptEslint from "@typescript-eslint/eslint-plugin";
import globals from "globals";
import tsParser from "@typescript-eslint/parser";
import path from "node:path";
import { fileURLToPath } from "node:url";
import js from "@eslint/js";
import { FlatCompat } from "@eslint/eslintrc";

const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all
});

export default [{
ignores: ["**/*.js", "**/*.d.ts", "**/lib/"],
}, ...compat.extends("prettier", "eslint:recommended", "plugin:@typescript-eslint/recommended"), {
plugins: {
"@typescript-eslint": typescriptEslint,
},

languageOptions: {
globals: {
...globals.browser,
},

parser: tsParser,
ecmaVersion: "latest",
sourceType: "module",

parserOptions: {
project: ["./tsconfig.json"],
},
},

rules: {
"consistent-return": ["warn"],
"consistent-this": ["warn", "that"],
"dot-notation": ["warn"],
eqeqeq: ["warn"],
"grouped-accessor-pairs": ["warn"],
"init-declarations": ["warn", "always"],
"linebreak-style": ["warn", "unix"],
"max-classes-per-file": ["warn", 1],
"new-cap": ["warn"],
"no-alert": ["warn"],
"no-case-declarations": ["warn"],

"no-constant-condition": ["error", {
checkLoops: false,
}],

"no-duplicate-imports": ["warn"],
"no-eq-null": ["warn"],
"no-eval": ["warn"],
"no-extra-semi": ["warn"],
"no-global-assign": ["warn"],
"no-implicit-coercion": ["warn"],
"no-implicit-globals": ["warn"],
"no-implied-eval": ["warn"],
"no-inline-comments": ["warn"],
"no-invalid-this": ["warn"],
"no-multi-assign": ["warn"],
"no-new": ["warn"],
"no-new-func": ["warn"],
"no-new-object": ["warn"],
"no-new-wrappers": ["warn"],
"no-param-reassign": ["warn"],
"no-redeclare": ["warn"],
"no-sequences": ["warn"],
"no-throw-literal": ["warn"],
"no-useless-call": ["warn"],
"no-useless-constructor": ["warn"],
"no-useless-rename": ["warn"],
"no-var": ["warn"],
"one-var": ["warn", "never"],
"operator-assignment": ["warn", "always"],
"prefer-const": ["warn"],
"prefer-promise-reject-errors": ["warn"],
"prefer-rest-params": ["warn"],
"prefer-spread": ["warn"],
"prefer-template": ["warn"],
"require-await": ["warn"],
semi: ["warn", "always"],
"space-before-function-paren": ["warn", "never"],

"@typescript-eslint/no-empty-function": ["error", {
allow: ["methods", "setters"],
}],

"@typescript-eslint/no-non-null-assertion": "off",
"@typescript-eslint/no-unused-vars": "off",
},
}];
1 change: 1 addition & 0 deletions tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
],
},
"include": [
"eslint.config.mjs",
"src/**/*.ts",
"test/**/*.ts"
]
Expand Down

0 comments on commit ee0cf90

Please sign in to comment.