fix(38840): omit completions for a spread like argument in a function definition (#38897)

This commit is contained in:
Alexander T
2020-06-26 19:38:05 +03:00
committed by GitHub
parent 59f80970d9
commit 95690c0aca
2 changed files with 37 additions and 3 deletions

View File

@@ -962,12 +962,13 @@ namespace ts.Completions {
case SyntaxKind.PropertyAccessExpression:
propertyAccessToConvert = parent as PropertyAccessExpression;
node = propertyAccessToConvert.expression;
if (node.end === contextToken.pos &&
isCallExpression(node) &&
if ((isCallExpression(node) || isFunctionLike(node)) &&
node.end === contextToken.pos &&
node.getChildCount(sourceFile) &&
last(node.getChildren(sourceFile)).kind !== SyntaxKind.CloseParenToken) {
// This is likely dot from incorrectly parsed call expression and user is starting to write spread
// This is likely dot from incorrectly parsed expression and user is starting to write spread
// eg: Math.min(./**/)
// const x = function (./**/) {}
return undefined;
}
break;