Convert .eslintrc.json to eslint.config.mjs

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
This commit is contained in:
Arve Knudsen 2025-03-23 12:29:03 +01:00
parent 3dfea0c2e9
commit e0ead7087e
2 changed files with 47 additions and 34 deletions

View File

@ -1,34 +0,0 @@
{
"parser": "@typescript-eslint/parser",
"extends": [
"plugin:@typescript-eslint/recommended",
"plugin:prettier/recommended"
],
"rules": {
"@typescript-eslint/explicit-function-return-type": ["off"],
"eol-last": [
"error",
"always"
],
"object-curly-spacing": [
"error",
"always"
],
"prefer-const": "warn",
"comma-dangle": [
"error",
{
"arrays": "always-multiline",
"objects": "always-multiline",
"imports": "always-multiline"
}
]
},
"plugins": [
"prettier"
],
"ignorePatterns": ["node_modules/"],
"parserOptions": {
"sourceType": "module"
}
}

View File

@ -0,0 +1,47 @@
import { fixupConfigRules } from '@eslint/compat';
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: ['**/dist', '**/.eslintrc.cjs', 'node_modules/**'],
}, ...fixupConfigRules(compat.extends(
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:prettier/recommended',
)), {
languageOptions: {
parser: tsParser,
},
rules: {
'@typescript-eslint/explicit-function-return-type': ['off'],
'eol-last': [
'error',
'always',
],
'object-curly-spacing': [
'error',
'always',
],
'prefer-const': 'warn',
'comma-dangle': [
'error',
{
'arrays': 'always-multiline',
'objects': 'always-multiline',
'imports': 'always-multiline',
},
],
},
},
];