diff --git a/src/compiler/builderState.ts b/src/compiler/builderState.ts index 695bdce5527..dc80a5e9d7f 100644 --- a/src/compiler/builderState.ts +++ b/src/compiler/builderState.ts @@ -238,18 +238,15 @@ export namespace BuilderState { } // Handle type reference directives - const resolvedTypeReferenceDirectiveNames = program.resolvedTypeReferenceDirectiveNames?.get(sourceFile.path); - if (resolvedTypeReferenceDirectiveNames) { - resolvedTypeReferenceDirectiveNames.forEach(({ resolvedTypeReferenceDirective }) => { - if (!resolvedTypeReferenceDirective) { - return; - } + program.forEachResolvedTypeReferenceDirective(({ resolvedTypeReferenceDirective }) => { + if (!resolvedTypeReferenceDirective) { + return; + } - const fileName = resolvedTypeReferenceDirective.resolvedFileName!; // TODO: GH#18217 - const typeFilePath = getReferencedFileFromFileName(program, fileName, sourceFileDirectory, getCanonicalFileName); - addReferencedFile(typeFilePath); - }); - } + const fileName = resolvedTypeReferenceDirective.resolvedFileName!; // TODO: GH#18217 + const typeFilePath = getReferencedFileFromFileName(program, fileName, sourceFileDirectory, getCanonicalFileName); + addReferencedFile(typeFilePath); + }, sourceFile); // Add module augmentation as references if (sourceFile.moduleAugmentations.length) { diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 3601ed98c1e..1748e660e92 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -4959,7 +4959,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker { (isLiteralImportTypeNode(location) ? location : undefined)?.argument.literal; const mode = contextSpecifier && isStringLiteralLike(contextSpecifier) ? getModeForUsageLocation(currentSourceFile, contextSpecifier) : currentSourceFile.impliedNodeFormat; const moduleResolutionKind = getEmitModuleResolutionKind(compilerOptions); - const resolvedModule = host.resolvedModules?.get(currentSourceFile.path)?.get(moduleReference, mode)?.resolvedModule; + const resolvedModule = host.getResolvedModule(currentSourceFile, moduleReference, mode)?.resolvedModule; const resolutionDiagnostic = resolvedModule && getResolutionDiagnostic(compilerOptions, resolvedModule, currentSourceFile); const sourceFile = resolvedModule && (!resolutionDiagnostic || resolutionDiagnostic === Diagnostics.Module_0_was_resolved_to_1_but_jsx_is_not_set) diff --git a/src/compiler/program.ts b/src/compiler/program.ts index d5d7df674f2..cd43941cc6f 100644 --- a/src/compiler/program.ts +++ b/src/compiler/program.ts @@ -1175,7 +1175,7 @@ export function getReferencedFileLocation(program: Program, ref: ReferencedFile) switch (kind) { case FileIncludeKind.Import: const importLiteral = getModuleNameStringLiteralAt(file, index); - packageId = program.resolvedModules?.get(file.path)?.get(importLiteral.text, getModeForResolutionAtIndex(file, index))?.resolvedModule?.packageId; + packageId = program.getResolvedModule(file, importLiteral.text, getModeForResolutionAtIndex(file, index))?.resolvedModule?.packageId; if (importLiteral.pos === -1) return { file, packageId, text: importLiteral.text }; pos = skipTrivia(file.text, importLiteral.pos); end = importLiteral.end; @@ -1185,7 +1185,7 @@ export function getReferencedFileLocation(program: Program, ref: ReferencedFile) break; case FileIncludeKind.TypeReferenceDirective: ({ pos, end, resolutionMode } = file.typeReferenceDirectives[index]); - packageId = program.resolvedTypeReferenceDirectiveNames?.get(file.path)?.get(toFileNameLowerCase(file.typeReferenceDirectives[index].fileName), resolutionMode || file.impliedNodeFormat)?.resolvedTypeReferenceDirective?.packageId; + packageId = program.getResolvedTypeReferenceDirective(file, toFileNameLowerCase(file.typeReferenceDirectives[index].fileName), resolutionMode || file.impliedNodeFormat)?.resolvedTypeReferenceDirective?.packageId; break; case FileIncludeKind.LibReferenceDirective: ({ pos, end } = file.libReferenceDirectives[index]); @@ -1886,6 +1886,10 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg resolvedModules, resolvedTypeReferenceDirectiveNames, resolvedLibReferences, + getResolvedModule, + getResolvedTypeReferenceDirective, + forEachResolvedModule, + forEachResolvedTypeReferenceDirective, getCurrentPackagesMap: () => packageMap, typesPackageExists, packageBundlesTypes, @@ -1935,6 +1939,37 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg return program; + function getResolvedModule(file: SourceFile, moduleName: string, mode: ResolutionMode) { + return resolvedModules?.get(file.path)?.get(moduleName, mode); + } + + function getResolvedTypeReferenceDirective(file: SourceFile, typeDirectiveName: string, mode: ResolutionMode) { + return resolvedTypeReferenceDirectiveNames?.get(file.path)?.get(typeDirectiveName, mode); + } + + function forEachResolvedModule( + callback: (resolution: ResolvedModuleWithFailedLookupLocations, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + file?: SourceFile, + ) { + forEachResolution(resolvedModules, callback, file); + } + + function forEachResolvedTypeReferenceDirective( + callback: (resolution: ResolvedTypeReferenceDirectiveWithFailedLookupLocations, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + file?: SourceFile, + ): void { + forEachResolution(resolvedTypeReferenceDirectiveNames, callback, file); + } + + function forEachResolution( + resolutionCache: Map> | undefined, + callback: (resolution: T, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + file: SourceFile | undefined, + ) { + if (file) resolutionCache?.get(file.path)?.forEach((resolution, name, mode) => callback(resolution, name, mode, file.path)); + else resolutionCache?.forEach((resolutions, filePath) => resolutions.forEach((resolution, name, mode) => callback(resolution, name, mode, filePath))); + } + function getPackagesMap() { if (packageMap) return packageMap; packageMap = new Map(); @@ -1942,11 +1977,9 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg // This is useful as an approximation of whether a package bundles its own types. // Note: we only look at files already found by module resolution, // so there may be files we did not consider. - files.forEach(sf => - resolvedModules?.get(sf.path)?.forEach(({ resolvedModule }) => { - if (resolvedModule?.packageId) packageMap!.set(resolvedModule.packageId.name, resolvedModule.extension === Extension.Dts || !!packageMap!.get(resolvedModule.packageId.name)); - }) - ); + forEachResolvedModule(({ resolvedModule }) => { + if (resolvedModule?.packageId) packageMap!.set(resolvedModule.packageId.name, resolvedModule.extension === Extension.Dts || !!packageMap!.get(resolvedModule.packageId.name)); + }); return packageMap; } @@ -2119,7 +2152,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg // If the source file is unchanged and doesnt have invalidated resolution, reuse the module resolutions if (file === oldSourceFile && !hasInvalidatedResolutions(file.path)) { const mode = getModeForUsageLocation(file, moduleName); - const oldResolution = oldProgram?.resolvedModules?.get(file.path)?.get(moduleName.text, mode); + const oldResolution = oldProgram?.getResolvedModule(file, moduleName.text, mode); if (oldResolution?.resolvedModule) { if (isTraceEnabled(options, host)) { trace( @@ -2187,7 +2220,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg // If we change our policy of rechecking failed lookups on each program create, // we should adjust the value returned here. function moduleNameResolvesToAmbientModuleInNonModifiedFile(moduleName: StringLiteralLike): boolean { - const resolutionToFile = oldProgram?.resolvedModules?.get(file.path)?.get(moduleName.text, getModeForUsageLocation(file, moduleName))?.resolvedModule; + const resolutionToFile = oldProgram?.getResolvedModule(file, moduleName.text, getModeForUsageLocation(file, moduleName))?.resolvedModule; const resolvedFile = resolutionToFile && oldProgram!.getSourceFile(resolutionToFile.resolvedFileName); if (resolutionToFile && resolvedFile) { // In the old program, we resolved to an ambient module that was in the same @@ -2234,7 +2267,9 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg if (canReuseResolutions) { const typeDirectiveName = getTypeReferenceResolutionName(entry); const mode = getModeForFileReference(entry, containingSourceFile?.impliedNodeFormat); - const oldResolution = (!isString(containingFile) ? oldProgram?.resolvedTypeReferenceDirectiveNames?.get(containingFile.path) : oldProgram?.getAutomaticTypeDirectiveResolutions())?.get(typeDirectiveName, mode); + const oldResolution = !isString(containingFile) ? + oldProgram?.getResolvedTypeReferenceDirective(containingFile, typeDirectiveName, mode) : + oldProgram?.getAutomaticTypeDirectiveResolutions()?.get(typeDirectiveName, mode); if (oldResolution?.resolvedTypeReferenceDirective) { if (isTraceEnabled(options, host)) { trace( @@ -2476,22 +2511,29 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg const moduleNames = getModuleNames(newSourceFile); const resolutions = resolveModuleNamesReusingOldState(moduleNames, newSourceFile); (resolvedModulesProcessing ??= new Map()).set(newSourceFile.path, resolutions); - const oldResolutions = oldProgram.resolvedModules?.get(newSourceFile.path); // ensure that module resolution results are still correct - const resolutionsChanged = hasChangesInResolutions(moduleNames, newSourceFile, resolutions, oldResolutions, moduleResolutionIsEqualTo, moduleResolutionNameAndModeGetter); + const resolutionsChanged = hasChangesInResolutions( + moduleNames, + newSourceFile, + resolutions, + (name, mode) => oldProgram!.getResolvedModule(newSourceFile, name, mode), + moduleResolutionIsEqualTo, + moduleResolutionNameAndModeGetter, + ); if (resolutionsChanged) structureIsReused = StructureIsReused.SafeModules; const typesReferenceDirectives = newSourceFile.typeReferenceDirectives; const typeReferenceResolutions = resolveTypeReferenceDirectiveNamesReusingOldState(typesReferenceDirectives, newSourceFile); (resolvedTypeReferenceDirectiveNamesProcessing ??= new Map()).set(newSourceFile.path, typeReferenceResolutions); // ensure that types resolutions are still correct - const oldTypeResolutions = oldProgram.resolvedTypeReferenceDirectiveNames?.get(newSourceFile.path); - const typeReferenceResolutionsChanged = hasChangesInResolutions(typesReferenceDirectives, newSourceFile, typeReferenceResolutions, oldTypeResolutions, typeDirectiveIsEqualTo, typeReferenceResolutionNameAndModeGetter); - if (typeReferenceResolutionsChanged) { - structureIsReused = StructureIsReused.SafeModules; - } - else if (oldTypeResolutions) { - (resolvedTypeReferenceDirectiveNamesProcessing ??= new Map()).set(newSourceFile.path, oldTypeResolutions); - } + const typeReferenceResolutionsChanged = hasChangesInResolutions( + typesReferenceDirectives, + newSourceFile, + typeReferenceResolutions, + (name, mode) => oldProgram?.getResolvedTypeReferenceDirective(newSourceFile, name, mode), + typeDirectiveIsEqualTo, + typeReferenceResolutionNameAndModeGetter, + ); + if (typeReferenceResolutionsChanged) structureIsReused = StructureIsReused.SafeModules; } if (structureIsReused !== StructureIsReused.Completely) { @@ -4931,7 +4973,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg symlinks = createSymlinkCache(currentDirectory, getCanonicalFileName); } if (files && !symlinks.hasProcessedResolutions()) { - symlinks.setSymlinksFromResolutions(resolvedModules, resolvedTypeReferenceDirectiveNames, automaticTypeDirectiveResolutions); + symlinks.setSymlinksFromResolutions(forEachResolvedModule, forEachResolvedTypeReferenceDirective, automaticTypeDirectiveResolutions); } return symlinks; } diff --git a/src/compiler/types.ts b/src/compiler/types.ts index 31b70fbc1bb..03820217c8a 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -4651,6 +4651,20 @@ export interface Program extends ScriptReferenceHost { resolvedModules: Map> | undefined; /** @internal */ resolvedTypeReferenceDirectiveNames: Map> | undefined; + /** @internal */ + getResolvedModule(f: SourceFile, moduleName: string, mode: ResolutionMode): ResolvedModuleWithFailedLookupLocations | undefined; + /** @internal */ + getResolvedTypeReferenceDirective(f: SourceFile, typeDirectiveName: string, mode: ResolutionMode): ResolvedTypeReferenceDirectiveWithFailedLookupLocations | undefined; + /** @internal */ + forEachResolvedModule( + callback: (resolution: ResolvedModuleWithFailedLookupLocations, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + file?: SourceFile, + ): void; + /** @internal */ + forEachResolvedTypeReferenceDirective( + callback: (resolution: ResolvedTypeReferenceDirectiveWithFailedLookupLocations, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + file?: SourceFile, + ): void; /** * Emits the JavaScript and declaration files. If targetSourceFile is not specified, then @@ -4868,7 +4882,7 @@ export interface TypeCheckerHost extends ModuleSpecifierResolutionHost { getProjectReferenceRedirect(fileName: string): string | undefined; isSourceOfProjectReferenceRedirect(fileName: string): boolean; - resolvedModules: Map> | undefined; + getResolvedModule(f: SourceFile, moduleName: string, mode: ResolutionMode): ResolvedModuleWithFailedLookupLocations | undefined; readonly redirectTargetsMap: RedirectTargetsMap; diff --git a/src/compiler/utilities.ts b/src/compiler/utilities.ts index 2459c145c17..e7f376029eb 100644 --- a/src/compiler/utilities.ts +++ b/src/compiler/utilities.ts @@ -766,7 +766,7 @@ export function moduleResolutionIsEqualTo(oldResolution: ResolvedModuleWithFaile /** @internal */ export function createModuleNotFoundChain(sourceFile: SourceFile, host: TypeCheckerHost, moduleReference: string, mode: ResolutionMode, packageName: string) { - const node10Result = host.resolvedModules?.get(sourceFile.path)?.get(moduleReference, mode)?.node10Result; + const node10Result = host.getResolvedModule(sourceFile, moduleReference, mode)?.node10Result; const result = node10Result ? chainDiagnosticMessages( /*details*/ undefined, @@ -828,7 +828,7 @@ export function hasChangesInResolutions( names: readonly K[], newSourceFile: SourceFile, newResolutions: readonly V[], - oldResolutions: ModeAwareCache | undefined, + getOldResolution: (name: string, mode: ResolutionMode) => V | undefined, comparer: (oldResolution: V, newResolution: V) => boolean, nameAndModeGetter: ResolutionNameAndModeGetter, ): boolean { @@ -839,7 +839,7 @@ export function hasChangesInResolutions( const entry = names[i]; const name = nameAndModeGetter.getName(entry); const mode = nameAndModeGetter.getMode(entry, newSourceFile); - const oldResolution = oldResolutions && oldResolutions.get(name, mode); + const oldResolution = getOldResolution(name, mode); const changed = oldResolution ? !newResolution || !comparer(oldResolution, newResolution) : newResolution; @@ -8825,8 +8825,12 @@ export interface SymlinkCache { * `hasProcessedResolutions` returns false (once per cache instance). */ setSymlinksFromResolutions( - resolvedModules: Map> | undefined, - resolvedTypeReferenceDirectiveNames: Map> | undefined, + forEachResolvedModule: ( + callback: (resolution: ResolvedModuleWithFailedLookupLocations, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + ) => void, + forEachResolvedTypeReferenceDirective: ( + callback: (resolution: ResolvedTypeReferenceDirectiveWithFailedLookupLocations, moduleName: string, mode: ResolutionMode, filePath: Path) => void, + ) => void, typeReferenceDirectives: ModeAwareCache, ): void; /** @@ -8860,11 +8864,11 @@ export function createSymlinkCache(cwd: string, getCanonicalFileName: GetCanonic (symlinkedDirectories || (symlinkedDirectories = new Map())).set(symlinkPath, real); } }, - setSymlinksFromResolutions(resolvedModules, resolvedTypeReferenceDirectiveNames, typeReferenceDirectives) { + setSymlinksFromResolutions(forEachResolvedModule, forEachResolvedTypeReferenceDirective, typeReferenceDirectives) { Debug.assert(!hasProcessedResolutions); hasProcessedResolutions = true; - resolvedModules?.forEach(cache => cache.forEach(resolution => processResolution(this, resolution.resolvedModule))); - resolvedTypeReferenceDirectiveNames?.forEach(cache => cache.forEach(resolution => processResolution(this, resolution.resolvedTypeReferenceDirective))); + forEachResolvedModule(resolution => processResolution(this, resolution.resolvedModule)); + forEachResolvedTypeReferenceDirective(resolution => processResolution(this, resolution.resolvedTypeReferenceDirective)); typeReferenceDirectives.forEach(resolution => processResolution(this, resolution.resolvedTypeReferenceDirective)); }, hasProcessedResolutions: () => hasProcessedResolutions, diff --git a/src/server/project.ts b/src/server/project.ts index 2923a813177..ef6d87a1a61 100644 --- a/src/server/project.ts +++ b/src/server/project.ts @@ -607,8 +607,8 @@ export abstract class Project implements LanguageServiceHost, ModuleResolutionHo } if (this.program && !this.symlinks.hasProcessedResolutions()) { this.symlinks.setSymlinksFromResolutions( - this.program.resolvedModules, - this.program.resolvedTypeReferenceDirectiveNames, + this.program.forEachResolvedModule, + this.program.forEachResolvedTypeReferenceDirective, this.program.getAutomaticTypeDirectiveResolutions(), ); } @@ -2254,10 +2254,8 @@ function extractUnresolvedImportsFromSourceFile( cachedUnresolvedImportsPerFile: Map, ): readonly string[] { return getOrUpdate(cachedUnresolvedImportsPerFile, file.path, () => { - const resolvedModules = program.resolvedModules?.get(file.path); - if (!resolvedModules) return emptyArray; let unresolvedImports: string[] | undefined; - resolvedModules.forEach(({ resolvedModule }, name) => { + program.forEachResolvedModule(({ resolvedModule }, name) => { // pick unresolved non-relative names if ( (!resolvedModule || !resolutionExtensionIsTSOrJson(resolvedModule.extension)) && @@ -2266,7 +2264,7 @@ function extractUnresolvedImportsFromSourceFile( ) { unresolvedImports = append(unresolvedImports, parsePackageName(name).packageName); } - }); + }, file); return unresolvedImports || emptyArray; }); } diff --git a/src/services/codefixes/convertToEsModule.ts b/src/services/codefixes/convertToEsModule.ts index 50209016301..4c7c6ab8304 100644 --- a/src/services/codefixes/convertToEsModule.ts +++ b/src/services/codefixes/convertToEsModule.ts @@ -107,7 +107,7 @@ function fixImportOfModuleExports( quotePreference: QuotePreference, ) { for (const moduleSpecifier of importingFile.imports) { - const imported = program.resolvedModules?.get(importingFile.path)?.get(moduleSpecifier.text, getModeForUsageLocation(importingFile, moduleSpecifier))?.resolvedModule; + const imported = program.getResolvedModule(importingFile, moduleSpecifier.text, getModeForUsageLocation(importingFile, moduleSpecifier))?.resolvedModule; if (!imported || imported.resolvedFileName !== exportingFile.fileName) { continue; } diff --git a/src/services/codefixes/fixImportNonExportedMember.ts b/src/services/codefixes/fixImportNonExportedMember.ts index c8e65a0d4b5..62d82a42c49 100644 --- a/src/services/codefixes/fixImportNonExportedMember.ts +++ b/src/services/codefixes/fixImportNonExportedMember.ts @@ -119,7 +119,7 @@ function getInfo(sourceFile: SourceFile, pos: number, program: Program): Info | const moduleSpecifier = isStringLiteral(importDeclaration.moduleSpecifier) ? importDeclaration.moduleSpecifier.text : undefined; if (moduleSpecifier === undefined) return undefined; - const resolvedModule = program.resolvedModules?.get(sourceFile.path)?.get(moduleSpecifier, /*mode*/ undefined)?.resolvedModule; + const resolvedModule = program.getResolvedModule(sourceFile, moduleSpecifier, /*mode*/ undefined)?.resolvedModule; if (resolvedModule === undefined) return undefined; const moduleSourceFile = program.getSourceFile(resolvedModule.resolvedFileName); diff --git a/src/services/codefixes/fixSpelling.ts b/src/services/codefixes/fixSpelling.ts index d979a0fdb53..687c16cbb99 100644 --- a/src/services/codefixes/fixSpelling.ts +++ b/src/services/codefixes/fixSpelling.ts @@ -182,7 +182,7 @@ function convertSemanticMeaningToSymbolFlags(meaning: SemanticMeaning): SymbolFl function getResolvedSourceFileFromImportDeclaration(sourceFile: SourceFile, context: CodeFixContextBase, importDeclaration: ImportDeclaration): SourceFile | undefined { if (!importDeclaration || !isStringLiteralLike(importDeclaration.moduleSpecifier)) return undefined; - const resolvedModule = context.program.resolvedModules?.get(sourceFile.path)?.get(importDeclaration.moduleSpecifier.text, getModeForUsageLocation(sourceFile, importDeclaration.moduleSpecifier))?.resolvedModule; + const resolvedModule = context.program.getResolvedModule(sourceFile, importDeclaration.moduleSpecifier.text, getModeForUsageLocation(sourceFile, importDeclaration.moduleSpecifier))?.resolvedModule; if (!resolvedModule) return undefined; return context.program.getSourceFile(resolvedModule.resolvedFileName); diff --git a/src/services/codefixes/importFixes.ts b/src/services/codefixes/importFixes.ts index a552dbe46b6..e6c3eda6e2b 100644 --- a/src/services/codefixes/importFixes.ts +++ b/src/services/codefixes/importFixes.ts @@ -1427,7 +1427,7 @@ function promoteFromTypeOnly( // Change .ts extension to .js if necessary if (!compilerOptions.allowImportingTsExtensions) { const moduleSpecifier = tryGetModuleSpecifierFromDeclaration(importClause.parent); - const resolvedModule = moduleSpecifier && program.resolvedModules?.get(sourceFile.path)?.get(moduleSpecifier.text, getModeForUsageLocation(sourceFile, moduleSpecifier))?.resolvedModule; + const resolvedModule = moduleSpecifier && program.getResolvedModule(sourceFile, moduleSpecifier.text, getModeForUsageLocation(sourceFile, moduleSpecifier))?.resolvedModule; if (resolvedModule?.resolvedUsingTsExtension) { const changedExtension = changeAnyExtension(moduleSpecifier!.text, getOutputExtension(moduleSpecifier!.text, compilerOptions)); changes.replaceNode(sourceFile, moduleSpecifier!, factory.createStringLiteral(changedExtension)); diff --git a/src/services/findAllReferences.ts b/src/services/findAllReferences.ts index bdf9884ad3f..9dc0f88bf85 100644 --- a/src/services/findAllReferences.ts +++ b/src/services/findAllReferences.ts @@ -1009,7 +1009,7 @@ export namespace Core { if (!options.implementations && isStringLiteralLike(node)) { if (isModuleSpecifierLike(node)) { const fileIncludeReasons = program.getFileIncludeReasons(); - const referencedFileName = program.resolvedModules?.get(node.getSourceFile().path)?.get(node.text, getModeForUsageLocation(node.getSourceFile(), node))?.resolvedModule?.resolvedFileName; + const referencedFileName = program.getResolvedModule(node.getSourceFile(), node.text, getModeForUsageLocation(node.getSourceFile(), node))?.resolvedModule?.resolvedFileName; const referencedFile = referencedFileName ? program.getSourceFile(referencedFileName) : undefined; if (referencedFile) { return [{ definition: { type: DefinitionKind.String, node }, references: getReferencesForNonModule(referencedFile, fileIncludeReasons, program) || emptyArray }]; diff --git a/src/services/getEditsForFileRename.ts b/src/services/getEditsForFileRename.ts index 8b575408392..e9b5245f0e1 100644 --- a/src/services/getEditsForFileRename.ts +++ b/src/services/getEditsForFileRename.ts @@ -249,7 +249,7 @@ function getSourceFileToImport( else { const mode = getModeForUsageLocation(importingSourceFile, importLiteral); const resolved = host.resolveModuleNameLiterals || !host.resolveModuleNames ? - program.resolvedModules?.get(importingSourceFile.path)?.get(importLiteral.text, mode) : + program.getResolvedModule(importingSourceFile, importLiteral.text, mode) : host.getResolvedModuleWithFailedLookupLocationsFromCache && host.getResolvedModuleWithFailedLookupLocationsFromCache(importLiteral.text, importingSourceFile.fileName, mode); return getSourceFileToImportFromResolved(importLiteral, resolved, oldToNew, program.getSourceFiles()); } diff --git a/src/services/goToDefinition.ts b/src/services/goToDefinition.ts index b7c31a473cb..c603c6c7bab 100644 --- a/src/services/goToDefinition.ts +++ b/src/services/goToDefinition.ts @@ -82,6 +82,7 @@ import { NodeFlags, ObjectFlags, Program, + ResolvedModuleWithFailedLookupLocations, resolvePath, ScriptElementKind, SignatureDeclaration, @@ -179,7 +180,7 @@ export function getDefinitionAtPosition(program: Program, sourceFile: SourceFile if (!symbol && isModuleSpecifierLike(fallbackNode)) { // We couldn't resolve the module specifier as an external module, but it could // be that module resolution succeeded but the target was not a module. - const ref = program.resolvedModules?.get(sourceFile.path)?.get(fallbackNode.text, getModeForUsageLocation(sourceFile, fallbackNode))?.resolvedModule; + const ref = program.getResolvedModule(sourceFile, fallbackNode.text, getModeForUsageLocation(sourceFile, fallbackNode))?.resolvedModule; if (ref) { return [{ name: fallbackNode.text, @@ -332,11 +333,11 @@ export function getReferenceAtPosition(sourceFile: SourceFile, position: number, return file && { reference: libReferenceDirective, fileName: file.fileName, file, unverified: false }; } - const resolvedModules = program.resolvedModules?.get(sourceFile.path); - if (resolvedModules?.size()) { + if (sourceFile.imports.length || sourceFile.moduleAugmentations.length) { const node = getTouchingToken(sourceFile, position); - if (isModuleSpecifierLike(node) && isExternalModuleNameRelative(node.text) && resolvedModules.has(node.text, getModeForUsageLocation(sourceFile, node))) { - const verifiedFileName = resolvedModules.get(node.text, getModeForUsageLocation(sourceFile, node))?.resolvedModule?.resolvedFileName; + let resolution: ResolvedModuleWithFailedLookupLocations | undefined; + if (isModuleSpecifierLike(node) && isExternalModuleNameRelative(node.text) && (resolution = program.getResolvedModule(sourceFile, node.text, getModeForUsageLocation(sourceFile, node)))) { + const verifiedFileName = resolution.resolvedModule?.resolvedFileName; const fileName = verifiedFileName || resolvePath(getDirectoryPath(sourceFile.fileName), node.text); return { file: program.getSourceFile(fileName), diff --git a/src/services/refactors/moveToFile.ts b/src/services/refactors/moveToFile.ts index 6aa33130a95..effd9437519 100644 --- a/src/services/refactors/moveToFile.ts +++ b/src/services/refactors/moveToFile.ts @@ -310,7 +310,7 @@ function getTargetFileImportsAndAddExportInOldFile( forEachImportInStatement(oldStatement, i => { // Recomputing module specifier const moduleSpecifier = moduleSpecifierFromImport(i); - const resolved = program.resolvedModules?.get(oldFile.path)?.get(moduleSpecifier.text, getModeForUsageLocation(oldFile, moduleSpecifier)); + const resolved = program.getResolvedModule(oldFile, moduleSpecifier.text, getModeForUsageLocation(oldFile, moduleSpecifier)); const fileName = resolved?.resolvedModule?.resolvedFileName; if (fileName && targetSourceFile) { const newModuleSpecifier = getModuleSpecifier(program.getCompilerOptions(), targetSourceFile, targetSourceFile.path, fileName, createModuleSpecifierResolutionHost(program, host)); diff --git a/src/services/suggestionDiagnostics.ts b/src/services/suggestionDiagnostics.ts index fc72c0289bc..5d89f61c93b 100644 --- a/src/services/suggestionDiagnostics.ts +++ b/src/services/suggestionDiagnostics.ts @@ -88,7 +88,7 @@ export function computeSuggestionDiagnostics(sourceFile: SourceFile, program: Pr const importNode = importFromModuleSpecifier(moduleSpecifier); const name = importNameForConvertToDefaultImport(importNode); if (!name) continue; - const module = program.resolvedModules?.get(sourceFile.path)?.get(moduleSpecifier.text, getModeForUsageLocation(sourceFile, moduleSpecifier))?.resolvedModule; + const module = program.getResolvedModule(sourceFile, moduleSpecifier.text, getModeForUsageLocation(sourceFile, moduleSpecifier))?.resolvedModule; const resolvedFile = module && program.getSourceFile(module.resolvedFileName); if (resolvedFile && resolvedFile.externalModuleIndicator && resolvedFile.externalModuleIndicator !== true && isExportAssignment(resolvedFile.externalModuleIndicator) && resolvedFile.externalModuleIndicator.isExportEquals) { diags.push(createDiagnosticForNode(name, Diagnostics.Import_may_be_converted_to_a_default_import)); diff --git a/src/testRunner/unittests/reuseProgramStructure.ts b/src/testRunner/unittests/reuseProgramStructure.ts index c1bf71a3c8e..dfd917adff9 100644 --- a/src/testRunner/unittests/reuseProgramStructure.ts +++ b/src/testRunner/unittests/reuseProgramStructure.ts @@ -19,18 +19,35 @@ import { } from "./helpers/virtualFileSystemWithWatch"; describe("unittests:: Reuse program structure:: General", () => { - function baselineCache(baselines: string[], cacheType: string, cache: ts.ModeAwareCache | undefined) { - baselines.push(`${cacheType}: ${!cache ? cache : ""}`); - cache?.forEach((resolved, key, mode) => baselines.push(`${key}: ${mode ? ts.getNameOfCompilerOptionValue(mode, ts.moduleOptionDeclaration.type) + ": " : ""}${JSON.stringify(resolved, /*replacer*/ undefined, 2)}`)); + function baselineCache( + baselines: string[], + cacheType: string, + file: File, + forEach: ( + callback: (resolvedModule: T, moduleName: string, mode: ts.ResolutionMode) => void, + file: File, + ) => void, + ) { + let addedHeader = false; + forEach(baselineResolution, file); + + function baselineResolution(resolved: T, key: string, mode: ts.ResolutionMode) { + if (!addedHeader) { + addedHeader = true; + baselines.push(`${cacheType}:`); + } + baselines.push(`${key}: ${mode ? ts.getNameOfCompilerOptionValue(mode, ts.moduleOptionDeclaration.type) + ": " : ""}${JSON.stringify(resolved, /*replacer*/ undefined, 2)}`); + } } function baselineProgram(baselines: string[], program: ts.Program, host?: TestCompilerHost) { baselines.push(`Program Reused:: ${(ts as any).StructureIsReused[program.structureIsReused]}`); program.getSourceFiles().forEach(f => { baselines.push(`File: ${f.fileName}`, f.text); - baselineCache(baselines, "resolvedModules", program.resolvedModules?.get(f.path)); - baselineCache(baselines, "resolvedTypeReferenceDirectiveNames", program.resolvedTypeReferenceDirectiveNames?.get(f.path)); + baselineCache(baselines, "resolvedModules", f, program.forEachResolvedModule); + baselineCache(baselines, "resolvedTypeReferenceDirectiveNames", f, program.forEachResolvedTypeReferenceDirective); baselines.push(""); }); + baselineCache(baselines, "automaticTypeDirectiveResolutions", /*file*/ undefined, cb => program.getAutomaticTypeDirectiveResolutions().forEach(cb)); host ??= (program as ProgramWithSourceTexts).host; host.getTrace().forEach(trace => baselines.push(Utils.sanitizeTraceResolutionLogEntry(trace))); host.clearTrace(); diff --git a/src/testRunner/unittests/tsserver/symlinkCache.ts b/src/testRunner/unittests/tsserver/symlinkCache.ts index 796f0fec2d7..faca21587bc 100644 --- a/src/testRunner/unittests/tsserver/symlinkCache.ts +++ b/src/testRunner/unittests/tsserver/symlinkCache.ts @@ -82,7 +82,7 @@ describe("unittests:: tsserver:: symlinkCache", () => { resolvedFileName: "/one/two/foo", }, }); - cache.setSymlinksFromResolutions(/*resolvedModules*/ undefined, /*resolvedTypeReferenceDirectiveNames*/ undefined, map); + cache.setSymlinksFromResolutions(ts.noop, ts.noop, map); }); }); diff --git a/src/testRunner/unittests/tsserver/typingsInstaller.ts b/src/testRunner/unittests/tsserver/typingsInstaller.ts index 70643697391..3f2aad137e0 100644 --- a/src/testRunner/unittests/tsserver/typingsInstaller.ts +++ b/src/testRunner/unittests/tsserver/typingsInstaller.ts @@ -2314,7 +2314,7 @@ describe("unittests:: tsserver:: typingsInstaller:: recomputing resolutions of u ts.server.updateProjectIfDirty(project); const program = project.getLanguageService().getProgram()!; const sourceFile = program.getSourceFileByPath(appPath)!; - const foooResolution = program.resolvedModules!.get(sourceFile.path)!.get("fooo", /*mode*/ undefined)!.resolvedModule!; + const foooResolution = program.getResolvedModule(sourceFile, "fooo", /*mode*/ undefined)!.resolvedModule!; assert.equal(foooResolution.resolvedFileName, foooPath); return foooResolution; } diff --git a/tests/baselines/reference/reuseProgramStructure/can-reuse-ambient-module-declarations-from-non-modified-files.js b/tests/baselines/reference/reuseProgramStructure/can-reuse-ambient-module-declarations-from-non-modified-files.js index a0a1b276127..b30631e9660 100644 --- a/tests/baselines/reference/reuseProgramStructure/can-reuse-ambient-module-declarations-from-non-modified-files.js +++ b/tests/baselines/reference/reuseProgramStructure/can-reuse-ambient-module-declarations-from-non-modified-files.js @@ -3,7 +3,7 @@ File: /a/b/app.ts import * as fs from 'fs' -resolvedModules: +resolvedModules: fs: { "failedLookupLocations": [ "/a/b/fs.ts", @@ -32,14 +32,11 @@ fs: { "/fs.jsx" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a/b/node.d.ts declare module 'fs' {} -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined ======== Resolving module 'fs' from '/a/b/app.ts'. ======== Module resolution kind is not specified, using 'Classic'. @@ -80,7 +77,7 @@ File: /a/b/app.ts import * as fs from 'fs' var x = 1; -resolvedModules: +resolvedModules: fs: { "failedLookupLocations": [ "/a/b/fs.ts", @@ -109,14 +106,11 @@ fs: { "/fs.jsx" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a/b/node.d.ts declare module 'fs' {} -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined Module 'fs' was resolved as ambient module declared in '/a/b/node.d.ts' since this file was not modified. @@ -130,7 +124,7 @@ File: /a/b/app.ts import * as fs from 'fs' var y = 1; -resolvedModules: +resolvedModules: fs: { "failedLookupLocations": [ "/a/b/fs.ts", @@ -159,14 +153,11 @@ fs: { "/fs.jsx" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a/b/node.d.ts declare var process: any -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined ======== Resolving module 'fs' from '/a/b/app.ts'. ======== Module resolution kind is not specified, using 'Classic'. diff --git a/tests/baselines/reference/reuseProgramStructure/can-reuse-module-resolutions-from-non-modified-files.js b/tests/baselines/reference/reuseProgramStructure/can-reuse-module-resolutions-from-non-modified-files.js index c2a6635ca85..004e9587fbf 100644 --- a/tests/baselines/reference/reuseProgramStructure/can-reuse-module-resolutions-from-non-modified-files.js +++ b/tests/baselines/reference/reuseProgramStructure/can-reuse-module-resolutions-from-non-modified-files.js @@ -3,43 +3,31 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts /// @@ -48,7 +36,7 @@ File: f1.ts import { B } from './b1'; export let BB = B; declare module './b1' { interface B { y: string; } } -resolvedModules: +resolvedModules: ./b1: { "resolvedModule": { "resolvedFileName": "b1.ts", @@ -57,7 +45,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs1: { "resolvedTypeReferenceDirective": { "primary": true, @@ -75,7 +63,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -92,7 +80,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, @@ -141,43 +129,31 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts /// @@ -185,7 +161,7 @@ File: f1.ts import { B } from './b1'; export let BB = B; declare module './b1' { interface B { y: string; } } -resolvedModules: +resolvedModules: ./b1: { "resolvedModule": { "resolvedFileName": "b1.ts", @@ -194,7 +170,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs1: { "resolvedTypeReferenceDirective": { "primary": true, @@ -212,7 +188,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -229,7 +205,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, @@ -268,50 +244,38 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts /// import { B } from './b1'; export let BB = B; declare module './b1' { interface B { y: string; } } -resolvedModules: +resolvedModules: ./b1: { "resolvedModule": { "resolvedFileName": "b1.ts", @@ -320,7 +284,6 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined File: f2.ts /// @@ -328,7 +291,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -345,7 +308,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, @@ -379,50 +342,38 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts import { B } from './b1'; export let BB = B; declare module './b1' { interface B { y: string; } } -resolvedModules: +resolvedModules: ./b1: { "resolvedModule": { "resolvedFileName": "b1.ts", @@ -431,7 +382,6 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined File: f2.ts /// @@ -439,7 +389,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -456,7 +406,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, @@ -490,49 +440,37 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts import { B } from './b1'; declare module './b1' { interface B { y: string; } } -resolvedModules: +resolvedModules: ./b1: { "resolvedModule": { "resolvedFileName": "b1.ts", @@ -541,7 +479,6 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined File: f2.ts /// @@ -549,7 +486,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -566,7 +503,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, @@ -598,49 +535,37 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts import { B } from './b1'; -resolvedModules: +resolvedModules: ./b1: { "resolvedModule": { "resolvedFileName": "b1.ts", @@ -649,7 +574,6 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined File: f2.ts /// @@ -657,7 +581,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -674,7 +598,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, @@ -709,50 +633,36 @@ File: a1.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a2.ts let x = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b1.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b2.ts export class B { x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs1/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: node_modules/@types/typerefs2/index.d.ts declare let z: string; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f1.ts -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: f2.ts /// @@ -760,7 +670,7 @@ File: f2.ts import { B } from './b2'; import { BB } from './f1'; (new BB).x; (new BB).y; -resolvedModules: +resolvedModules: ./b2: { "resolvedModule": { "resolvedFileName": "b2.ts", @@ -777,7 +687,7 @@ resolvedModules: "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs2: { "resolvedTypeReferenceDirective": { "primary": true, diff --git a/tests/baselines/reference/reuseProgramStructure/change-affects-a-single-module-of-a-package.js b/tests/baselines/reference/reuseProgramStructure/change-affects-a-single-module-of-a-package.js index a6ec1e0691c..72d2d86b788 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-affects-a-single-module-of-a-package.js +++ b/tests/baselines/reference/reuseProgramStructure/change-affects-a-single-module-of-a-package.js @@ -3,14 +3,12 @@ File: /node_modules/b/internal.d.ts export const b = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts export * from './internal'; -resolvedModules: +resolvedModules: ./internal: { "resolvedModule": { "resolvedFileName": "/node_modules/b/internal.d.ts", @@ -31,13 +29,12 @@ resolvedModules: "/node_modules/b/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import {b} from 'b' var a = b; -resolvedModules: +resolvedModules: b: { "resolvedModule": { "resolvedFileName": "/node_modules/b/index.d.ts", @@ -61,7 +58,6 @@ b: { "/node_modules/b/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -74,14 +70,12 @@ File: /node_modules/b/internal.d.ts export const b = 2; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts export * from './internal'; -resolvedModules: +resolvedModules: ./internal: { "resolvedModule": { "resolvedFileName": "/node_modules/b/internal.d.ts", @@ -102,13 +96,12 @@ resolvedModules: "/node_modules/b/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import {b} from 'b' var a = b; -resolvedModules: +resolvedModules: b: { "resolvedModule": { "resolvedFileName": "/node_modules/b/index.d.ts", @@ -132,7 +125,6 @@ b: { "/node_modules/b/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/change-affects-imports.js b/tests/baselines/reference/reuseProgramStructure/change-affects-imports.js index b1af4711871..7a45a125154 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-affects-imports.js +++ b/tests/baselines/reference/reuseProgramStructure/change-affects-imports.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,7 +44,7 @@ File: c.ts import x from 'b' var z = 1; -resolvedModules: +resolvedModules: b: { "resolvedModule": { "resolvedFileName": "b.ts", @@ -58,14 +53,11 @@ b: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -75,8 +67,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/change-affects-tripleslash-references.js b/tests/baselines/reference/reuseProgramStructure/change-affects-tripleslash-references.js index ccb5fb4735f..18045e3e86b 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-affects-tripleslash-references.js +++ b/tests/baselines/reference/reuseProgramStructure/change-affects-tripleslash-references.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,15 +44,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts /// @@ -65,8 +56,6 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/change-affects-type-directives.js b/tests/baselines/reference/reuseProgramStructure/change-affects-type-directives.js index 01de928c937..3221fff6526 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-affects-type-directives.js +++ b/tests/baselines/reference/reuseProgramStructure/change-affects-type-directives.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,15 +44,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -66,8 +57,7 @@ File: a.ts /// var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs1: { "failedLookupLocations": [ "node_modules/@types/typerefs1/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/change-affects-type-references.js b/tests/baselines/reference/reuseProgramStructure/change-affects-type-references.js index e13a7eb95fd..b447d49cb82 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-affects-type-references.js +++ b/tests/baselines/reference/reuseProgramStructure/change-affects-type-references.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -36,6 +31,19 @@ typerefs: { ] } +automaticTypeDirectiveResolutions: +a: { + "failedLookupLocations": [ + "node_modules/@types/a/package.json", + "node_modules/@types/a/index.d.ts", + "node_modules/a/package.json", + "node_modules/a.d.ts", + "node_modules/a/index.d.ts", + "node_modules/@types/a/package.json", + "node_modules/@types/a.d.ts", + "node_modules/@types/a/index.d.ts" + ] +} MissingPaths:: ["non-existing-file.ts","lib.d.ts"] @@ -49,15 +57,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -67,8 +71,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -82,6 +85,19 @@ typerefs: { ] } +automaticTypeDirectiveResolutions: +b: { + "failedLookupLocations": [ + "node_modules/@types/b/package.json", + "node_modules/@types/b/index.d.ts", + "node_modules/b/package.json", + "node_modules/b.d.ts", + "node_modules/b/index.d.ts", + "node_modules/@types/b/package.json", + "node_modules/@types/b.d.ts", + "node_modules/@types/b/index.d.ts" + ] +} MissingPaths:: ["non-existing-file.ts","lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/change-does-not-affect-imports-or-type-refs.js b/tests/baselines/reference/reuseProgramStructure/change-does-not-affect-imports-or-type-refs.js index 102fa9c3086..b1167cc20c1 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-does-not-affect-imports-or-type-refs.js +++ b/tests/baselines/reference/reuseProgramStructure/change-does-not-affect-imports-or-type-refs.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,15 +44,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -67,8 +58,7 @@ File: a.ts var x = 100 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/change-doesnot-affect-type-references.js b/tests/baselines/reference/reuseProgramStructure/change-doesnot-affect-type-references.js index 1e7e9f8be90..6f5da2221ba 100644 --- a/tests/baselines/reference/reuseProgramStructure/change-doesnot-affect-type-references.js +++ b/tests/baselines/reference/reuseProgramStructure/change-doesnot-affect-type-references.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -36,6 +31,19 @@ typerefs: { ] } +automaticTypeDirectiveResolutions: +a: { + "failedLookupLocations": [ + "node_modules/@types/a/package.json", + "node_modules/@types/a/index.d.ts", + "node_modules/a/package.json", + "node_modules/a.d.ts", + "node_modules/a/index.d.ts", + "node_modules/@types/a/package.json", + "node_modules/@types/a.d.ts", + "node_modules/@types/a/index.d.ts" + ] +} MissingPaths:: ["non-existing-file.ts","lib.d.ts"] @@ -49,15 +57,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -67,8 +71,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -82,6 +85,19 @@ typerefs: { ] } +automaticTypeDirectiveResolutions: +a: { + "failedLookupLocations": [ + "node_modules/@types/a/package.json", + "node_modules/@types/a/index.d.ts", + "node_modules/a/package.json", + "node_modules/a.d.ts", + "node_modules/a/index.d.ts", + "node_modules/@types/a/package.json", + "node_modules/@types/a.d.ts", + "node_modules/@types/a/index.d.ts" + ] +} MissingPaths:: ["non-existing-file.ts","lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/config-path-changes.js b/tests/baselines/reference/reuseProgramStructure/config-path-changes.js index 1dd028d4ccb..f30dbc1a16f 100644 --- a/tests/baselines/reference/reuseProgramStructure/config-path-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/config-path-changes.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "/a/b/node_modules/@types/typerefs/package.json", @@ -53,15 +48,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -71,8 +62,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "/a/c/node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/fetches-imports-after-npm-install.js b/tests/baselines/reference/reuseProgramStructure/fetches-imports-after-npm-install.js index 5d92611f283..a5bf5df5b7c 100644 --- a/tests/baselines/reference/reuseProgramStructure/fetches-imports-after-npm-install.js +++ b/tests/baselines/reference/reuseProgramStructure/fetches-imports-after-npm-install.js @@ -3,7 +3,7 @@ File: file1.ts import * as a from "a"; const myX: number = a.x; -resolvedModules: +resolvedModules: a: { "failedLookupLocations": [ "node_modules/a/package.json", @@ -23,14 +23,11 @@ a: { "node_modules/a/index.jsx" ] } -resolvedTypeReferenceDirectiveNames: undefined File: file2.ts -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined ======== Resolving module 'a' from 'file1.ts'. ======== Explicitly specified module resolution kind: 'Node10'. @@ -66,14 +63,12 @@ File: node_modules/a/index.d.ts export declare let x: number; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: file1.ts import * as a from "a"; const myX: number = a.x; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "node_modules/a/index.d.ts", @@ -90,14 +85,11 @@ a: { "node_modules/a/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined File: file2.ts /// -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined ======== Resolving module 'a' from 'file1.ts'. ======== Explicitly specified module resolution kind: 'Node10'. diff --git a/tests/baselines/reference/reuseProgramStructure/missing-file-is-created.js b/tests/baselines/reference/reuseProgramStructure/missing-file-is-created.js index 33f09a3917b..e44d249ea79 100644 --- a/tests/baselines/reference/reuseProgramStructure/missing-file-is-created.js +++ b/tests/baselines/reference/reuseProgramStructure/missing-file-is-created.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,22 +44,16 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: non-existing-file.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -74,8 +63,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/missing-files-remain-missing.js b/tests/baselines/reference/reuseProgramStructure/missing-files-remain-missing.js index a31ec62764d..8a34bd96c96 100644 --- a/tests/baselines/reference/reuseProgramStructure/missing-files-remain-missing.js +++ b/tests/baselines/reference/reuseProgramStructure/missing-files-remain-missing.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,15 +44,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -67,8 +58,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/module-kind-changes.js b/tests/baselines/reference/reuseProgramStructure/module-kind-changes.js index 2f2b2cc7689..0fd85855f91 100644 --- a/tests/baselines/reference/reuseProgramStructure/module-kind-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/module-kind-changes.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -49,15 +44,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -67,8 +58,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-no-change.js b/tests/baselines/reference/reuseProgramStructure/redirect-no-change.js index d6851e614b6..60ced1319f6 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-no-change.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-no-change.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -123,14 +116,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -154,20 +145,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -191,13 +179,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; const x = 1; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -230,7 +217,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-previous-duplicate-packages.js b/tests/baselines/reference/reuseProgramStructure/redirect-previous-duplicate-packages.js index f7a11625082..e494ceb8496 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-previous-duplicate-packages.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-previous-duplicate-packages.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export = class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -125,14 +118,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -156,20 +147,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -193,13 +181,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -232,7 +219,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-target-changes.js b/tests/baselines/reference/reuseProgramStructure/redirect-target-changes.js index 83f61703a58..49716296d4b 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-target-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-target-changes.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -123,14 +116,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; private y: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -149,20 +140,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -186,13 +174,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -225,7 +212,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-underlying-changes.js b/tests/baselines/reference/reuseProgramStructure/redirect-underlying-changes.js index b22376b0f96..8266c0b0a8c 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-underlying-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-underlying-changes.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -123,14 +116,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -154,20 +145,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; private y: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -191,13 +179,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -230,7 +217,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-no-change.js b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-no-change.js index d6851e614b6..60ced1319f6 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-no-change.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-no-change.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -123,14 +116,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -154,20 +145,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -191,13 +179,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; const x = 1; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -230,7 +217,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-previous-duplicate-packages.js b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-previous-duplicate-packages.js index f7a11625082..e494ceb8496 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-previous-duplicate-packages.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-previous-duplicate-packages.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export = class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -125,14 +118,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -156,20 +147,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -193,13 +181,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -232,7 +219,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-target-changes.js b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-target-changes.js index 83f61703a58..49716296d4b 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-target-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-target-changes.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -123,14 +116,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; private y: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -149,20 +140,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -186,13 +174,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -225,7 +212,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-underlying-changes.js b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-underlying-changes.js index b22376b0f96..8266c0b0a8c 100644 --- a/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-underlying-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/redirect-with-getSourceFileByPath-underlying-changes.js @@ -3,14 +3,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -34,20 +32,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -71,13 +66,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -110,7 +104,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -123,14 +116,12 @@ File: /node_modules/a/node_modules/x/index.d.ts export default class X { private x: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/a/index.d.ts import X from "x"; export function a(x: X): void; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/a/node_modules/x/index.d.ts", @@ -154,20 +145,17 @@ x: { "/node_modules/a/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/node_modules/x/index.d.ts export default class X { private x: number; private y: number; } -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /node_modules/b/index.d.ts import X from "x"; export const b: X; -resolvedModules: +resolvedModules: x: { "resolvedModule": { "resolvedFileName": "/node_modules/b/node_modules/x/index.d.ts", @@ -191,13 +179,12 @@ x: { "/node_modules/b/node_modules/x/package.json" ] } -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts import { a } from "a"; import { b } from "b"; a(b) -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/node_modules/a/index.d.ts", @@ -230,7 +217,6 @@ b: { "/node_modules/b/index.tsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/resolution-cache-follows-imports.js b/tests/baselines/reference/reuseProgramStructure/resolution-cache-follows-imports.js index b9a3e2a4fc7..749a3ee2c20 100644 --- a/tests/baselines/reference/reuseProgramStructure/resolution-cache-follows-imports.js +++ b/tests/baselines/reference/reuseProgramStructure/resolution-cache-follows-imports.js @@ -3,14 +3,12 @@ File: b.ts var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts import {_} from 'b' var x = 1 -resolvedModules: +resolvedModules: b: { "resolvedModule": { "resolvedFileName": "b.ts", @@ -19,7 +17,6 @@ b: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -33,14 +30,12 @@ File: b.ts var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts import {_} from 'b' var x = 2 -resolvedModules: +resolvedModules: b: { "resolvedModule": { "resolvedFileName": "b.ts", @@ -49,7 +44,6 @@ b: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -63,8 +57,6 @@ File: a.ts var x = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -77,8 +69,6 @@ File: b.ts var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -86,7 +76,7 @@ import x from 'b' import y from 'c' var x = 2 -resolvedModules: +resolvedModules: b: { "resolvedModule": { "resolvedFileName": "b.ts", @@ -107,7 +97,6 @@ c: { "c.jsx" ] } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/resolved-type-directives-cache-follows-type-directives.js b/tests/baselines/reference/reuseProgramStructure/resolved-type-directives-cache-follows-type-directives.js index 4c0cd65d093..d99269c37cb 100644 --- a/tests/baselines/reference/reuseProgramStructure/resolved-type-directives-cache-follows-type-directives.js +++ b/tests/baselines/reference/reuseProgramStructure/resolved-type-directives-cache-follows-type-directives.js @@ -3,15 +3,12 @@ File: /types/typedefs/index.d.ts declare var $: number -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts /// var x = $ -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typedefs: { "resolvedTypeReferenceDirective": { "primary": true, @@ -35,15 +32,12 @@ File: /types/typedefs/index.d.ts declare var $: number -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts /// var x = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typedefs: { "resolvedTypeReferenceDirective": { "primary": true, @@ -67,8 +61,6 @@ File: /a.ts var x = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -81,8 +73,6 @@ File: /types/typedefs/index.d.ts declare var $: number -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: /a.ts /// @@ -90,8 +80,7 @@ File: /a.ts var x = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typedefs: { "resolvedTypeReferenceDirective": { "primary": true, diff --git a/tests/baselines/reference/reuseProgramStructure/resolvedImports-after-re-using-an-ambient-external-module-declaration.js b/tests/baselines/reference/reuseProgramStructure/resolvedImports-after-re-using-an-ambient-external-module-declaration.js index 3de657beb79..9beb9e804df 100644 --- a/tests/baselines/reference/reuseProgramStructure/resolvedImports-after-re-using-an-ambient-external-module-declaration.js +++ b/tests/baselines/reference/reuseProgramStructure/resolvedImports-after-re-using-an-ambient-external-module-declaration.js @@ -3,7 +3,7 @@ File: /a.ts import * as a from "a"; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/a.ts", @@ -12,7 +12,6 @@ a: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -25,7 +24,7 @@ File: /a.ts import * as aa from "a"; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/a.ts", @@ -34,7 +33,6 @@ a: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] diff --git a/tests/baselines/reference/reuseProgramStructure/rootdir-changes.js b/tests/baselines/reference/reuseProgramStructure/rootdir-changes.js index 563eddd3f96..95e201cc992 100644 --- a/tests/baselines/reference/reuseProgramStructure/rootdir-changes.js +++ b/tests/baselines/reference/reuseProgramStructure/rootdir-changes.js @@ -3,15 +3,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -21,8 +17,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", @@ -51,15 +46,11 @@ File: c.ts var z = 1; -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: b.ts /// var y = 2 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: undefined File: a.ts @@ -69,8 +60,7 @@ File: a.ts var x = 1 -resolvedModules: undefined -resolvedTypeReferenceDirectiveNames: +resolvedTypeReferenceDirectiveNames: typerefs: { "failedLookupLocations": [ "node_modules/@types/typerefs/package.json", diff --git a/tests/baselines/reference/reuseProgramStructure/works-with-updated-SourceFiles.js b/tests/baselines/reference/reuseProgramStructure/works-with-updated-SourceFiles.js index 269048aa8cf..99e81c6693e 100644 --- a/tests/baselines/reference/reuseProgramStructure/works-with-updated-SourceFiles.js +++ b/tests/baselines/reference/reuseProgramStructure/works-with-updated-SourceFiles.js @@ -3,7 +3,7 @@ File: /a.ts import * as a from "a";a; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/a.ts", @@ -12,7 +12,6 @@ a: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"] @@ -26,7 +25,7 @@ File: /a.ts 'use strict'; import * as a from "a";a; -resolvedModules: +resolvedModules: a: { "resolvedModule": { "resolvedFileName": "/a.ts", @@ -35,7 +34,6 @@ a: { "resolvedUsingTsExtension": false } } -resolvedTypeReferenceDirectiveNames: undefined MissingPaths:: ["lib.d.ts"]