mirror of
https://github.com/MetaFam/TheGame.git
synced 2026-04-24 03:00:09 -04:00
77 lines
2.0 KiB
JSON
77 lines
2.0 KiB
JSON
{
|
|
"root": true,
|
|
"extends": [
|
|
"airbnb-typescript",
|
|
"airbnb/hooks",
|
|
"plugin:@typescript-eslint/eslint-recommended",
|
|
"plugin:@typescript-eslint/recommended",
|
|
"plugin:jest/recommended",
|
|
"prettier/@typescript-eslint",
|
|
"prettier/react",
|
|
"prettier"
|
|
],
|
|
"parserOptions": {
|
|
"project": "./tsconfig.json",
|
|
"ecmaVersion": 6
|
|
},
|
|
"plugins": ["simple-import-sort"],
|
|
"settings": {
|
|
"import/resolver": {
|
|
"typescript": {}
|
|
}
|
|
},
|
|
"rules": {
|
|
"@typescript-eslint/explicit-function-return-type": "off",
|
|
|
|
// Doesn't work for FC: https://github.com/yannickcr/eslint-plugin-react/issues/2353
|
|
"react/prop-types": "off",
|
|
|
|
// Prefer non-default exports
|
|
"import/no-default-export": "error",
|
|
"import/prefer-default-export": "off",
|
|
|
|
// Auto-sort imports
|
|
"sort-imports": "off",
|
|
"import/order": "off",
|
|
"simple-import-sort/sort": "error",
|
|
|
|
// Using a type system makes it safe enough to spread props
|
|
"react/jsx-props-no-spreading": "off",
|
|
|
|
// we want to be able to use functions before definition
|
|
"@typescript-eslint/no-use-before-define": "off",
|
|
|
|
"@typescript-eslint/ban-ts-comment": [
|
|
"error",
|
|
{
|
|
"ts-expect-error": "allow-with-description",
|
|
"minimumDescriptionLength": 5
|
|
}
|
|
]
|
|
},
|
|
"overrides": [
|
|
{
|
|
// assuming Next.js application
|
|
"files": "**/pages/**/*.{ts,tsx}",
|
|
"rules": {
|
|
"react/react-in-jsx-scope": "off", // react is a global in this folder
|
|
"import/no-default-export": "off", // pages have to have a default export
|
|
"import/prefer-default-export": "error",
|
|
"@typescript-eslint/explicit-module-boundary-types": [
|
|
// So we can infer prop types
|
|
"warn",
|
|
{ "allowedNames": ["getStaticProps"] }
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"files": ["**/*.stories.*"],
|
|
"rules": {
|
|
// Storybook requires default exports for stories
|
|
"import/no-default-export": "off",
|
|
"@typescript-eslint/explicit-module-boundary-types": "off"
|
|
}
|
|
}
|
|
]
|
|
}
|