diff --git a/eslint.config.mjs b/eslint.config.mjs index b6d59ca58d..8f9eab0e77 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -1,56 +1,56 @@ -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 stylistic from '@stylistic/eslint-plugin' -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 [ - ...compat.extends('eslint:recommended', 'plugin:@typescript-eslint/recommended'), - { - plugins: { - '@typescript-eslint': typescriptEslint, - '@stylistic': stylistic - }, - - languageOptions: { - globals: { - ...globals.browser - }, - - parser: tsParser, - ecmaVersion: 'latest', - sourceType: 'module' - }, - - rules: { - 'no-case-declarations': 'off', - - indent: [ - 'error', - 2, - { - SwitchCase: 1 - } - ], - - '@stylistic/linebreak-style': ['error', 'windows'], - quotes: ['error', 'single'], - semi: ['error', 'never'] - } - }, - - { - ignores: ['tests/__data__/**'] - } -] +import typescriptEslint from '@typescript-eslint/eslint-plugin' +import stylistic from '@stylistic/eslint-plugin' +import tsParser from '@typescript-eslint/parser' +import { FlatCompat } from '@eslint/eslintrc' +import { fileURLToPath } from 'node:url' +import globals from 'globals' +import path from 'node:path' +import js from '@eslint/js' + +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 [ + ...compat.extends('eslint:recommended', 'plugin:@typescript-eslint/recommended'), + { + plugins: { + '@typescript-eslint': typescriptEslint, + '@stylistic': stylistic + }, + + languageOptions: { + globals: { + ...globals.browser + }, + + parser: tsParser, + ecmaVersion: 'latest', + sourceType: 'module' + }, + + rules: { + 'no-case-declarations': 'off', + + indent: [ + 'error', + 2, + { + SwitchCase: 1 + } + ], + + '@stylistic/linebreak-style': ['error', 'windows'], + quotes: ['error', 'single'], + semi: ['error', 'never'] + } + }, + + { + ignores: ['tests/__data__/**'] + } +]