.eslintrc.js 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. module.exports = {
  2. env: {
  3. browser: true,
  4. es2021: true,
  5. node: true,
  6. },
  7. extends: ['airbnb-base', 'plugin:@typescript-eslint/recommended', 'prettier'],
  8. parser: '@typescript-eslint/parser',
  9. parserOptions: {
  10. ecmaVersion: 12,
  11. sourceType: 'module',
  12. },
  13. plugins: ['@typescript-eslint', 'prettier'],
  14. rules: {
  15. 'prettier/prettier': 'error',
  16. 'import/extensions': [
  17. 'error',
  18. {
  19. js: 'never',
  20. jsx: 'never',
  21. ts: 'never',
  22. tsx: 'never',
  23. json: 'always',
  24. },
  25. ],
  26. 'import/no-unresolved': 'off',
  27. '@typescript-eslint/no-empty-function': 'off',
  28. '@typescript-eslint/no-explicit-any': 'off',
  29. 'class-methods-use-this': 'off',
  30. 'import/prefer-default-export': 'off',
  31. 'no-unused-expressions': [
  32. 'error',
  33. {
  34. allowShortCircuit: true,
  35. },
  36. ],
  37. 'import/no-extraneous-dependencies': ['error', { devDependencies: true }],
  38. 'no-restricted-syntax': 'off',
  39. 'no-shadow': 'off',
  40. '@typescript-eslint/no-shadow': 'error',
  41. },
  42. };