cli/config/eslint: add import and monorepo lint rules to avoid bad imports and missing deps

This commit is contained in:
Patrik Oldsberg
2020-04-05 11:07:24 +02:00
parent 73e7f751b7
commit 6a6074bedd
3 changed files with 96 additions and 2 deletions
+29 -1
View File
@@ -23,9 +23,10 @@ module.exports = {
'prettier/react',
'prettier/@typescript-eslint',
'plugin:jest/recommended',
'plugin:monorepo/recommended',
],
parser: '@typescript-eslint/parser',
plugins: ['notice'],
plugins: ['notice', 'import'],
env: {
jest: true,
},
@@ -39,6 +40,18 @@ module.exports = {
},
},
ignorePatterns: ['**/dist/**', '**/build/**'],
rules: {
'import/no-duplicates': 'warn',
'import/no-extraneous-dependencies': [
'error',
{
devDependencies: false,
optionalDependencies: true,
peerDependencies: true,
bundledDependencies: true,
},
],
},
overrides: [
{
files: ['**/*.ts?(x)'],
@@ -47,5 +60,20 @@ module.exports = {
'react/prop-types': 0,
},
},
{
files: ['**/*.test.*', '**/src/setupTests.*', '**/src/testUtils/**'],
rules: {
// Tests are allowed to import dev dependencies
'import/no-extraneous-dependencies': [
'error',
{
devDependencies: true,
optionalDependencies: true,
peerDependencies: true,
bundledDependencies: true,
},
],
},
},
],
};