{ "env": { "browser": true, "node": false }, "parserOptions": { "ecmaFeatures": { "jsx": true }, "sourceType": "module" }, "plugins": [ "react", "import" ], "rules": { "id-length": [ "error", { "min": 2, "exceptions": [ "$" ] } ], "import/default": "error", "import/export": "error", "import/extensions": [ "error", "never" ], "import/imports-first": "error", "import/max-dependencies": [ "error", { "max": 10 } ], "import/named": "error", "import/namespace": "error", "import/newline-after-import": "error", "import/no-absolute-path": "error", "import/no-amd": "error", "import/no-commonjs": "error", "import/no-deprecated": "off", "import/no-duplicates": "error", "import/no-dynamic-require": "error", "import/no-extraneous-dependencies": "error", "import/no-internal-modules": "off", "import/no-mutable-exports": "error", "import/no-named-as-default-member": "error", "import/no-named-as-default": "error", "import/no-named-default": "error", "import/no-namespace": "error", "import/no-nodejs-modules": "error", "import/no-restricted-paths": "error", "import/no-unassigned-import": "warn", "import/no-unresolved": "off", "import/no-webpack-loader-syntax": "error", "import/order": "error", "import/prefer-default-export": "error", "import/unambiguous": "error", "react/display-name": [ "error", { "ignoreTranspilerName": false } ], "react/forbid-component-props": [ "error", { "forbid": [ "className", "style" ] } ], "react/forbid-elements": "off", "react/forbid-foreign-prop-types": "error", "react/forbid-prop-types": "error", "react/jsx-boolean-value": "error", "react/jsx-closing-bracket-location": "error", "react/jsx-curly-spacing": [ "error", "never" ], "react/jsx-equals-spacing": [ "error", "never" ], "react/jsx-first-prop-new-line": [ "error", "multiline" ], "react/jsx-filename-extension": [ "error", { "extensions": [ ".js" ] } ], "react/jsx-handler-names": "error", "react/jsx-indent": [ "error", 2 ], "react/jsx-indent-props": [ "error", 2 ], "react/jsx-key": "error", "react/jsx-max-props-per-line": "error", "react/jsx-no-bind": "error", "react/jsx-no-comment-textnodes": "error", "react/jsx-no-duplicate-props": "error", "react/jsx-no-literals": "error", "react/jsx-no-target-blank": "error", "react/jsx-no-undef": "error", "react/jsx-pascal-case": "error", "react/jsx-sort-prop-types": "off", "react/jsx-sort-props": "off", "react/jsx-space-before-closing": "error", "react/jsx-tag-spacing": "error", "react/jsx-uses-react": "error", "react/jsx-uses-vars": "error", "react/jsx-wrap-multilines": "error", "react/no-array-index-key": "error", "react/no-children-prop": "error", "react/no-danger": "error", "react/no-danger-with-children": "error", "react/no-deprecated": "error", "react/no-did-mount-set-state": "error", "react/no-did-update-set-state": "error", "react/no-direct-mutation-state": "error", "react/no-find-dom-node": "error", "react/no-is-mounted": "error", "react/no-multi-comp": "error", "react/no-render-return-value": "error", "react/no-set-state": "off", "react/no-string-refs": "error", "react/no-unescaped-entities": "error", "react/no-unknown-property": "error", "react/no-unused-prop-types": "error", "react/prefer-es6-class": [ "error", "always" ], "react/prefer-stateless-function": "error", "react/prop-types": "error", "react/react-in-jsx-scope": "error", "react/require-default-props": "error", "react/require-optimization": "error", "react/require-render-return": "error", "react/self-closing-comp": [ "error", { "component": true, "html": true } ], "react/sort-comp": "off", "react/style-prop-object": "error", "react/void-dom-elements-no-children": "error" } }