Plugin for checking relative paths and public api imports. Checking imports from the lower layer to the upper one. Supports aliases.
Plugin for projects with eslint <=9.0.0
You'll first need to install ESLint:
npm i eslint --save-dev
Next, install eslint-plugin-sev-legacy-plugin
:
npm install eslint-plugin-sev-legacy-plugin --save-dev
In your configuration file, import the plugin eslint-plugin-sev-legacy-plugin
and add sev-legacy-plugin
to the plugins
key:
import sev-legacy-plugin from "eslint-plugin-sev-legacy-plugin";
export default [
{
plugins: {
sev-legacy-plugin
}
}
];
Then configure the rules you want to use under the rules
key.
import sev-legacy-plugin from "eslint-plugin-sev-legacy-plugin";
export default [
{
plugins: {
sev-legacy-plugin
},
rules: {
'sev-legacy-plugin/path-checker': ['error', {
alias:'@'
}
],
'sev-legacy-plugin/public-api-imports': ['error', {
alias:'@',
testFilesPatterns:['**/*.test.ts',
'**/*.test.ts',
'**/StoreDecorator.tsx'],
checkingLayers: {
entities: "entities",
features: "features",
pages: "pages",
widgets: "widgets",
},},],
'sev-legacy-plugin/layers-imports':
['error', {
alias:'@',
layersFromTopToBottom: [
"app",
"pages",
"widgets",
"features",
"entities",
"shared",
],
ignoreImportPatterns:['**/*.test.ts',
'**/*.test.ts',
'**/StoreDecorator.tsx'],},]
}
}
];