2025-07-28 22:28:48 +02:00
|
|
|
import js from '@eslint/js'
|
2026-04-18 14:55:22 +02:00
|
|
|
import globals from 'globals'
|
|
|
|
|
import tseslint from 'typescript-eslint'
|
|
|
|
|
import stylistic from '@stylistic/eslint-plugin'
|
|
|
|
|
import prettier from 'eslint-config-prettier'
|
2025-07-28 22:28:48 +02:00
|
|
|
|
|
|
|
|
export default [
|
|
|
|
|
{
|
2026-04-18 14:55:22 +02:00
|
|
|
ignores: ['tests/__data__/']
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
js.configs.recommended,
|
|
|
|
|
...tseslint.configs.strict,
|
|
|
|
|
...tseslint.configs.stylistic,
|
|
|
|
|
prettier,
|
2025-07-28 22:28:48 +02:00
|
|
|
|
2026-04-18 14:55:22 +02:00
|
|
|
{
|
|
|
|
|
files: ['**/*.{js,mjs,cjs,ts}'],
|
2025-07-28 22:28:48 +02:00
|
|
|
languageOptions: {
|
2026-04-18 14:55:22 +02:00
|
|
|
parser: tseslint.parser,
|
|
|
|
|
ecmaVersion: 'latest',
|
|
|
|
|
sourceType: 'module',
|
2025-07-28 22:28:48 +02:00
|
|
|
globals: {
|
|
|
|
|
...globals.node,
|
|
|
|
|
...globals.jest
|
2026-04-18 14:55:22 +02:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
plugins: {
|
|
|
|
|
'@typescript-eslint': tseslint.plugin,
|
|
|
|
|
'@stylistic': stylistic
|
2025-07-28 22:28:48 +02:00
|
|
|
},
|
|
|
|
|
rules: {
|
|
|
|
|
'@typescript-eslint/no-require-imports': 'off',
|
|
|
|
|
'@typescript-eslint/no-var-requires': 'off',
|
|
|
|
|
'no-case-declarations': 'off',
|
|
|
|
|
'@stylistic/linebreak-style': ['error', 'windows'],
|
2026-04-18 14:55:22 +02:00
|
|
|
quotes: ['error', 'single', { avoidEscape: true }],
|
2025-07-28 22:28:48 +02:00
|
|
|
semi: ['error', 'never']
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
]
|