2022-02-03 16:06:44 +00:00
|
|
|
module.exports = {
|
|
|
|
parser: '@typescript-eslint/parser',
|
|
|
|
parserOptions: {
|
|
|
|
project: 'tsconfig.json',
|
|
|
|
sourceType: 'module',
|
|
|
|
tsconfigRootDir: __dirname,
|
|
|
|
},
|
|
|
|
plugins: ['@typescript-eslint/eslint-plugin'],
|
2024-02-02 03:18:00 +00:00
|
|
|
extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended', 'plugin:unicorn/recommended'],
|
2022-02-03 16:06:44 +00:00
|
|
|
root: true,
|
|
|
|
env: {
|
|
|
|
node: 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 05:22:40 +00:00
|
|
|
'@typescript-eslint/no-floating-promises': 'error',
|
2024-02-02 03:18:00 +00: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-04-08 16:45:46 +00:00
|
|
|
'unicorn/import-style': 'off',
|
2024-05-15 22:06:25 +00:00
|
|
|
'unicorn/prefer-structured-clone': 'off',
|
2024-03-05 22:23:06 +00: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 20:09:20 +00:00
|
|
|
curly: 2,
|
2022-02-03 16:06:44 +00:00
|
|
|
'prettier/prettier': 0,
|
2024-03-20 18:32:04 +00:00
|
|
|
'no-restricted-imports': ['error', { patterns: [{ group: ['.*'], message: 'Relative imports are not allowed.' }] }],
|
2022-02-03 16:06:44 +00:00
|
|
|
},
|
|
|
|
};
|