Skip to content

Instantly share code, notes, and snippets.

@fersilva16
Created December 29, 2021 01:32
Show Gist options
  • Save fersilva16/a6815722507a01b14edd4edf9b22423c to your computer and use it in GitHub Desktop.
Save fersilva16/a6815722507a01b14edd4edf9b22423c to your computer and use it in GitHub Desktop.
ESLint config for monorepos that adds support for importing from root package
const fs = require('fs');
const glob = require('glob');
const { workspaces } = require('./package.json');
const noExtraneousOverrides = workspaces
.map((workspace) => {
return glob
.sync(workspace)
.filter((entry) => entry.substr(0, 1) !== '.' && fs.lstatSync(entry).isDirectory())
.map((entry) => ({
files: [`${entry}/**/*.ts`],
rules: {
'import/no-extraneous-dependencies': [
'error',
{
devDependencies: true,
optionalDependencies: false,
peerDependencies: false,
packageDir: [__dirname, entry],
},
],
},
}));
})
.flat();
module.exports = {
// ...
overrides: [
...noExtraneousOverrides,
],
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment