Skip to content

Commit 09dbd89

Browse files
committed
fix(typescript): correctly use getModeForUsageLocation to calculate the resolution mode
fix #274, fix vuejs/language-tools#5464
1 parent a019453 commit 09dbd89

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

packages/typescript/lib/node/decorateLanguageServiceHost.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@ export function decorateLanguageServiceHost(
6060
return resolveModuleNameLiterals(moduleLiterals, containingFile, redirectedReference, options, containingSourceFile, ...rest);
6161
}
6262
return moduleLiterals.map(moduleLiteral => {
63-
return resolveModuleName(moduleLiteral.text, containingFile, options, moduleResolutionCache, redirectedReference, containingSourceFile.impliedNodeFormat);
63+
const mode = ts.getModeForUsageLocation(containingSourceFile, moduleLiteral, options);
64+
return resolveModuleName(moduleLiteral.text, containingFile, options, moduleResolutionCache, redirectedReference, mode);
6465
});
6566
};
6667
}
@@ -77,7 +78,7 @@ export function decorateLanguageServiceHost(
7778
return resolveModuleNames(moduleNames, containingFile, reusedNames, redirectedReference, options, containingSourceFile);
7879
}
7980
return moduleNames.map(moduleName => {
80-
return resolveModuleName(moduleName, containingFile, options, moduleResolutionCache, redirectedReference, containingSourceFile?.impliedNodeFormat).resolvedModule;
81+
return resolveModuleName(moduleName, containingFile, options, moduleResolutionCache, redirectedReference).resolvedModule;
8182
});
8283
};
8384
}

packages/typescript/lib/node/proxyCreateProgram.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,8 @@ export function proxyCreateProgram(
198198
return resolveModuleNameLiterals(moduleLiterals, containingFile, redirectedReference, compilerOptions, containingSourceFile, ...rest);
199199
}
200200
return moduleLiterals.map(moduleLiteral => {
201-
return resolveModuleName(moduleLiteral.text, containingFile, compilerOptions, moduleResolutionCache, redirectedReference, containingSourceFile.impliedNodeFormat);
201+
const mode = ts.getModeForUsageLocation(containingSourceFile, moduleLiteral, compilerOptions);
202+
return resolveModuleName(moduleLiteral.text, containingFile, compilerOptions, moduleResolutionCache, redirectedReference, mode);
202203
});
203204
};
204205
options.host.resolveModuleNames = (

0 commit comments

Comments
 (0)