-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy patheslint.config.mjs
More file actions
36 lines (33 loc) · 1.09 KB
/
Copy patheslint.config.mjs
File metadata and controls
36 lines (33 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import nextCoreWebVitals from 'eslint-config-next/core-web-vitals';
import reactHooks from 'eslint-plugin-react-hooks';
const eslintConfig = [
{
ignores: [
'.next/**',
'out/**',
'.open-next/**',
'coverage/**',
'src/prisma/client/**',
'cloudflare-env.d.ts',
'next-env.d.ts',
],
},
...nextCoreWebVitals,
{
plugins: { 'react-hooks': reactHooks },
rules: {
'@next/next/no-html-link-for-pages': 'off',
'react/jsx-key': 'off',
'@typescript-eslint/no-explicit-any': 'off',
// React Compiler rules (new in eslint-plugin-react-hooks 7). They flag
// real patterns worth cleaning up — effects that call a function declared
// further down, and fetch-on-mount effects that setState synchronously —
// but fixing them means reworking data loading in the admin and form
// clients. Kept as warnings so the lint gate can land now.
'react-hooks/immutability': 'warn',
'react-hooks/set-state-in-effect': 'warn',
'react-hooks/error-boundaries': 'warn',
},
},
];
export default eslintConfig;