{ "globals": { "React$Element": true, "stream$Writable": true, "$Keys": true }, "parser": "babel-eslint", "parserOptions": { "ecmaVersion": 6, "sourceType": "module", "ecmaFeatures": { "jsx": true } }, "extends": [ "eslint:recommended", "plugin:react/recommended", "plugin:flowtype/recommended" ], "plugins": [ "react", "eslint-plugin-flowtype", "import", "jsx-a11y", "flowtype", "prettier" ], "rules": { "array-bracket-spacing": ["error", "never"], "arrow-parens": ["error", "as-needed"], "arrow-spacing": "error", "block-spacing": [ "error", "always" ], "camelcase": "error", "class-methods-use-this": ["off"], "comma-dangle": ["error", "only-multiline"], "comma-style": "error", "comma-spacing": [ "error", { "before": false, "after": true } ], "computed-property-spacing": [ "error", "never" ], "consistent-this": [ "error", "self" ], "constructor-super": "error", "eol-last": "error", "func-call-spacing": "error", "func-style": [ "error", "declaration", { "allowArrowFunctions": true } ], "import/no-unresolved": "error", "import/named": "error", "import/namespace": "error", "import/no-restricted-paths": "error", "import/no-absolute-path": "error", "import/no-dynamic-require": "error", "import/no-webpack-loader-syntax": "error", "import/export": "error", "import/no-named-as-default": "error", "import/no-named-as-default-member": "error", "import/no-deprecated": "error", "import/no-extraneous-dependencies": "error", "import/no-mutable-exports": "error", "import/unambiguous": "warn", "import/no-commonjs": "error", "import/no-amd": "error", "import/first": "error", "import/no-duplicates": "error", "import/no-namespace": "error", "import/newline-after-import": "error", "import/max-dependencies": "warn", "import/no-unassigned-import": "warn", "import/no-named-default": "error", "indent": ["error", 2, { "SwitchCase": 1 }], "jsx-a11y/accessible-emoji": "error", "jsx-a11y/alt-text": "error", "jsx-a11y/anchor-has-content": "error", "jsx-a11y/anchor-is-valid": "error", "jsx-a11y/aria-activedescendant-has-tabindex": "error", "jsx-a11y/aria-props": "error", "jsx-a11y/aria-proptypes": "error", "jsx-a11y/aria-role": "error", "jsx-a11y/aria-unsupported-elements": "error", "jsx-a11y/click-events-have-key-events": "error", "jsx-a11y/heading-has-content": "error", "jsx-a11y/html-has-lang": "error", "jsx-a11y/iframe-has-title": "error", "jsx-a11y/img-redundant-alt": "error", "jsx-a11y/interactive-supports-focus": "error", "jsx-a11y/label-has-for": "error", "jsx-a11y/media-has-caption": "error", "jsx-a11y/mouse-events-have-key-events": "error", "jsx-a11y/no-access-key": "error", "jsx-a11y/no-autofocus": "error", "jsx-a11y/no-distracting-elements": "error", "jsx-a11y/no-interactive-element-to-noninteractive-role": "error", "jsx-a11y/no-noninteractive-element-interactions": "error", "jsx-a11y/no-noninteractive-element-to-interactive-role": "error", "jsx-a11y/no-noninteractive-tabindex": "error", "jsx-a11y/no-onchange": "error", "jsx-a11y/no-redundant-roles": "error", "jsx-a11y/no-static-element-interactions": "error", "jsx-a11y/role-has-required-aria-props": "error", "jsx-a11y/role-supports-aria-props": "error", "jsx-a11y/scope": "error", "jsx-a11y/tabindex-no-positive": "error", "jsx-quotes": "error", "key-spacing": [ "error", { "beforeColon": false, "afterColon": true } ], "keyword-spacing": [ "error", { "before": true, "after": true } ], "linebreak-style": [ "error", "unix" ], "max-len": [ "error", { "ignoreUrls": true, "ignoreComments": true, "code": 120 } ], "max-statements": [ "error", 60 ], "new-cap": "error", "new-parens": "error", "newline-before-return": "error", "no-confusing-arrow": ["off"], "no-console": [ "error", { "allow": [ "error", "warn" ] } ], "no-const-assign": "error", "no-else-return": "error", "no-extra-semi": "error", "no-find-dom-node": 0, "no-global-assign": "error", "no-lonely-if": "error", "no-this-before-super": "error", "no-trailing-spaces": "error", "no-undef": 0, "no-underscore-dangle": "error", "no-unneeded-ternary": "error", "no-useless-rename": "error", "no-var": "error", "no-whitespace-before-property": "error", "object-curly-spacing": [ "error", "always" ], "object-property-newline": "error", "one-var": [ "error", "never" ], "prettier/prettier": ["error", {"trailingComma": "es5", "singleQuote": true}], "prefer-arrow-callback": "error", "prefer-const": [ "error", { "destructuring": "any", "ignoreReadBeforeAssign": false } ], "prefer-template": "error", "quotes": [ "error", "single" ], "react/jsx-boolean-value": ["off"], "react/jsx-filename-extension": ["off"], "react/jsx-closing-bracket-location": ["off"], "react/jsx-indent": ["off"], "react/jsx-indent-props": ["off"], "react/prefer-stateless-function": ["off"], "react/prop-types": 0, "semi": "error", "space-before-function-paren": [ "error", "never" ], "space-in-parens": [ "error", "never" ], "space-infix-ops": "error", "space-unary-ops": "error", "template-curly-spacing": "error", "wrap-iife": ["error", "inside"], "wrap-regex": "error" } }