Skip to content

Commit c8ff4e8

Browse files
authored
feat(typescript): reuse module resolution cache from host (#294)
1 parent 4a9d25d commit c8ff4e8

File tree

2 files changed

+3
-10
lines changed

2 files changed

+3
-10
lines changed

packages/typescript/lib/node/decorateLanguageServiceHost.ts

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,7 @@ export function decorateLanguageServiceHost(
4848
language.plugins,
4949
fileName => language.scripts.get(fileName),
5050
);
51-
const getCanonicalFileName = languageServiceHost.useCaseSensitiveFileNames?.()
52-
? (fileName: string) => fileName
53-
: (fileName: string) => fileName.toLowerCase();
54-
const moduleResolutionCache = ts.createModuleResolutionCache(
55-
languageServiceHost.getCurrentDirectory(),
56-
getCanonicalFileName,
57-
languageServiceHost.getCompilationSettings(),
58-
);
51+
const moduleResolutionCache = languageServiceHost.getModuleResolutionCache?.();
5952

6053
if (resolveModuleNameLiterals) {
6154
languageServiceHost.resolveModuleNameLiterals = (
@@ -70,7 +63,7 @@ export function decorateLanguageServiceHost(
7063
ts,
7164
pluginExtensions,
7265
containingSourceFile,
73-
moduleResolutionCache.getPackageJsonInfoCache(),
66+
moduleResolutionCache?.getPackageJsonInfoCache(),
7467
languageServiceHost,
7568
options,
7669
);

packages/typescript/lib/node/utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ export function fixupImpliedNodeFormatForFile(
3939
ts: typeof import('typescript'),
4040
pluginExtensions: string[],
4141
sourceFile: ts.SourceFile,
42-
packageJsonInfoCache: ts.PackageJsonInfoCache,
42+
packageJsonInfoCache: ts.PackageJsonInfoCache | undefined,
4343
host: ts.ModuleResolutionHost,
4444
options: ts.CompilerOptions,
4545
) {

0 commit comments

Comments
 (0)