Files
av-tools/eslint.config.mjs

45 lines
1.0 KiB
JavaScript

import js from '@eslint/js';
import globals from 'globals';
import reactHooks from 'eslint-plugin-react-hooks';
import reactRefresh from 'eslint-plugin-react-refresh';
import tseslint from 'typescript-eslint';
export default tseslint.config(
{
ignores: [
'dist',
'release',
'coverage',
'test-results',
'playwright-report',
'public/vendor/ffmpeg',
],
},
{
extends: [js.configs.recommended, ...tseslint.configs.recommended],
files: ['**/*.{ts,tsx}'],
languageOptions: {
ecmaVersion: 2023,
globals: {
...globals.browser,
...globals.worker,
},
},
plugins: {
'react-hooks': reactHooks,
'react-refresh': reactRefresh,
},
rules: {
...reactHooks.configs.recommended.rules,
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true },
],
},
},
{
files: ['scripts/**/*.mjs', 'playwright.config.ts'],
languageOptions: { globals: globals.node },
}
);