2022-02-03 18:06:44 +02:00
|
|
|
module.exports = {
|
|
|
|
parser: '@typescript-eslint/parser',
|
|
|
|
parserOptions: {
|
|
|
|
project: 'tsconfig.json',
|
|
|
|
sourceType: 'module',
|
|
|
|
tsconfigRootDir: __dirname,
|
|
|
|
},
|
|
|
|
plugins: ['@typescript-eslint/eslint-plugin'],
|
2024-02-02 05:18:00 +02:00
|
|
|
extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended', 'plugin:unicorn/recommended'],
|
2022-02-03 18:06:44 +02:00
|
|
|
root: true,
|
|
|
|
env: {
|
|
|
|
node: true,
|
|
|
|
jest: true,
|
|
|
|
},
|
|
|
|
ignorePatterns: ['.eslintrc.js'],
|
|
|
|
rules: {
|
|
|
|
'@typescript-eslint/interface-name-prefix': 'off',
|
|
|
|
'@typescript-eslint/explicit-function-return-type': 'off',
|
|
|
|
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
|
|
'@typescript-eslint/no-explicit-any': 'off',
|
2023-10-13 07:22:40 +02:00
|
|
|
'@typescript-eslint/no-floating-promises': 'error',
|
2024-02-02 05:18:00 +02:00
|
|
|
'unicorn/prevent-abbreviations': 'off',
|
|
|
|
'unicorn/filename-case': 'off',
|
|
|
|
'unicorn/no-null': 'off',
|
|
|
|
'unicorn/prefer-top-level-await': 'off',
|
|
|
|
'unicorn/prefer-event-target': 'off',
|
|
|
|
'unicorn/no-thenable': 'off',
|
2024-03-06 00:23:06 +02:00
|
|
|
'@typescript-eslint/await-thenable': 'error',
|
|
|
|
'@typescript-eslint/no-floating-promises': 'error',
|
|
|
|
'@typescript-eslint/no-misused-promises': 'error',
|
|
|
|
// Note: you must disable the base rule as it can report incorrect errors
|
|
|
|
'require-await': 'off',
|
|
|
|
'@typescript-eslint/require-await': 'error',
|
2023-11-28 22:09:20 +02:00
|
|
|
curly: 2,
|
2022-02-03 18:06:44 +02:00
|
|
|
'prettier/prettier': 0,
|
2024-03-20 20:32:04 +02:00
|
|
|
'no-restricted-imports': ['error', { patterns: [{ group: ['.*'], message: 'Relative imports are not allowed.' }] }],
|
2022-02-03 18:06:44 +02:00
|
|
|
},
|
|
|
|
};
|