123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- {
- "env": {
- "browser": true,
- "es6": true,
- "jest": true
- },
- "globals": {
- "Atomics": "readonly",
- "SharedArrayBuffer": "readonly"
- },
- "parser": "@typescript-eslint/parser",
- "parserOptions": {
- "ecmaFeatures": {
- "jsx": true
- },
- "ecmaVersion": 2018,
- "sourceType": "module",
- "project": [
- "./tsconfig.json",
- "./src/setupTests.ts"
- ]
- },
- "plugins": [
- "react",
- "@typescript-eslint",
- "prettier",
- "react-hooks"
- ],
- "extends": [
- "airbnb",
- "airbnb-typescript",
- "plugin:@typescript-eslint/recommended",
- "plugin:jest-dom/recommended",
- "plugin:prettier/recommended",
- "eslint:recommended",
- "plugin:react/recommended",
- "prettier"
- ],
- "rules": {
- "react/no-unused-prop-types": "off",
- "react/require-default-props": "off",
- "prettier/prettier": "warn",
- "@typescript-eslint/explicit-module-boundary-types": "off",
- "jsx-a11y/label-has-associated-control": "off",
- "import/prefer-default-export": "off",
- "@typescript-eslint/no-explicit-any": "error",
- "react-hooks/rules-of-hooks": "error", // Checks rules of Hooks
- // breaks builds as we still have those warns
- "react-hooks/exhaustive-deps": "off", // Checks effect dependencies
- "import/no-extraneous-dependencies": [
- "error",
- {
- "devDependencies": true
- }
- ],
- "import/no-cycle": "error",
- "import/order": [
- "error",
- {
- "groups": [
- "builtin",
- "external",
- "parent",
- "sibling",
- "index"
- ],
- "newlines-between": "always"
- }
- ],
- "import/no-relative-parent-imports": "error",
- "no-debugger": "warn",
- "react/jsx-props-no-spreading": "off",
- "no-param-reassign": [
- "error",
- {
- "props": true,
- "ignorePropertyModificationsFor": [
- "state"
- ]
- }
- ],
- "react/function-component-definition": [
- 2,
- {
- "namedComponents": "arrow-function",
- "unnamedComponents": "arrow-function"
- }
- ],
- "react/jsx-no-constructed-context-values": "off",
- "react/display-name": "off"
- },
- "overrides": [
- {
- "files": [
- "**/*.tsx"
- ],
- "rules": {
- "react/prop-types": "off"
- }
- },
- {
- "files": [
- "*.spec.tsx"
- ],
- "rules": {
- "react/jsx-props-no-spreading": "off"
- }
- }
- ]
- }
|