{ "parser": "babel-eslint", "parserOptions": { "sourceType": "module", "ecmaFeatures": { "jsx": true } }, "env": { "es6": true, "browser": true, "commonjs": true, }, "plugins": [ "react", "jsx-control-statements", ], "extends": [ "eslint:recommended", "plugin:react/recommended", "plugin:jsx-control-statements/recommended", ], "rules": { "object-curly-spacing": [2, "always"], "no-console": 1, "no-unused-vars": 1, "quotes": 2, "quote-props": 2, "func-call-spacing": [2, "always"], "strict": [2, "global"], "semi": [2, "never"], "no-tabs": 2, "no-template-curly-in-string": 2, "no-unsafe-negation": 2, "accessor-pairs": [2, {"getWithoutSet": true}], "array-callback-return": 2, "block-scoped-var": 2, "class-methods-use-this": [2, { "exceptMethods": [] }], "eqeqeq": 2, "no-prototype-builtins": 2, "no-else-return": 2, "no-global-assign": [2, {"exceptions": []}], "no-implicit-globals": 2, "no-loop-func": 2, "no-fallthrough": 2, "no-floating-decimal": 2, "no-return-assign": 2, "no-sequences": 2, "no-unmodified-loop-condition": 2, "no-unused-expressions": [2, { "allowShortCircuit": true, "allowTernary": true }], "no-useless-call": 2, "no-useless-concat": 2, "no-useless-escape": 2, "no-useless-return": 2, "no-void": 2, "no-with": 2, "yoda": [2, "never", { "exceptRange": true }], "no-shadow-restricted-names": 2, "no-shadow": [2, { "builtinGlobals": true, "hoist": "all", "allow": [] }], "no-use-before-define": ["error", { "functions": true, "classes": true }], "comma-dangle": [2, "always-multiline"], "comma-style": [2, "last", { "exceptions": {} }], "eol-last": 2, "indent": [2, 2], "key-spacing": 2, "new-cap": 2, "new-parens": 2, "no-array-constructor": 2, "no-lonely-if": 2, "no-mixed-operators": 2, "no-multiple-empty-lines": [2, {max: 1}], "no-nested-ternary": 2, "no-unneeded-ternary": 2, "no-trailing-spaces": 2, "no-whitespace-before-property": 2, "operator-assignment": 2, "space-before-function-paren": 2, "space-before-blocks": 2, "space-in-parens": 2, "space-infix-ops": 2, "wrap-regex": 2, "arrow-body-style": 2, "arrow-parens": 2, "arrow-spacing": 2, "no-confusing-arrow": 2, "no-duplicate-imports": 2, "no-useless-computed-key": 2, "no-useless-rename": 2, "no-var": 2, "object-shorthand": 2, "prefer-arrow-callback": 2, "prefer-const": 2, "prefer-rest-params": 2, "prefer-spread": 2, "prefer-template": 2, "rest-spread-spacing": 2, "symbol-description": 2, "template-curly-spacing": 2, "react/display-name": 0, "react/forbid-component-props": [2, { "forbid": [ "className", "style", ] }], "react/no-children-prop": 2, "react/no-danger": 2, "react/no-danger-with-children": 2, "react/no-did-mount-set-state": [2, "disallow-in-func"], "react/no-did-update-set-state": 2, "react/no-direct-mutation-state": 2, "react/no-find-dom-node": 0, "react/no-is-mounted": 2, "react/no-render-return-value": 2, "react/no-string-refs": 2, "react/no-unescaped-entities": 2, "react/no-unknown-property": 2, "react/no-unused-prop-types": 2, "react/prop-types": 0, "react/react-in-jsx-scope": 2, "react/require-render-return": 2, "react/self-closing-comp": 2, "react/style-prop-object": 2, "react/jsx-closing-bracket-location": 2, "react/jsx-curly-spacing": 2, "react/jsx-equals-spacing": 2, "react/jsx-filename-extension": 0, "react/jsx-first-prop-new-line": [2, "multiline-multiprop"], "react/jsx-indent": [2, 2], "react/jsx-indent-props": [2, 2], "react/jsx-key": 2, "react/jsx-max-props-per-line": [2, {maximum: 3}], "react/jsx-no-comment-textnodes": 2, "react/jsx-no-duplicate-props": 2, "react/jsx-no-target-blank": 2, "react/jsx-pascal-case": 2, "react/jsx-tag-spacing": 2, "react/jsx-uses-react": 2, "react/jsx-uses-vars": 2, "react/jsx-no-undef": 0, "jsx-control-statements/jsx-jcs-no-undef": 2, }, }