The next resolver for `eslint-plugin-import` or `eslint-plugin-import-x`
npm install eslint-import-resolver-next


The next resolver plugin for eslint-plugin-import or eslint-plugin-import-x that resolves modules with unrs-resolver.
- Resolves modules using the unrs-resolver package.
- Support mono-repos and pnpm-workspaces.yaml.
- Support paths alias defined in tsconfig.compilerOptions.paths or jsconfig.compilerOptions.paths.
1. Install the package:
``sh`
npm install -D eslint-import-resolver-next
2. Add it as a resolver to your ESLint configuration.
Example config:
`js`
module.exports = {
// ... other configuration options
settings: {
"import/resolver": {
next: {
// Options for the resolver
},
},
},
};
with Mono-repo:
`js`
module.exports = {
// ... other configuration options
settings: {
"import/resolver": {
next: {
packages: ["packages/*"],
},
},
},
};
pnpm-workspaces:
`js`
module.exports = {
// ... other configuration options
settings: {
"import/resolver": {
next: {
packages: {
pnpmWorkspace: true,
includeRoot: true,
},
},
},
},
};
3. For eslint-plugin-import-x resolver-next
`js
const { createNextImportResolver } = require("eslint-import-resolver-next");
module.exports = {
// ... other configuration options
settings: {
"import-x/resolver-next": [createNextImportResolver({
// Options for the resolver
})],
},
};
`
- roots (Array[process.cwd()].
- alias (Recordundefined.
* The alias can be set as relative paths. relative paths are resolved from the package directory.
- tsconfig (boolean | string | object): Weather to use the tsconfig.json file. Default: true.true
* If , the resolver will try to find the tsconfig.json file close to the source file.ConfigFileOptions
* If a string, it's the name of the file to search for or the absolute path to the file.
* If an object, see .
- jsconfig (boolean | string | object): Weather to use the jsconfig.json file. Default: true.true
* If , the resolver will try to find the jsconfig.json file close to the source file.ConfigFileOptions
* If a string, it's the name of the file to search for or the absolute path to the file.
* If an object, see .
- packages (string[] | PackageOptions): The patterns or options to search for packages. Default: undefined.PackageOptions
* If an array, the resolver will search for packages in the specified patterns.
* If an object, see .
- bun (boolean): Weather to enable the bun support. Default: true if bun environment is detected.true
* If , the resolver will try to resolve bun built-in modules.
All other options are passed to the unrs-resolver package. See the unrs-resolver documentation
The tsconfig and jsconfig options can have the following properties:
- configFile (string): The name of the file to search for or the absolute path to the file. Default: tsconfig.json.ignore
- (string[]): The directories to ignore. Default: ["/node_modules/"].references
- ('auto' | string[]): Support for Typescript Project References. Default: 'auto'.'auto'
* If , the resolver will try to find the references field in the tsconfig.json file.
* If an array, the resolver will use the specified references.
A folder with a package.json file is considered a package. The PackageOptions object can have the following properties:
- patterns (string[]): The patterns to search for packages. Default: ["."].ignore
- (string[]): The directories to ignore. Default: ["/node_modules/", "/bower_components/", "/test/", "/tests/"].includeRoot
- (boolean): Weather to include the root directory. Default: false.pnpmWorkspace
- (boolean | string): Weather to use the pnpm-workspace.yaml file to find packages. Default: false.true
* If , the resolver will try to find the pnpm-workspace.yaml file in the package directory.pnpm-workspace.yaml` file.
* If a string, define the path to the