/ eslint.config.js
eslint.config.js
 1  //  @ts-check
 2  
 3  import { tanstackConfig } from '@tanstack/eslint-config'
 4  import sonarjs from 'eslint-plugin-sonarjs'
 5  import unicorn from 'eslint-plugin-unicorn'
 6  
 7  export default [
 8    ...tanstackConfig,
 9    {
10      plugins: {
11        sonarjs,
12        unicorn,
13      },
14      rules: {
15        'import/no-cycle': 'off',
16        'import/order': 'off',
17        'sort-imports': 'off',
18        '@typescript-eslint/array-type': 'off',
19        '@typescript-eslint/require-await': 'off',
20        'pnpm/json-enforce-catalog': 'off',
21        'max-lines': [
22          'warn',
23          { max: 900, skipBlankLines: true, skipComments: true },
24        ],
25        'sonarjs/cognitive-complexity': ['warn', 20],
26        'sonarjs/no-identical-functions': 'warn',
27        'unicorn/filename-case': [
28          'warn',
29          {
30            cases: { kebabCase: true, pascalCase: true },
31          },
32        ],
33        'unicorn/prefer-array-find': 'warn',
34      },
35    },
36    {
37      ignores: ['eslint.config.js', 'prettier.config.js', '.exports/**'],
38    },
39  ]