@@ -10666,16 +10666,6 @@ namespace ts {
1066610666 type;
1066710667 }
1066810668
10669- function getWidenedLiteralLikeType(type: Type): Type {
10670- return type.flags & TypeFlags.EnumLiteral ? getBaseTypeOfEnumLiteralType(<LiteralType>type) :
10671- type.flags & TypeFlags.StringLiteral && type.flags & TypeFlags.FreshLiteral ? stringType :
10672- type.flags & TypeFlags.NumberLiteral && type.flags & TypeFlags.FreshLiteral ? numberType :
10673- type.flags & TypeFlags.BooleanLiteral ? booleanType :
10674- type.flags & TypeFlags.UniqueESSymbol ? esSymbolType :
10675- type.flags & TypeFlags.Union ? getUnionType(sameMap((<UnionType>type).types, getWidenedLiteralLikeType)) :
10676- type;
10677- }
10678-
1067910669 function getWidenedLiteralType(type: Type): Type {
1068010670 return type.flags & TypeFlags.EnumLiteral ? getBaseTypeOfEnumLiteralType(<LiteralType>type) :
1068110671 type.flags & TypeFlags.StringLiteral && type.flags & TypeFlags.FreshLiteral ? stringType :
@@ -10692,12 +10682,13 @@ namespace ts {
1069210682 }
1069310683
1069410684 function getWidenedLiteralLikeTypeForContextualType(type: Type, contextualType: Type) {
10695- const widenLiterals = !isLiteralContextualType(contextualType);
10696- const widenSymbols = !isUniqueESSymbolContextualType(contextualType);
10697- return widenLiterals && widenSymbols ? getWidenedLiteralLikeType(type) :
10698- widenLiterals ? getWidenedLiteralType(type) :
10699- widenSymbols ? getWidenedUniqueESSymbolType(type) :
10700- type;
10685+ if (!isLiteralContextualType(contextualType)) {
10686+ type = getWidenedLiteralType(type);
10687+ }
10688+ if (!isUniqueESSymbolContextualType(contextualType)) {
10689+ type = getWidenedUniqueESSymbolType(type);
10690+ }
10691+ return type;
1070110692 }
1070210693
1070310694 /**
0 commit comments