eslint-import-resolver-next v0.4.2
eslint-import-resolver-next
The next resolver plugin for eslint-plugin-import or eslint-plugin-import-x that resolves modules with oxc-resolver.
Features
- Resolves modules using the
oxc-resolverpackage. - Support mono-repos and
pnpm-workspaces.yaml. - Support paths alias defined in
tsconfig.compilerOptions.pathsorjsconfig.compilerOptions.paths.
Usage
- Install the package:
npm install -D eslint-import-resolver-next- Add it as a resolver to your ESLint configuration.
Example config:
module.exports = {
// ... other configuration options
settings: {
"import/resolver": {
next: {
// Options for the resolver
},
},
},
};with Mono-repo:
module.exports = {
// ... other configuration options
settings: {
"import/resolver": {
next: {
packages: ["packages/*"],
},
},
},
};pnpm-workspaces:
module.exports = {
// ... other configuration options
settings: {
"import/resolver": {
next: {
packages: {
pnpmWorkspace: true,
includeRoot: true,
},
},
},
},
};- For eslint-plugin-import-x
resolver-next
const { createNextImportResolver } = require("eslint-import-resolver-next");
module.exports = {
// ... other configuration options
settings: {
"import-x/resolver-next": [createNextImportResolver({
// Options for the resolver
})],
},
};Options
roots(Array): The directories to search for modules. Default:[process.cwd()].alias(Record<string, string | string[]>): The paths alias. Default:undefined.- The alias can be set as relative paths. relative paths are resolved from the package directory.
tsconfig(boolean | string | object): Weather to use thetsconfig.jsonfile. Default:true.- If
true, the resolver will try to find thetsconfig.jsonfile close to the source file. - If a string, it's the name of the file to search for.
- If an object, see the
tsconfigoption in theoxc-resolverpackage.
- If
jsconfig(boolean | string | object): Weather to use thejsconfig.jsonfile. Default:true.- If
true, the resolver will try to find thejsconfig.jsonfile close to the source file. - If a string, it's the name of the file to search for.
- If
packages(string[] | PackageOptions): The patterns or options to search for packages. Default:undefined.- If an array, the resolver will search for packages in the specified patterns.
- If an object, see the
PackageOptions.
All other options are passed to the oxc-resolver package. See the oxc-resolver documentation
PackageOptions
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/**", "**/test/**", "**/tests/**"].includeRoot(boolean): Weather to include the root directory. Default:false.pnpmWorkspace(boolean | string): Weather to use thepnpm-workspace.yamlfile to find packages. Default:false.- If
true, the resolver will try to find thepnpm-workspace.yamlfile in the package directory. - If a string, define the path to the
pnpm-workspace.yamlfile.
- If