diff --git a/src/services/utilities.ts b/src/services/utilities.ts index 075070d8762a5..938fce43d06e7 100644 --- a/src/services/utilities.ts +++ b/src/services/utilities.ts @@ -92,7 +92,11 @@ namespace ts { if (node.kind === SyntaxKind.SourceFile) { return SemanticMeaning.Value; } - else if (node.parent.kind === SyntaxKind.ExportAssignment || node.parent.kind === SyntaxKind.ExternalModuleReference) { + else if (node.parent.kind === SyntaxKind.ExportAssignment + || node.parent.kind === SyntaxKind.ExternalModuleReference + || node.parent.kind === SyntaxKind.ImportSpecifier + || node.parent.kind === SyntaxKind.ImportClause + || isImportEqualsDeclaration(node.parent) && node === node.parent.name) { return SemanticMeaning.All; } else if (isInRightSideOfInternalImportEqualsDeclaration(node)) { diff --git a/tests/baselines/reference/renameImportSpecifierPropertyName.baseline b/tests/baselines/reference/renameImportSpecifierPropertyName.baseline new file mode 100644 index 0000000000000..495a8f635b8a5 --- /dev/null +++ b/tests/baselines/reference/renameImportSpecifierPropertyName.baseline @@ -0,0 +1,7 @@ +/*====== /tests/cases/fourslash/canada.ts ======*/ + +export interface [|RENAME|] {} + +/*====== /tests/cases/fourslash/dry.ts ======*/ + +import { RENAME as Ale } from './canada'; diff --git a/tests/cases/fourslash/renameImportSpecifierPropertyName.ts b/tests/cases/fourslash/renameImportSpecifierPropertyName.ts new file mode 100644 index 0000000000000..fa4d13929a0d5 --- /dev/null +++ b/tests/cases/fourslash/renameImportSpecifierPropertyName.ts @@ -0,0 +1,9 @@ +/// + +// @Filename: canada.ts +////export interface /**/Ginger {} + +// @Filename: dry.ts +////import { Ginger as Ale } from './canada'; + +verify.baselineRename("", {});