Skip to content

Commit dd27288

Browse files
author
Andy
authored
Don't rename static 'this' when renaming class (#22235)
1 parent b90cdb2 commit dd27288

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

src/services/findAllReferences.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1010,7 +1010,7 @@ namespace ts.FindAllReferences.Core {
10101010

10111011
function addClassStaticThisReferences(referenceLocation: Node, search: Search, state: State): void {
10121012
addReference(referenceLocation, search.symbol, state);
1013-
if (isClassLike(referenceLocation.parent)) {
1013+
if (!state.options.isForRename && isClassLike(referenceLocation.parent)) {
10141014
Debug.assert(referenceLocation.parent.name === referenceLocation);
10151015
// This is the class declaration.
10161016
addStaticThisReferences(referenceLocation.parent, state.referenceAdder(search.symbol));

tests/cases/fourslash/findAllRefsClassWithStaticThisAccess.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,6 @@
99

1010
const [r0, r1, r2] = test.ranges();
1111
verify.referenceGroups(r0, [{ definition: "class C", ranges: [r0, r1, r2] }]);
12-
verify.referenceGroups([r1, r2], [{ definition: "this: typeof C", ranges: [r1, r2] }]);
12+
verify.singleReferenceGroup("this: typeof C", [r1, r2]);
13+
14+
verify.renameLocations(r0, [r0]);

0 commit comments

Comments
 (0)