{
  "env": {
    "browser": true,
    "node": true,
    "es2021": true
  },
  "extends": [
    "eslint:recommended",
    "plugin:react/recommended",
    "plugin:react/jsx-runtime",
    "prettier"
  ],
  "parserOptions": {
    "ecmaFeatures": {
      "jsx": true
    },
    "ecmaVersion": 2020,
    "sourceType": "module"
  },
  "plugins": ["react", "react-hooks"],
  "rules": {
    "curly": "error",
    "prefer-const": "warn",
    "no-console": "warn",
    "no-unused-vars": "warn",
    "no-shadow": [
      "warn",
      {
        "ignoreOnInitialization": true
      }
    ],
    "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }],
    "react/prop-types": "warn",
    "react-hooks/rules-of-hooks": "error",
    "react-hooks/exhaustive-deps": "warn",
    "react/jsx-no-constructed-context-values": "warn",
    "react/jsx-props-no-spreading": "off",
    "react/function-component-definition": [
      2,
      {
        "namedComponents": [
          "function-declaration",
          "function-expression",
          "arrow-function"
        ],
        "unnamedComponents": ["arrow-function"]
      }
    ]
  }
}