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.
86 lines
2.5 KiB
86 lines
2.5 KiB
{ |
|
// Configuration for JavaScript files |
|
"extends": [ |
|
"airbnb-base", |
|
"next/core-web-vitals", |
|
"plugin:prettier/recommended" |
|
], |
|
"rules": { |
|
"prettier/prettier": [ |
|
"error", |
|
{ |
|
"singleQuote": true |
|
} |
|
] |
|
}, |
|
"overrides": [ |
|
// Configuration for TypeScript files |
|
{ |
|
"files": [ |
|
"**/*.ts", |
|
"**/*.tsx" |
|
], |
|
"plugins": [ |
|
"@typescript-eslint", |
|
"unused-imports" |
|
], |
|
"extends": [ |
|
"airbnb-typescript", |
|
"next/core-web-vitals", |
|
"plugin:prettier/recommended" |
|
], |
|
"parserOptions": { |
|
"project": "./tsconfig.json" |
|
}, |
|
"rules": { |
|
"prettier/prettier": [ |
|
"error", |
|
{ |
|
"singleQuote": true |
|
} |
|
], |
|
"react/destructuring-assignment": "off", // Vscode doesn't support automatically destructuring, it's a pain to add a new variable |
|
"jsx-a11y/anchor-is-valid": "off", // Next.js use his own internal link system |
|
"react/require-default-props": "off", // Allow non-defined react props as undefined |
|
"react/jsx-props-no-spreading": "off", // _app.tsx uses spread operator and also, react-hook-form |
|
"@next/next/no-img-element": "off", // We currently not using next/image because it isn't supported with SSG mode |
|
"import/order": [ |
|
"error", |
|
{ |
|
"groups": [ |
|
"builtin", |
|
"external", |
|
"internal" |
|
], |
|
"pathGroups": [ |
|
{ |
|
"pattern": "react", |
|
"group": "external", |
|
"position": "before" |
|
} |
|
], |
|
"pathGroupsExcludedImportTypes": [ |
|
"react" |
|
], |
|
"newlines-between": "always", |
|
"alphabetize": { |
|
"order": "asc", |
|
"caseInsensitive": true |
|
} |
|
} |
|
], |
|
"@typescript-eslint/comma-dangle": "off", // Avoid conflict rule between Eslint and Prettier |
|
"import/prefer-default-export": "off", // Named export is easier to refactor automatically |
|
"class-methods-use-this": "off", // _document.tsx use render method without `this` keyword |
|
"@typescript-eslint/no-unused-vars": "off", |
|
"unused-imports/no-unused-imports": "error", |
|
"unused-imports/no-unused-vars": [ |
|
"error", |
|
{ |
|
"argsIgnorePattern": "^_" |
|
} |
|
] |
|
} |
|
} |
|
] |
|
} |