Properly check singleton labeled tuple before unwrapping (#48554)

* properly check if singleton labeled tuple has optional element

* also check if labeled element is rest
This commit is contained in:
Gabriela Araujo Britto
2022-04-04 19:53:41 -03:00
committed by GitHub
parent aa3c5a787c
commit 99ea99b386
5 changed files with 118 additions and 1 deletions

View File

@@ -15860,7 +15860,11 @@ namespace ts {
}
function isSingletonTupleType(node: TypeNode) {
return isTupleTypeNode(node) && length(node.elements) === 1 && !isOptionalTypeNode(node.elements[0]) && !isRestTypeNode(node.elements[0]);
return isTupleTypeNode(node) &&
length(node.elements) === 1 &&
!isOptionalTypeNode(node.elements[0]) &&
!isRestTypeNode(node.elements[0]) &&
!(isNamedTupleMember(node.elements[0]) && (node.elements[0].questionToken || node.elements[0].dotDotDotToken));
}
/**