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-devNext, install eslint-plugin-sev-legacy-plugin:
npm install eslint-plugin-sev-legacy-plugin --save-devIn 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'],},]
}
}
];