diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 6e358eef..00000000 --- a/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -dist -.eslintrc.cjs \ No newline at end of file diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index 5e08f8c9..00000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,23 +0,0 @@ -// @ts-check -const { defineConfig } = require('eslint-define-config'); - -module.exports = defineConfig({ - root: true, - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - 'prettier', - ], - parser: '@typescript-eslint/parser', - plugins: ['@typescript-eslint'], - rules: { - '@typescript-eslint/ban-ts-comment': 'off', - '@typescript-eslint/no-empty-function': 'off', - '@typescript-eslint/no-unused-vars': 'off', - '@typescript-eslint/no-non-null-assertion': 'off', - '@typescript-eslint/no-explicit-any': 'off', - 'no-empty': 'off', - 'prefer-const': 'off', - quotes: ['error', 'single', { allowTemplateLiterals: false }], - }, -}); diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 00000000..51deb13d --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,38 @@ +import { FlatCompat } from '@eslint/eslintrc'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import typescriptEslint from '@typescript-eslint/eslint-plugin'; +import typescriptEslintParser from '@typescript-eslint/parser'; +import js from '@eslint/js'; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const compat = new FlatCompat({ + baseDirectory: __dirname, +}); + +export default [ + js.configs.recommended, + ...compat.extends('plugin:@typescript-eslint/recommended'), + ...compat.extends('prettier'), + { + plugins: { + typescriptEslint: typescriptEslint, + }, + languageOptions: { + parser: typescriptEslintParser, + }, + rules: { + '@typescript-eslint/ban-ts-comment': 'off', + '@typescript-eslint/no-empty-function': 'off', + '@typescript-eslint/no-unused-vars': 'off', + '@typescript-eslint/no-non-null-assertion': 'off', + '@typescript-eslint/no-explicit-any': 'off', + 'no-empty': 'off', + 'prefer-const': 'off', + quotes: ['error', 'single', { allowTemplateLiterals: false }], + }, + ignores: ['dist/*'], + }, +];