diff --git a/lib/rules/no-hide-core-modules.js b/lib/rules/no-hide-core-modules.js index 64df753f..7d1bef40 100644 --- a/lib/rules/no-hide-core-modules.js +++ b/lib/rules/no-hide-core-modules.js @@ -9,7 +9,6 @@ "use strict" const path = require("path") -const resolver = require("enhanced-resolve") const getPackageJson = require("../util/get-package-json") const mergeVisitorsInPlace = require("../util/merge-visitors-in-place") const visitImport = require("../util/visit-import") @@ -25,7 +24,8 @@ const CORE_MODULES = new Set([ "crypto", "dgram", "dns", - /* "domain", */ "events", + /* "domain", */ + "events", "fs", "http", "https", @@ -33,7 +33,8 @@ const CORE_MODULES = new Set([ "net", "os", "path", - /* "punycode", */ "querystring", + /* "punycode", */ + "querystring", "readline", "repl", "stream", @@ -112,10 +113,6 @@ module.exports = { ), { "Program:exit"() { - const requireResolve = resolver.create.sync({ - conditionNames: ["node", "import", "require"], - }) - for (const target of targets.filter( t => CORE_MODULES.has(t.moduleName) && @@ -131,22 +128,20 @@ module.exports = { continue } - try { - const resolved = requireResolve(dirPath, `${name}/`) - - context.report({ - node: target.node, - loc: target.node.loc, - messageId: "unexpectedImport", - data: { - name: path - .relative(dirPath, resolved) - .replace(BACK_SLASH, "/"), - }, - }) - } catch { + if (target.filePath == null) { continue } + + context.report({ + node: target.node, + loc: target.node.loc, + messageId: "unexpectedImport", + data: { + name: path + .relative(dirPath, target.filePath) + .replace(BACK_SLASH, "/"), + }, + }) } }, }, diff --git a/lib/util/import-target.js b/lib/util/import-target.js index 81778bec..d16a0db4 100644 --- a/lib/util/import-target.js +++ b/lib/util/import-target.js @@ -41,7 +41,11 @@ function getFilePath(id, options, moduleType, moduleStyle) { conditionNames.push("import", "types") } - if (moduleStyle === "require" || moduleType === "npm") { + if ( + moduleStyle === "require" || + moduleType === "npm" || + moduleType === "node" + ) { mainFields.push("main") mainFiles.push("index") }