InvestmentsControl/server/eslint.config.ts

78 lines
2.1 KiB
TypeScript

import config from 'eslint-config-ksv741';
export default [
...config,
{
rules: {
'import/no-extraneous-dependencies': ['error', {
devDependencies: ['eslint.config.ts', 'rsbuild.config.ts'],
}],
'import/no-anonymous-default-export': 'off',
'func-style': ['error', 'declaration', { allowArrowFunctions: true }],
'no-void': ['error', { allowAsStatement: true }],
'@typescript-eslint/no-extraneous-class': 'off',
'@typescript-eslint/parameter-properties': 'off',
'@typescript-eslint/class-methods-use-this': 'off',
'@typescript-eslint/strict-boolean-expressions': 'off',
'import/order': [
'error', {
pathGroups: [
{
pattern: '__spec__/**',
group: 'builtin',
position: 'before',
},
{
pattern: 'apps/**',
group: 'internal',
position: 'after',
},
{
pattern: 'pages/**',
group: 'internal',
position: 'after',
},
{
pattern: 'widgets/**',
group: 'internal',
position: 'after',
},
{
pattern: 'features/**',
group: 'internal',
position: 'after',
},
{
pattern: 'entities/**',
group: 'internal',
position: 'after',
},
{
pattern: 'shared/**',
group: 'internal',
position: 'after',
},
],
distinctGroup: true,
groups: [
'builtin',
'external',
'internal',
'parent',
'sibling',
'object',
'index',
'type',
],
'newlines-between': 'always',
alphabetize: {
order: 'asc',
caseInsensitive: true,
},
},
],
'@typescript-eslint/prefer-nullish-coalescing': 'off',
},
},
];