{ "env": { "browser": true, "es6": true, "node": true }, "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended" ], "plugins": [ "@typescript-eslint", "react" ], "parserOptions": { "ecmaVersion": 6, "sourceType": "module", "ecmaFeatures": { "jsx": true, "experimentalObjectRestSpread": true } }, "globals": { "chrome": true, "$": true }, "rules": { "@typescript-eslint/ban-ts-comment": 0, "@typescript-eslint/no-explicit-any": 0, "@typescript-eslint/no-empty-function": 0, "linebreak-style": [ "error", "unix" ], "quotes": [ "error", "single", { "allowTemplateLiterals": true } ], "semi": [ "error", "always" ], "no-unused-vars": 0, "jsx-quotes": 1, "react/display-name": [ 1, { "ignoreTranspilerName": false } ], "react/forbid-prop-types": [ 1, { "forbid": [ "any" ] } ], "react/jsx-boolean-value": 0, "react/jsx-closing-bracket-location": 0, "react/jsx-curly-spacing": 1, "react/jsx-indent-props": 0, "react/jsx-key": 1, "react/jsx-no-bind": 0, "react/jsx-no-duplicate-props": 1, "react/jsx-no-literals": 0, "react/jsx-no-undef": 1, "react/jsx-pascal-case": 1, "react/jsx-sort-prop-types": 0, "react/jsx-sort-props": 0, "react/jsx-uses-react": 1, "react/jsx-uses-vars": 1, "react/no-danger": 1, "react/no-did-mount-set-state": 1, "react/no-did-update-set-state": 1, "react/no-direct-mutation-state": 1, "react/no-multi-comp": 0, "react/no-set-state": 0, "react/no-unknown-property": 1, "react/prefer-es6-class": 1, "react/prop-types": 1, "react/self-closing-comp": 0, "react/sort-comp": 1, "react/no-unused-prop-types": 0, "comma-dangle": [ "error", { "arrays": "always-multiline", "objects": "always-multiline", "imports": "always-multiline", "exports": "always-multiline", "functions": "always-multiline" } ], "no-useless-constructor": 0, "@typescript-eslint/no-unused-vars": 1, "react/react-in-jsx-scope": 0, "@typescript-eslint/explicit-function-return-type": 0, "@typescript-eslint/ban-ts-ignore": 0, "@typescript-eslint/camelcase": 0, "no-multiple-empty-lines": 1, "padding-line-between-statements": [ "error", { "blankLine": "always", "prev": "*", "next": "return" }, { "blankLine": "always", "prev": "*", "next": "return" }, { "blankLine": "always", "prev": "block", "next": "*" }, { "blankLine": "any", "prev": [ "const", "let", "var" ], "next": [ "const", "let", "var" ] }, { "blankLine": "always", "prev": [ "const", "let", "var" ], "next": "*" }, { "blankLine": "any", "prev": [ "const", "let", "var" ], "next": [ "const", "let", "var" ] }, { "blankLine": "always", "prev": "directive", "next": "*" }, { "blankLine": "any", "prev": "directive", "next": "directive" }, { "blankLine": "always", "prev": "*", "next": "block" }, { "blankLine": "always", "prev": "block", "next": "*" }, { "blankLine": "always", "prev": "*", "next": "block-like" }, { "blankLine": "always", "prev": "block-like", "next": "*" } ], "no-console": [ "warn", { "allow": [ "info", "error" ] } ], "no-empty-function": 0, "react/jsx-max-props-per-line": [ "warn", { "when": "multiline", "maximum": 1 } ] } }