Rewrite imports to TSConfig aliases
npm install @limegrass/eslint-plugin-import-aliasEnforce use of defined aliases in TSConfig/JSConfig through ESLint.
- Automatic imports by tsserver resolve to relative paths that can be normalized.
- It's easier to refactor by finding and replacing an absolute module path
without worrying about crafting the regex for ../ and ./
- Node 14+
``shell`
npm install --save-dev @limegrass/eslint-plugin-import-alias eslint
This plugin relies on an alias configuration in tsconfig.json, jsconfig.json,aliasConfigPath
or a config with the same schema and a path given as in its rules
settings. See the [rules documentation][docs-import-alias] for more detail.
This plugin supports multiple configuration parameters which can affect how it handles
relative paths, base URLs, and more. Check the [rules documentation][docs-import-alias]
and example configurations for more detailed configurations.
`jsonc`
// .eslintrc
{
"plugins": ["@limegrass/import-alias"],
"rules": {
"@limegrass/import-alias/import-alias": "error",
},
}
The configuration above is also equivalent to
`jsonc"eslint:recommended"
// .eslintrc
{
"extends": [
// ... - your other extends, such as `
"plugin:@limegrass/import-alias/recommended",
],
}
Note that while the above is for the deprecated .eslintrc` format,
this package does support ESLint@^9 and its flat config format.
See the flat-config example for details.
[docs-import-alias]: docs/rules/import-alias.md