@@ -93,31 +93,34 @@ export default (
9393 }
9494 }
9595
96- ts . findAncestor ( node , ( n ) => {
97- if ( ts . isVariableDeclaration ( n ) && n . initializer && position < n . initializer . pos ) {
98- targetNode = n . initializer
99- return true
100- }
101- if ( ts . isCallExpression ( n ) && position < n . expression . end ) {
102- const pos = n . expression . end + 1
103- targetNode = [ pos , pos ]
104- return true
105- }
106- if ( ts . isArrowFunction ( n ) && position < n . equalsGreaterThanToken . end ) {
107- targetNode = n . body
108- return true
109- }
110- if ( ( ts . isForStatement ( n ) || ts . isForOfStatement ( n ) || ts . isForInStatement ( n ) || ts . isWhileStatement ( n ) ) && position < n . statement . pos ) {
111- targetNode = n . statement
112- return true
113- }
114- if ( ( ts . isIfStatement ( n ) ) && position < n . thenStatement . pos ) {
115- targetNode = n . thenStatement
116- return true
117- }
118- return false
119- } )
96+ if ( ! targetNode ) {
97+ ts . findAncestor ( node , ( n ) => {
98+ if ( ts . isVariableDeclaration ( n ) && n . initializer && position < n . initializer . pos ) {
99+ targetNode = n . initializer
100+ return true
101+ }
102+ if ( ts . isCallExpression ( n ) && position < n . expression . end ) {
103+ const pos = n . expression . end + 1
104+ targetNode = [ pos , pos ]
105+ return true
106+ }
107+ if ( ts . isArrowFunction ( n ) && position < n . body . pos ) {
108+ targetNode = n . body
109+ return true
110+ }
111+ if ( ( ts . isForStatement ( n ) || ts . isForOfStatement ( n ) || ts . isForInStatement ( n ) || ts . isWhileStatement ( n ) ) && position < n . statement . pos ) {
112+ targetNode = n . statement
113+ return true
114+ }
115+ if ( ( ts . isIfStatement ( n ) ) && position < n . thenStatement . pos ) {
116+ targetNode = n . thenStatement
117+ return true
118+ }
119+ return false
120+ } )
121+ }
120122 if ( targetNode && ! Array . isArray ( targetNode ) ) {
123+ // maybe additional node handling in future
121124 }
122125 if ( targetNode ) {
123126 return {
0 commit comments