UNPKG

eslint-plugin-import-x

Version:
44 lines 1.63 kB
import module from 'node:module'; import path from 'node:path'; import { ResolverFactory } from 'unrs-resolver'; export function createNodeResolver({ extensions = ['.mjs', '.cjs', '.js', '.json', '.node'], conditionNames = ['import', 'require', 'default'], mainFields = ['module', 'main'], ...restOptions } = {}) { const resolver = new ResolverFactory({ extensions, conditionNames, mainFields, ...restOptions, }); return { interfaceVersion: 3, name: 'eslint-plugin-import-x built-in node resolver', resolve(modulePath, sourceFile) { if (module.isBuiltin(modulePath)) { return { found: true, path: null }; } if (process.versions.pnp && modulePath === 'pnpapi') { return { found: true, path: module .findPnpApi(sourceFile) .resolveToUnqualified(modulePath, sourceFile, { considerBuiltins: false, }), }; } if (modulePath.startsWith('data:')) { return { found: true, path: null }; } try { const resolved = resolver.sync(path.dirname(sourceFile), modulePath); if (resolved.path) { return { found: true, path: resolved.path }; } return { found: false }; } catch { return { found: false }; } }, }; } //# sourceMappingURL=node-resolver.js.map