Fix index fallback of CJS package from ESM-mode import when main is present but does not resolve (#49327)

This commit is contained in:
Andrew Branch
2022-05-31 14:10:17 -07:00
committed by GitHub
parent 3939b38aa1
commit 39f5dbff43
6 changed files with 203 additions and 2 deletions

View File

@@ -2413,8 +2413,8 @@ namespace ts {
);
if (
!pathAndExtension && packageInfo
&& packageInfo.packageJsonContent.exports === undefined
&& packageInfo.packageJsonContent.main === undefined
// eslint-disable-next-line no-null/no-null
&& (packageInfo.packageJsonContent.exports === undefined || packageInfo.packageJsonContent.exports === null)
&& state.features & NodeResolutionFeatures.EsmMode
) {
// EsmMode disables index lookup in `loadNodeModuleFromDirectoryWorker` generally, however non-relative package resolutions still assume