Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 4 additions & 14 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,36 +1,26 @@
// See: https://eslint.org/docs/latest/use/configure/configuration-files

import { fixupPluginRules } from '@eslint/compat'
import { FlatCompat } from '@eslint/eslintrc'
import js from '@eslint/js'
import typescriptEslint from '@typescript-eslint/eslint-plugin'
import tsParser from '@typescript-eslint/parser'
import _import from 'eslint-plugin-import'
import jest from 'eslint-plugin-jest'
import prettier from 'eslint-plugin-prettier'
import prettierConfig from 'eslint-config-prettier'
import globals from 'globals'
import path from 'node:path'
import { fileURLToPath } from 'node:url'

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: ['**/coverage', '**/dist', '**/linter', '**/node_modules']
},
...compat.extends(
'eslint:recommended',
'plugin:@typescript-eslint/eslint-recommended',
'plugin:@typescript-eslint/recommended',
'plugin:jest/recommended',
'plugin:prettier/recommended'
),
...typescriptEslint.configs['flat/recommended'],
jest.configs['flat/recommended'],
prettierConfig,
Comment on lines +21 to +23
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The migration from compat.extends() to native flat configs is the correct approach for ESLint 10. However, verify that:

  1. typescriptEslint.configs['flat/recommended'] provides equivalent coverage to the previous 'plugin:@typescript-eslint/eslint-recommended' and 'plugin:@typescript-eslint/recommended'
  2. jest.configs['flat/recommended'] is equivalent to 'plugin:jest/recommended'
  3. The prettier configuration order is correct - prettierConfig (eslint-config-prettier) should come after other configs to properly disable conflicting rules

The spread operator on line 21 for typescriptEslint configs is correct, but line 22 is missing the spread operator for jest configs, which may not properly apply all the configuration objects from the recommended preset.

Copilot uses AI. Check for mistakes.
{
plugins: {
import: fixupPluginRules(_import),
Expand Down
Loading
Loading