{
    "env": {
        "browser": true,
        "es6": true,
        "node": true,
        "commonjs": true,
        "jest": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:react/recommended",
        "plugin:import/errors",
        "plugin:import/warnings",
        "plugin:jsx-a11y/recommended"
    ],
    "parser": "babel-eslint",
    "parserOptions": {
        "ecmaFeatures": {
            "experimentalObjectRestSpread": true,
            "jsx": true
        },
        "sourceType": "module"
    },
    "plugins": [
        "react",
        "html",
        "import",
        "jsx-a11y"
    ],
    "settings": {
        "react": {
            "pragma": "React",
            "version": "detect"
          },
        "import/resolver": {
            "node": {
              "extensions": [
                ".js",
                ".jsx"
              ]
            }
        }
    },
    "rules": {
        "indent": ["error", 2, {"VariableDeclarator": { "var": 2, "let": 2, "const": 3 }, "MemberExpression": 1 }],
        "quotes": ["error", "single"],
        "eol-last": ["error", "always"],
        "semi": ["error", "never"],
        "prefer-arrow-callback": ["error"],
        "no-trailing-spaces": "error",
        "no-unused-vars": "error",
        "prefer-const": "error",
        "react/jsx-tag-spacing": "error",
        "react/display-name": "error",
        "react/no-access-state-in-setstate": "error",
        "react/no-array-index-key": "error",
        "react/no-did-mount-set-state": "error",
        "react/no-did-update-set-state": "error",
        "react/no-deprecated": 1,
        "react/no-render-return-value": "error",
        "react/no-unused-prop-types": "error",
        "react/no-unused-state": "error",
        "react/no-find-dom-node": "error",
        "react/jsx-indent": ["error", 2],
        "react/jsx-indent-props": ["error", 2],
        "react/jsx-no-bind": "off",
        "react/jsx-no-duplicate-props": "error",
        "react/sort-prop-types": "error",
        "import/no-unresolved": ["error",
            {
                "commonjs": true
            }
        ],
        "jsx-a11y/anchor-is-valid": "off",
        "jsx-a11y/label-has-for": [ "error", {
            "required": {
                "some": [ "nesting", "id" ]
            }
        }]
    }
}
