UNPKG

@amcef/eslint-config-react

Version:

AMCEF ESLint config for React apps (v17+)

75 lines (74 loc) 1.75 kB
{ "env": { "browser": true, "es6": true }, "extends": [ "plugin:react/recommended", "plugin:prettier/recommended", "plugin:import/errors", "plugin:import/warnings", "plugin:import/typescript" ], "globals": { "Atomics": "readonly", "SharedArrayBuffer": "readonly" }, "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaFeatures": { "jsx": true }, "ecmaVersion": 2018, "sourceType": "module" }, "plugins": [ "react", "prettier" ], "rules": { "prettier/prettier": [ "error", { "singleQuote": true, "printWidth": 100, "quoteProps": "consistent" } ], "import/order": [ "error", { "groups": [ ["builtin", "external"], "internal", ["index", "sibling", "parent", "object"] ], "pathGroupsExcludedImportTypes": ["builtin"], "pathGroups": [{ "pattern": "@**/**", "group": "external", "position": "after" }], "newlines-between": "always-and-inside-groups", "alphabetize": { "order": "asc", "caseInsensitive": true } } ], "no-var": "error", "prefer-const": "error", "camelcase": "error", "quotes": ["error", "single"], "jsx-quotes": ["error", "prefer-double"], "prefer-template": "error", "prefer-arrow-callback": "error", "no-useless-rename": "error", "no-duplicate-imports": "error", "indent": ["error", 2], "require-jsdoc": 0, "object-curly-spacing": ["error", "always"], "object-property-newline": "error", "newline-per-chained-call": ["error", { "ignoreChainWithDepth": 2 }] } }