You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.5 KiB
64 lines
1.5 KiB
{ |
|
"env": { |
|
"browser": true, |
|
"commonjs": true, |
|
"es6": true, |
|
"node": true |
|
}, |
|
"extends": [ |
|
"airbnb", |
|
"eslint:recommended", |
|
"plugin:@typescript-eslint/recommended", |
|
"plugin:import/errors", |
|
"plugin:import/typescript", |
|
"plugin:import/warnings", |
|
"plugin:jsx-a11y/recommended", |
|
"plugin:react/recommended", |
|
"plugin:react-hooks/recommended", |
|
"prettier", |
|
"next/core-web-vitals" |
|
], |
|
"plugins": [ |
|
"@typescript-eslint", |
|
"import", |
|
"jsx-a11y", |
|
"react", |
|
"react-hooks" |
|
], |
|
"parser": "@typescript-eslint/parser", |
|
"parserOptions": { |
|
"ecmaFeatures": { |
|
"jsx": true |
|
}, |
|
"ecmaVersion": 2020, |
|
"sourceType": "module" |
|
}, |
|
"rules": { |
|
"complexity": ["error", 6], |
|
"import/extensions": [ |
|
"error", |
|
"ignorePackages", |
|
{ |
|
"js": "never", |
|
"jsx": "never", |
|
"ts": "never", |
|
"tsx": "never" |
|
} |
|
], |
|
"camelcase": "off", |
|
"no-param-reassign": ["error", { "props": false }], |
|
// Allow JSX in files with other extensions |
|
"react/jsx-filename-extension": [1, { "extensions": [".tsx"] }], |
|
// Use TypeScript's types for component props |
|
"react/prop-types": "off", |
|
// Importing React is not required in Next.js |
|
"react/react-in-jsx-scope": "off", |
|
"react/jsx-curly-newline": "off", |
|
"react/jsx-props-no-spreading": "off", |
|
"@next/next/no-img-element": "off", |
|
"@typescript-eslint/camelcase": "off" |
|
}, |
|
"settings": { |
|
"react": { "version": "detect" } |
|
} |
|
}
|
|
|