.eslintrc.yml

Summary

Maintainability
Test Coverage
parser: '@typescript-eslint/parser'
parserOptions:
  project: tsconfig.json

plugins:
  - react
  - prettier
  - jest
  - '@typescript-eslint'

extends:
  - eslint:recommended
  - plugin:react/recommended
  - plugin:@typescript-eslint/recommended

settings:
  react:
    version: detect

env:
  es6: true
  browser: true
rules:
  prettier/prettier: error
  # Indent is owned by prettier
  '@typescript-eslint/indent': off
  '@typescript-eslint/no-explicit-any': off
  '@typescript-eslint/no-unused-vars':
    - error
    - varsIgnorePattern: _
      argsIgnorePattern: _
  '@typescript-eslint/explicit-function-return-type': off
  '@typescript-eslint/ban-ts-ignore': off
  '@typescript-eslint/no-empty-function': off
  react/prop-types: off

overrides:
  - files: "*.test.tsx"
    env:
      jest: true
      node: true
    rules:
      jest/no-disabled-tests: error
      jest/no-focused-tests: error
      jest/no-identical-title: error
      jest/prefer-to-have-length: error
      jest/valid-expect: error
      jest/prefer-to-be-null: error
      jest/prefer-to-be-undefined: error
      jest/prefer-to-contain: error

  - files: "*.stories.tsx"
    env:
      node: true