@typescript-deploys/pr-build 4.6.0-pr-47550-2 → 4.6.0-pr-47607-13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/tsc.js CHANGED
@@ -69,15 +69,21 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
69
69
  var ts;
70
70
  (function (ts) {
71
71
  ts.versionMajorMinor = "4.6";
72
- ts.version = ts.versionMajorMinor + ".0-insiders.20220121";
72
+ ts.version = ts.versionMajorMinor + ".0-insiders.20220127";
73
73
  var NativeCollections;
74
74
  (function (NativeCollections) {
75
+ var globals = typeof globalThis !== "undefined" ? globalThis :
76
+ typeof global !== "undefined" ? global :
77
+ typeof self !== "undefined" ? self :
78
+ undefined;
75
79
  function tryGetNativeMap() {
76
- return typeof Map !== "undefined" && "entries" in Map.prototype && new Map([[0, 0]]).size === 1 ? Map : undefined;
80
+ var gMap = globals === null || globals === void 0 ? void 0 : globals.Map;
81
+ return typeof gMap !== "undefined" && "entries" in gMap.prototype && new gMap([[0, 0]]).size === 1 ? gMap : undefined;
77
82
  }
78
83
  NativeCollections.tryGetNativeMap = tryGetNativeMap;
79
84
  function tryGetNativeSet() {
80
- return typeof Set !== "undefined" && "entries" in Set.prototype && new Set([0]).size === 1 ? Set : undefined;
85
+ var gSet = globals === null || globals === void 0 ? void 0 : globals.Set;
86
+ return typeof gSet !== "undefined" && "entries" in gSet.prototype && new gSet([0]).size === 1 ? gSet : undefined;
81
87
  }
82
88
  NativeCollections.tryGetNativeSet = tryGetNativeSet;
83
89
  })(NativeCollections || (NativeCollections = {}));
@@ -5738,6 +5744,7 @@ var ts;
5738
5744
  Cannot_assign_to_0_because_it_is_an_import: diag(2632, ts.DiagnosticCategory.Error, "Cannot_assign_to_0_because_it_is_an_import_2632", "Cannot assign to '{0}' because it is an import."),
5739
5745
  JSX_property_access_expressions_cannot_include_JSX_namespace_names: diag(2633, ts.DiagnosticCategory.Error, "JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633", "JSX property access expressions cannot include JSX namespace names"),
5740
5746
  _0_index_signatures_are_incompatible: diag(2634, ts.DiagnosticCategory.Error, "_0_index_signatures_are_incompatible_2634", "'{0}' index signatures are incompatible."),
5747
+ Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable: diag(2635, ts.DiagnosticCategory.Error, "Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635", "Type '{0}' has no signatures for which the type argument list is applicable."),
5741
5748
  Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity: diag(2649, ts.DiagnosticCategory.Error, "Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649", "Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),
5742
5749
  A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums: diag(2651, ts.DiagnosticCategory.Error, "A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651", "A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),
5743
5750
  Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead: diag(2652, ts.DiagnosticCategory.Error, "Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652", "Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),
@@ -6681,6 +6688,8 @@ var ts;
6681
6688
  Remove_unused_declarations_for_Colon_0: diag(90041, ts.DiagnosticCategory.Message, "Remove_unused_declarations_for_Colon_0_90041", "Remove unused declarations for: '{0}'"),
6682
6689
  Declare_a_private_field_named_0: diag(90053, ts.DiagnosticCategory.Message, "Declare_a_private_field_named_0_90053", "Declare a private field named '{0}'."),
6683
6690
  Includes_imports_of_types_referenced_by_0: diag(90054, ts.DiagnosticCategory.Message, "Includes_imports_of_types_referenced_by_0_90054", "Includes imports of types referenced by '{0}'"),
6691
+ Remove_type_from_import_declaration_from_0: diag(90055, ts.DiagnosticCategory.Message, "Remove_type_from_import_declaration_from_0_90055", "Remove 'type' from import declaration from \"{0}\""),
6692
+ Remove_type_from_import_of_0_from_1: diag(90056, ts.DiagnosticCategory.Message, "Remove_type_from_import_of_0_from_1_90056", "Remove 'type' from import of '{0}' from \"{1}\""),
6684
6693
  Convert_function_to_an_ES2015_class: diag(95001, ts.DiagnosticCategory.Message, "Convert_function_to_an_ES2015_class_95001", "Convert function to an ES2015 class"),
6685
6694
  Convert_0_to_1_in_0: diag(95003, ts.DiagnosticCategory.Message, "Convert_0_to_1_in_0_95003", "Convert '{0}' to '{1} in {0}'"),
6686
6695
  Extract_to_0_in_1: diag(95004, ts.DiagnosticCategory.Message, "Extract_to_0_in_1_95004", "Extract to {0} in {1}"),
@@ -10085,6 +10094,7 @@ var ts;
10085
10094
  case 110:
10086
10095
  case 106:
10087
10096
  case 229:
10097
+ case 227:
10088
10098
  case 230:
10089
10099
  case 100:
10090
10100
  return true;
@@ -10667,10 +10677,13 @@ var ts;
10667
10677
  function packageIdIsEqual(a, b) {
10668
10678
  return a === b || !!a && !!b && a.name === b.name && a.subModuleName === b.subModuleName && a.version === b.version;
10669
10679
  }
10670
- function packageIdToString(_a) {
10671
- var name = _a.name, subModuleName = _a.subModuleName, version = _a.version;
10672
- var fullName = subModuleName ? name + "/" + subModuleName : name;
10673
- return fullName + "@" + version;
10680
+ function packageIdToPackageName(_a) {
10681
+ var name = _a.name, subModuleName = _a.subModuleName;
10682
+ return subModuleName ? name + "/" + subModuleName : name;
10683
+ }
10684
+ ts.packageIdToPackageName = packageIdToPackageName;
10685
+ function packageIdToString(packageId) {
10686
+ return packageIdToPackageName(packageId) + "@" + packageId.version;
10674
10687
  }
10675
10688
  ts.packageIdToString = packageIdToString;
10676
10689
  function typeDirectiveIsEqualTo(oldResolution, newResolution) {
@@ -11396,6 +11409,15 @@ var ts;
11396
11409
  };
11397
11410
  }
11398
11411
  ts.createDiagnosticForFileFromMessageChain = createDiagnosticForFileFromMessageChain;
11412
+ function createDiagnosticMessageChainFromDiagnostic(diagnostic) {
11413
+ return typeof diagnostic.messageText === "string" ? {
11414
+ code: diagnostic.code,
11415
+ category: diagnostic.category,
11416
+ messageText: diagnostic.messageText,
11417
+ next: diagnostic.next,
11418
+ } : diagnostic.messageText;
11419
+ }
11420
+ ts.createDiagnosticMessageChainFromDiagnostic = createDiagnosticMessageChainFromDiagnostic;
11399
11421
  function createDiagnosticForRange(sourceFile, range, message) {
11400
11422
  return {
11401
11423
  file: sourceFile,
@@ -11556,7 +11578,8 @@ var ts;
11556
11578
  node.kind === 212 ||
11557
11579
  node.kind === 213 ||
11558
11580
  node.kind === 211 ||
11559
- node.kind === 253) ?
11581
+ node.kind === 253 ||
11582
+ node.kind === 274) ?
11560
11583
  ts.concatenate(ts.getTrailingCommentRanges(text, node.pos), ts.getLeadingCommentRanges(text, node.pos)) :
11561
11584
  ts.getLeadingCommentRanges(text, node.pos);
11562
11585
  return ts.filter(commentRanges, function (comment) {
@@ -11589,7 +11612,7 @@ var ts;
11589
11612
  case 114:
11590
11613
  return node.parent.kind !== 216;
11591
11614
  case 227:
11592
- return !isExpressionWithTypeArgumentsInClassExtendsClause(node);
11615
+ return ts.isHeritageClause(node.parent) && !isExpressionWithTypeArgumentsInClassExtendsClause(node);
11593
11616
  case 162:
11594
11617
  return node.parent.kind === 194 || node.parent.kind === 189;
11595
11618
  case 79:
@@ -11615,7 +11638,7 @@ var ts;
11615
11638
  }
11616
11639
  switch (parent.kind) {
11617
11640
  case 227:
11618
- return !isExpressionWithTypeArgumentsInClassExtendsClause(parent);
11641
+ return ts.isHeritageClause(parent.parent) && !isExpressionWithTypeArgumentsInClassExtendsClause(parent);
11619
11642
  case 162:
11620
11643
  return node === parent.constraint;
11621
11644
  case 342:
@@ -12254,7 +12277,7 @@ var ts;
12254
12277
  case 296:
12255
12278
  return true;
12256
12279
  case 227:
12257
- return parent.expression === node && isExpressionWithTypeArgumentsInClassExtendsClause(parent);
12280
+ return parent.expression === node && !isPartOfTypeNode(parent);
12258
12281
  case 295:
12259
12282
  return parent.objectAssignmentInitializer === node;
12260
12283
  default:
@@ -18197,15 +18220,17 @@ var ts;
18197
18220
  function updateConstructorTypeNode2(node, typeParameters, parameters, type) {
18198
18221
  return updateConstructorTypeNode1(node, node.modifiers, typeParameters, parameters, type);
18199
18222
  }
18200
- function createTypeQueryNode(exprName) {
18223
+ function createTypeQueryNode(exprName, typeArguments) {
18201
18224
  var node = createBaseNode(180);
18202
18225
  node.exprName = exprName;
18226
+ node.typeArguments = typeArguments && parenthesizerRules().parenthesizeTypeArguments(typeArguments);
18203
18227
  node.transformFlags = 1;
18204
18228
  return node;
18205
18229
  }
18206
- function updateTypeQueryNode(node, exprName) {
18230
+ function updateTypeQueryNode(node, exprName, typeArguments) {
18207
18231
  return node.exprName !== exprName
18208
- ? update(createTypeQueryNode(exprName), node)
18232
+ || node.typeArguments !== typeArguments
18233
+ ? update(createTypeQueryNode(exprName, typeArguments), node)
18209
18234
  : node;
18210
18235
  }
18211
18236
  function createTypeLiteralNode(members) {
@@ -24039,7 +24064,8 @@ var ts;
24039
24064
  visitNode(cbNode, node.parameterName) ||
24040
24065
  visitNode(cbNode, node.type);
24041
24066
  case 180:
24042
- return visitNode(cbNode, node.exprName);
24067
+ return visitNode(cbNode, node.exprName) ||
24068
+ visitNodes(cbNode, cbNodes, node.typeArguments);
24043
24069
  case 181:
24044
24070
  return visitNodes(cbNode, cbNodes, node.members);
24045
24071
  case 182:
@@ -26120,7 +26146,9 @@ var ts;
26120
26146
  function parseTypeQuery() {
26121
26147
  var pos = getNodePos();
26122
26148
  parseExpected(112);
26123
- return finishNode(factory.createTypeQueryNode(parseEntityName(true)), pos);
26149
+ var entityName = parseEntityName(true);
26150
+ var typeArguments = tryParseTypeArguments();
26151
+ return finishNode(factory.createTypeQueryNode(entityName, typeArguments), pos);
26124
26152
  }
26125
26153
  function parseTypeParameter() {
26126
26154
  var pos = getNodePos();
@@ -26926,18 +26954,18 @@ var ts;
26926
26954
  function parseInitializer() {
26927
26955
  return parseOptional(63) ? parseAssignmentExpressionOrHigher() : undefined;
26928
26956
  }
26929
- function parseAssignmentExpressionOrHigher(parsingConditionalTrueSide) {
26957
+ function parseAssignmentExpressionOrHigher() {
26930
26958
  if (isYieldExpression()) {
26931
26959
  return parseYieldExpression();
26932
26960
  }
26933
- var arrowExpression = tryParseParenthesizedArrowFunctionExpression(parsingConditionalTrueSide) || tryParseAsyncSimpleArrowFunctionExpression();
26961
+ var arrowExpression = tryParseParenthesizedArrowFunctionExpression() || tryParseAsyncSimpleArrowFunctionExpression();
26934
26962
  if (arrowExpression) {
26935
26963
  return arrowExpression;
26936
26964
  }
26937
26965
  var pos = getNodePos();
26938
26966
  var expr = parseBinaryExpressionOrHigher(0);
26939
26967
  if (expr.kind === 79 && token() === 38) {
26940
- return parseSimpleArrowFunctionExpression(pos, expr, undefined, parsingConditionalTrueSide);
26968
+ return parseSimpleArrowFunctionExpression(pos, expr, undefined);
26941
26969
  }
26942
26970
  if (ts.isLeftHandSideExpression(expr) && ts.isAssignmentOperator(reScanGreaterToken())) {
26943
26971
  return makeBinaryExpression(expr, parseTokenNode(), parseAssignmentExpressionOrHigher(), pos);
@@ -26968,24 +26996,24 @@ var ts;
26968
26996
  return finishNode(factory.createYieldExpression(undefined, undefined), pos);
26969
26997
  }
26970
26998
  }
26971
- function parseSimpleArrowFunctionExpression(pos, identifier, asyncModifier, parsingConditionalTrueSide) {
26999
+ function parseSimpleArrowFunctionExpression(pos, identifier, asyncModifier) {
26972
27000
  ts.Debug.assert(token() === 38, "parseSimpleArrowFunctionExpression should only have been called if we had a =>");
26973
27001
  var parameter = factory.createParameterDeclaration(undefined, undefined, undefined, identifier, undefined, undefined, undefined);
26974
27002
  finishNode(parameter, identifier.pos);
26975
27003
  var parameters = createNodeArray([parameter], parameter.pos, parameter.end);
26976
27004
  var equalsGreaterThanToken = parseExpectedToken(38);
26977
- var body = parseArrowFunctionExpressionBody(!!asyncModifier, parsingConditionalTrueSide);
27005
+ var body = parseArrowFunctionExpressionBody(!!asyncModifier);
26978
27006
  var node = factory.createArrowFunction(asyncModifier, undefined, parameters, undefined, equalsGreaterThanToken, body);
26979
27007
  return addJSDocComment(finishNode(node, pos));
26980
27008
  }
26981
- function tryParseParenthesizedArrowFunctionExpression(parsingConditionalTrueSide) {
27009
+ function tryParseParenthesizedArrowFunctionExpression() {
26982
27010
  var triState = isParenthesizedArrowFunctionExpression();
26983
27011
  if (triState === 0) {
26984
27012
  return undefined;
26985
27013
  }
26986
27014
  return triState === 1 ?
26987
- parseParenthesizedArrowFunctionExpression(true, parsingConditionalTrueSide) :
26988
- tryParse(function () { return parsePossibleParenthesizedArrowFunctionExpression(parsingConditionalTrueSide); });
27015
+ parseParenthesizedArrowFunctionExpression(true) :
27016
+ tryParse(parsePossibleParenthesizedArrowFunctionExpression);
26989
27017
  }
26990
27018
  function isParenthesizedArrowFunctionExpression() {
26991
27019
  if (token() === 20 || token() === 29 || token() === 131) {
@@ -27079,24 +27107,24 @@ var ts;
27079
27107
  return 2;
27080
27108
  }
27081
27109
  }
27082
- function parsePossibleParenthesizedArrowFunctionExpression(parsingConditionalTrueSide) {
27110
+ function parsePossibleParenthesizedArrowFunctionExpression() {
27083
27111
  var tokenPos = scanner.getTokenPos();
27084
27112
  if (notParenthesizedArrow === null || notParenthesizedArrow === void 0 ? void 0 : notParenthesizedArrow.has(tokenPos)) {
27085
27113
  return undefined;
27086
27114
  }
27087
- var result = parseParenthesizedArrowFunctionExpression(false, parsingConditionalTrueSide);
27115
+ var result = parseParenthesizedArrowFunctionExpression(false);
27088
27116
  if (!result) {
27089
27117
  (notParenthesizedArrow || (notParenthesizedArrow = new ts.Set())).add(tokenPos);
27090
27118
  }
27091
27119
  return result;
27092
27120
  }
27093
- function tryParseAsyncSimpleArrowFunctionExpression(parsingConditionalTrueSide) {
27121
+ function tryParseAsyncSimpleArrowFunctionExpression() {
27094
27122
  if (token() === 131) {
27095
27123
  if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) === 1) {
27096
27124
  var pos = getNodePos();
27097
27125
  var asyncModifier = parseModifiersForArrowFunction();
27098
27126
  var expr = parseBinaryExpressionOrHigher(0);
27099
- return parseSimpleArrowFunctionExpression(pos, expr, asyncModifier, parsingConditionalTrueSide);
27127
+ return parseSimpleArrowFunctionExpression(pos, expr, asyncModifier);
27100
27128
  }
27101
27129
  }
27102
27130
  return undefined;
@@ -27114,7 +27142,7 @@ var ts;
27114
27142
  }
27115
27143
  return 0;
27116
27144
  }
27117
- function parseParenthesizedArrowFunctionExpression(allowAmbiguity, parsingConditionalTrueSide) {
27145
+ function parseParenthesizedArrowFunctionExpression(allowAmbiguity) {
27118
27146
  var pos = getNodePos();
27119
27147
  var hasJSDoc = hasPrecedingJSDocComment();
27120
27148
  var modifiers = parseModifiersForArrowFunction();
@@ -27133,10 +27161,6 @@ var ts;
27133
27161
  return undefined;
27134
27162
  }
27135
27163
  }
27136
- if (parsingConditionalTrueSide && token() === 58) {
27137
- ts.Debug.assert(!allowAmbiguity);
27138
- return undefined;
27139
- }
27140
27164
  var type = parseReturnType(58, false);
27141
27165
  if (type && !allowAmbiguity && typeHasArrowFunctionBlockingParseError(type)) {
27142
27166
  return undefined;
@@ -27157,7 +27181,7 @@ var ts;
27157
27181
  var node = factory.createArrowFunction(modifiers, typeParameters, parameters, type, equalsGreaterThanToken, body);
27158
27182
  return withJSDoc(finishNode(node, pos), hasJSDoc);
27159
27183
  }
27160
- function parseArrowFunctionExpressionBody(isAsync, parsingConditionalTrueSide) {
27184
+ function parseArrowFunctionExpressionBody(isAsync) {
27161
27185
  if (token() === 18) {
27162
27186
  return parseFunctionBlock(isAsync ? 2 : 0);
27163
27187
  }
@@ -27171,8 +27195,8 @@ var ts;
27171
27195
  var savedTopLevel = topLevel;
27172
27196
  topLevel = false;
27173
27197
  var node = isAsync
27174
- ? doInAwaitContext(function () { return parseAssignmentExpressionOrHigher(parsingConditionalTrueSide); })
27175
- : doOutsideOfAwaitContext(function () { return parseAssignmentExpressionOrHigher(parsingConditionalTrueSide); });
27198
+ ? doInAwaitContext(parseAssignmentExpressionOrHigher)
27199
+ : doOutsideOfAwaitContext(parseAssignmentExpressionOrHigher);
27176
27200
  topLevel = savedTopLevel;
27177
27201
  return node;
27178
27202
  }
@@ -27182,8 +27206,8 @@ var ts;
27182
27206
  return leftOperand;
27183
27207
  }
27184
27208
  var colonToken;
27185
- return finishNode(factory.createConditionalExpression(leftOperand, questionToken, doOutsideOfContext(disallowInAndDecoratorContext, function () { return parseAssignmentExpressionOrHigher(true); }), colonToken = parseExpectedToken(58), ts.nodeIsPresent(colonToken)
27186
- ? parseAssignmentExpressionOrHigher(false)
27209
+ return finishNode(factory.createConditionalExpression(leftOperand, questionToken, doOutsideOfContext(disallowInAndDecoratorContext, parseAssignmentExpressionOrHigher), colonToken = parseExpectedToken(58), ts.nodeIsPresent(colonToken)
27210
+ ? parseAssignmentExpressionOrHigher()
27187
27211
  : createMissingNode(79, false, ts.Diagnostics._0_expected, ts.tokenToString(58))), pos);
27188
27212
  }
27189
27213
  function parseBinaryExpressionOrHigher(precedence) {
@@ -27721,12 +27745,16 @@ var ts;
27721
27745
  expression = parseTaggedTemplateRest(pos, expression, questionDotToken, typeArguments);
27722
27746
  continue;
27723
27747
  }
27724
- var argumentList = parseArgumentList();
27725
- var callExpr = questionDotToken || tryReparseOptionalChain(expression) ?
27726
- factory.createCallChain(expression, questionDotToken, typeArguments, argumentList) :
27727
- factory.createCallExpression(expression, typeArguments, argumentList);
27728
- expression = finishNode(callExpr, pos);
27729
- continue;
27748
+ if (questionDotToken || token() === 20) {
27749
+ var argumentList = parseArgumentList();
27750
+ var callExpr = questionDotToken || tryReparseOptionalChain(expression) ?
27751
+ factory.createCallChain(expression, questionDotToken, typeArguments, argumentList) :
27752
+ factory.createCallExpression(expression, typeArguments, argumentList);
27753
+ expression = finishNode(callExpr, pos);
27754
+ continue;
27755
+ }
27756
+ expression = finishNode(factory.createExpressionWithTypeArguments(expression, typeArguments), pos);
27757
+ break;
27730
27758
  }
27731
27759
  }
27732
27760
  else if (token() === 20) {
@@ -27763,15 +27791,14 @@ var ts;
27763
27791
  if (!parseExpected(31)) {
27764
27792
  return undefined;
27765
27793
  }
27766
- return typeArguments && canFollowTypeArgumentsInExpression()
27767
- ? typeArguments
27768
- : undefined;
27794
+ return typeArguments && canFollowTypeArgumentsInExpression() ? typeArguments : undefined;
27769
27795
  }
27770
27796
  function canFollowTypeArgumentsInExpression() {
27771
27797
  switch (token()) {
27772
27798
  case 20:
27773
27799
  case 14:
27774
27800
  case 15:
27801
+ case 27:
27775
27802
  case 24:
27776
27803
  case 21:
27777
27804
  case 23:
@@ -27791,11 +27818,8 @@ var ts;
27791
27818
  case 19:
27792
27819
  case 1:
27793
27820
  return true;
27794
- case 27:
27795
- case 18:
27796
- default:
27797
- return false;
27798
27821
  }
27822
+ return false;
27799
27823
  }
27800
27824
  function parsePrimaryExpression() {
27801
27825
  switch (token()) {
@@ -27959,17 +27983,12 @@ var ts;
27959
27983
  return finishNode(factory.createMetaProperty(103, name), pos);
27960
27984
  }
27961
27985
  var expressionPos = getNodePos();
27962
- var expression = parsePrimaryExpression();
27963
- var typeArguments;
27964
- while (true) {
27965
- expression = parseMemberExpressionRest(expressionPos, expression, false);
27966
- typeArguments = tryParse(parseTypeArgumentsInExpression);
27967
- if (isTemplateStartOfTaggedTemplate()) {
27968
- ts.Debug.assert(!!typeArguments, "Expected a type argument list; all plain tagged template starts should be consumed in 'parseMemberExpressionRest'");
27969
- expression = parseTaggedTemplateRest(expressionPos, expression, undefined, typeArguments);
27970
- typeArguments = undefined;
27971
- }
27972
- break;
27986
+ var expression = parseMemberExpressionRest(expressionPos, parsePrimaryExpression(), false);
27987
+ var typeArguments = tryParse(parseTypeArgumentsInExpression);
27988
+ if (isTemplateStartOfTaggedTemplate()) {
27989
+ ts.Debug.assert(!!typeArguments, "Expected a type argument list; all plain tagged template starts should be consumed in 'parseMemberExpressionRest'");
27990
+ expression = parseTaggedTemplateRest(expressionPos, expression, undefined, typeArguments);
27991
+ typeArguments = undefined;
27973
27992
  }
27974
27993
  var argumentsArray;
27975
27994
  if (token() === 20) {
@@ -28943,6 +28962,9 @@ var ts;
28943
28962
  function parseExpressionWithTypeArguments() {
28944
28963
  var pos = getNodePos();
28945
28964
  var expression = parseLeftHandSideExpressionOrHigher();
28965
+ if (expression.kind === 227) {
28966
+ return expression;
28967
+ }
28946
28968
  var typeArguments = tryParseTypeArguments();
28947
28969
  return finishNode(factory.createExpressionWithTypeArguments(expression, typeArguments), pos);
28948
28970
  }
@@ -29197,7 +29219,8 @@ var ts;
29197
29219
  return finishNode(node, pos);
29198
29220
  }
29199
29221
  function parseExportSpecifier() {
29200
- return parseImportOrExportSpecifier(274);
29222
+ var hasJSDoc = hasPrecedingJSDocComment();
29223
+ return withJSDoc(parseImportOrExportSpecifier(274), hasJSDoc);
29201
29224
  }
29202
29225
  function parseImportSpecifier() {
29203
29226
  return parseImportOrExportSpecifier(269);
@@ -35496,14 +35519,12 @@ var ts;
35496
35519
  }
35497
35520
  var binder = createBinder();
35498
35521
  function bindSourceFile(file, options) {
35499
- ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.push("bind", "bindSourceFile", { path: file.path }, true);
35500
35522
  ts.performance.mark("beforeBind");
35501
35523
  ts.perfLogger.logStartBindFile("" + file.fileName);
35502
35524
  binder(file, options);
35503
35525
  ts.perfLogger.logStopBindFile();
35504
35526
  ts.performance.mark("afterBind");
35505
35527
  ts.performance.measure("Bind", "beforeBind", "afterBind");
35506
- ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.pop();
35507
35528
  }
35508
35529
  ts.bindSourceFile = bindSourceFile;
35509
35530
  function createBinder() {
@@ -35550,7 +35571,9 @@ var ts;
35550
35571
  ts.Debug.attachFlowNodeDebugInfo(unreachableFlow);
35551
35572
  ts.Debug.attachFlowNodeDebugInfo(reportedUnreachableFlow);
35552
35573
  if (!file.locals) {
35574
+ ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.push("bind", "bindSourceFile", { path: file.path }, true);
35553
35575
  bind(file);
35576
+ ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.pop();
35554
35577
  file.symbolCount = symbolCount;
35555
35578
  file.classifiableNames = classifiableNames;
35556
35579
  delayedBindJSDocTypedefTag();
@@ -39139,6 +39162,9 @@ var ts;
39139
39162
  suggestionDiagnostics.add(diagnostic);
39140
39163
  return diagnostic;
39141
39164
  }
39165
+ function isDeprecatedSymbol(symbol) {
39166
+ return !!(getDeclarationNodeFlagsFromSymbol(symbol) & 134217728);
39167
+ }
39142
39168
  function addDeprecatedSuggestion(location, declarations, deprecatedEntity) {
39143
39169
  var diagnostic = ts.createDiagnosticForNode(location, ts.Diagnostics._0_is_deprecated, deprecatedEntity);
39144
39170
  return addDeprecatedSuggestionWorker(declarations, diagnostic);
@@ -41794,7 +41820,7 @@ var ts;
41794
41820
  function isEntityNameVisible(entityName, enclosingDeclaration) {
41795
41821
  var meaning;
41796
41822
  if (entityName.parent.kind === 180 ||
41797
- ts.isExpressionWithTypeArgumentsInClassExtendsClause(entityName.parent) ||
41823
+ entityName.parent.kind === 227 && !ts.isPartOfTypeNode(entityName.parent) ||
41798
41824
  entityName.parent.kind === 161) {
41799
41825
  meaning = 111551 | 1048576;
41800
41826
  }
@@ -41897,7 +41923,7 @@ var ts;
41897
41923
  return flags & 814775659;
41898
41924
  }
41899
41925
  function isClassInstanceSide(type) {
41900
- return !!type.symbol && !!(type.symbol.flags & 32) && (type === getDeclaredTypeOfClassOrInterface(type.symbol) || (!!(type.flags & 524288) && !!(ts.getObjectFlags(type) & 16777216)));
41926
+ return !!type.symbol && !!(type.symbol.flags & 32) && (type === getDeclaredTypeOfClassOrInterface(type.symbol) || (!!(type.flags & 524288) && !!(ts.getObjectFlags(type) & 33554432)));
41901
41927
  }
41902
41928
  function createNodeBuilder() {
41903
41929
  return {
@@ -43359,7 +43385,8 @@ var ts;
43359
43385
  includePrivateSymbol === null || includePrivateSymbol === void 0 ? void 0 : includePrivateSymbol(sym);
43360
43386
  }
43361
43387
  if (ts.isIdentifier(node)) {
43362
- var name = sym.flags & 262144 ? typeParameterToName(getDeclaredTypeOfSymbol(sym), context) : ts.factory.cloneNode(node);
43388
+ var type = getDeclaredTypeOfSymbol(sym);
43389
+ var name = sym.flags & 262144 && !isTypeSymbolAccessible(type.symbol, context.enclosingDeclaration) ? typeParameterToName(type, context) : ts.factory.cloneNode(node);
43363
43390
  name.symbol = sym;
43364
43391
  return { introducesError: introducesError, node: ts.setEmitFlags(ts.setOriginalNode(name, node), 16777216) };
43365
43392
  }
@@ -45292,7 +45319,7 @@ var ts;
45292
45319
  var result = createAnonymousType(initialSize !== members_4.size ? undefined : exportedType.symbol, members_4, exportedType.callSignatures, exportedType.constructSignatures, exportedType.indexInfos);
45293
45320
  result.objectFlags |= (ts.getObjectFlags(type) & 8192);
45294
45321
  if (result.symbol && result.symbol.flags & 32 && type === getDeclaredTypeOfClassOrInterface(result.symbol)) {
45295
- result.objectFlags |= 16777216;
45322
+ result.objectFlags |= 33554432;
45296
45323
  }
45297
45324
  return result;
45298
45325
  }
@@ -47036,81 +47063,81 @@ var ts;
47036
47063
  return ts.append(indexInfos, newInfo);
47037
47064
  }
47038
47065
  function resolveAnonymousTypeMembers(type) {
47039
- var symbol = getMergedSymbol(type.symbol);
47040
47066
  if (type.target) {
47041
47067
  setStructuredTypeMembers(type, emptySymbols, ts.emptyArray, ts.emptyArray, ts.emptyArray);
47042
- var members = createInstantiatedSymbolTable(getPropertiesOfObjectType(type.target), type.mapper, false);
47068
+ var members_6 = createInstantiatedSymbolTable(getPropertiesOfObjectType(type.target), type.mapper, false);
47043
47069
  var callSignatures = instantiateSignatures(getSignaturesOfType(type.target, 0), type.mapper);
47044
47070
  var constructSignatures = instantiateSignatures(getSignaturesOfType(type.target, 1), type.mapper);
47045
- var indexInfos = instantiateIndexInfos(getIndexInfosOfType(type.target), type.mapper);
47046
- setStructuredTypeMembers(type, members, callSignatures, constructSignatures, indexInfos);
47071
+ var indexInfos_1 = instantiateIndexInfos(getIndexInfosOfType(type.target), type.mapper);
47072
+ setStructuredTypeMembers(type, members_6, callSignatures, constructSignatures, indexInfos_1);
47073
+ return;
47047
47074
  }
47048
- else if (symbol.flags & 2048) {
47075
+ var symbol = getMergedSymbol(type.symbol);
47076
+ if (symbol.flags & 2048) {
47049
47077
  setStructuredTypeMembers(type, emptySymbols, ts.emptyArray, ts.emptyArray, ts.emptyArray);
47050
- var members = getMembersOfSymbol(symbol);
47051
- var callSignatures = getSignaturesOfSymbol(members.get("__call"));
47052
- var constructSignatures = getSignaturesOfSymbol(members.get("__new"));
47053
- var indexInfos = getIndexInfosOfSymbol(symbol);
47054
- setStructuredTypeMembers(type, members, callSignatures, constructSignatures, indexInfos);
47078
+ var members_7 = getMembersOfSymbol(symbol);
47079
+ var callSignatures = getSignaturesOfSymbol(members_7.get("__call"));
47080
+ var constructSignatures = getSignaturesOfSymbol(members_7.get("__new"));
47081
+ var indexInfos_2 = getIndexInfosOfSymbol(symbol);
47082
+ setStructuredTypeMembers(type, members_7, callSignatures, constructSignatures, indexInfos_2);
47083
+ return;
47055
47084
  }
47056
- else {
47057
- var members = emptySymbols;
47058
- var indexInfos = void 0;
47059
- if (symbol.exports) {
47060
- members = getExportsOfSymbol(symbol);
47061
- if (symbol === globalThisSymbol) {
47062
- var varsOnly_1 = new ts.Map();
47063
- members.forEach(function (p) {
47064
- if (!(p.flags & 418)) {
47065
- varsOnly_1.set(p.escapedName, p);
47066
- }
47067
- });
47068
- members = varsOnly_1;
47069
- }
47085
+ var members = emptySymbols;
47086
+ var indexInfos;
47087
+ if (symbol.exports) {
47088
+ members = getExportsOfSymbol(symbol);
47089
+ if (symbol === globalThisSymbol) {
47090
+ var varsOnly_1 = new ts.Map();
47091
+ members.forEach(function (p) {
47092
+ if (!(p.flags & 418)) {
47093
+ varsOnly_1.set(p.escapedName, p);
47094
+ }
47095
+ });
47096
+ members = varsOnly_1;
47070
47097
  }
47071
- var baseConstructorIndexInfo = void 0;
47072
- setStructuredTypeMembers(type, members, ts.emptyArray, ts.emptyArray, ts.emptyArray);
47073
- if (symbol.flags & 32) {
47074
- var classType = getDeclaredTypeOfClassOrInterface(symbol);
47075
- var baseConstructorType = getBaseConstructorTypeOfClass(classType);
47076
- if (baseConstructorType.flags & (524288 | 2097152 | 8650752)) {
47077
- members = ts.createSymbolTable(getNamedOrIndexSignatureMembers(members));
47078
- addInheritedMembers(members, getPropertiesOfType(baseConstructorType));
47079
- }
47080
- else if (baseConstructorType === anyType) {
47081
- baseConstructorIndexInfo = createIndexInfo(stringType, anyType, false);
47082
- }
47098
+ }
47099
+ var baseConstructorIndexInfo;
47100
+ setStructuredTypeMembers(type, members, ts.emptyArray, ts.emptyArray, ts.emptyArray);
47101
+ if (symbol.flags & 32) {
47102
+ var classType = getDeclaredTypeOfClassOrInterface(symbol);
47103
+ var baseConstructorType = getBaseConstructorTypeOfClass(classType);
47104
+ if (baseConstructorType.flags & (524288 | 2097152 | 8650752)) {
47105
+ members = ts.createSymbolTable(getNamedOrIndexSignatureMembers(members));
47106
+ addInheritedMembers(members, getPropertiesOfType(baseConstructorType));
47083
47107
  }
47084
- var indexSymbol = getIndexSymbolFromSymbolTable(members);
47085
- if (indexSymbol) {
47086
- indexInfos = getIndexInfosOfIndexSymbol(indexSymbol);
47108
+ else if (baseConstructorType === anyType) {
47109
+ baseConstructorIndexInfo = createIndexInfo(stringType, anyType, false);
47087
47110
  }
47088
- else {
47089
- if (baseConstructorIndexInfo) {
47090
- indexInfos = ts.append(indexInfos, baseConstructorIndexInfo);
47091
- }
47092
- if (symbol.flags & 384 && (getDeclaredTypeOfSymbol(symbol).flags & 32 ||
47093
- ts.some(type.properties, function (prop) { return !!(getTypeOfSymbol(prop).flags & 296); }))) {
47094
- indexInfos = ts.append(indexInfos, enumNumberIndexInfo);
47095
- }
47111
+ }
47112
+ var indexSymbol = getIndexSymbolFromSymbolTable(members);
47113
+ if (indexSymbol) {
47114
+ indexInfos = getIndexInfosOfIndexSymbol(indexSymbol);
47115
+ }
47116
+ else {
47117
+ if (baseConstructorIndexInfo) {
47118
+ indexInfos = ts.append(indexInfos, baseConstructorIndexInfo);
47096
47119
  }
47097
- setStructuredTypeMembers(type, members, ts.emptyArray, ts.emptyArray, indexInfos || ts.emptyArray);
47098
- if (symbol.flags & (16 | 8192)) {
47099
- type.callSignatures = getSignaturesOfSymbol(symbol);
47120
+ if (symbol.flags & 384 && (getDeclaredTypeOfSymbol(symbol).flags & 32 ||
47121
+ ts.some(type.properties, function (prop) { return !!(getTypeOfSymbol(prop).flags & 296); }))) {
47122
+ indexInfos = ts.append(indexInfos, enumNumberIndexInfo);
47100
47123
  }
47101
- if (symbol.flags & 32) {
47102
- var classType_1 = getDeclaredTypeOfClassOrInterface(symbol);
47103
- var constructSignatures = symbol.members ? getSignaturesOfSymbol(symbol.members.get("__constructor")) : ts.emptyArray;
47104
- if (symbol.flags & 16) {
47105
- constructSignatures = ts.addRange(constructSignatures.slice(), ts.mapDefined(type.callSignatures, function (sig) { return isJSConstructor(sig.declaration) ?
47106
- createSignature(sig.declaration, sig.typeParameters, sig.thisParameter, sig.parameters, classType_1, undefined, sig.minArgumentCount, sig.flags & 39) :
47107
- undefined; }));
47108
- }
47109
- if (!constructSignatures.length) {
47110
- constructSignatures = getDefaultConstructSignatures(classType_1);
47111
- }
47112
- type.constructSignatures = constructSignatures;
47124
+ }
47125
+ setStructuredTypeMembers(type, members, ts.emptyArray, ts.emptyArray, indexInfos || ts.emptyArray);
47126
+ if (symbol.flags & (16 | 8192)) {
47127
+ type.callSignatures = getSignaturesOfSymbol(symbol);
47128
+ }
47129
+ if (symbol.flags & 32) {
47130
+ var classType_1 = getDeclaredTypeOfClassOrInterface(symbol);
47131
+ var constructSignatures = symbol.members ? getSignaturesOfSymbol(symbol.members.get("__constructor")) : ts.emptyArray;
47132
+ if (symbol.flags & 16) {
47133
+ constructSignatures = ts.addRange(constructSignatures.slice(), ts.mapDefined(type.callSignatures, function (sig) { return isJSConstructor(sig.declaration) ?
47134
+ createSignature(sig.declaration, sig.typeParameters, sig.thisParameter, sig.parameters, classType_1, undefined, sig.minArgumentCount, sig.flags & 39) :
47135
+ undefined; }));
47113
47136
  }
47137
+ if (!constructSignatures.length) {
47138
+ constructSignatures = getDefaultConstructSignatures(classType_1);
47139
+ }
47140
+ type.constructSignatures = constructSignatures;
47114
47141
  }
47115
47142
  }
47116
47143
  function replaceIndexedAccess(instantiable, type, replacement) {
@@ -47961,8 +47988,8 @@ var ts;
47961
47988
  var stringIndexInfo;
47962
47989
  var applicableInfo;
47963
47990
  var applicableInfos;
47964
- for (var _i = 0, indexInfos_1 = indexInfos; _i < indexInfos_1.length; _i++) {
47965
- var info = indexInfos_1[_i];
47991
+ for (var _i = 0, indexInfos_3 = indexInfos; _i < indexInfos_3.length; _i++) {
47992
+ var info = indexInfos_3[_i];
47966
47993
  if (info.keyType === stringType) {
47967
47994
  stringIndexInfo = info;
47968
47995
  }
@@ -48472,14 +48499,14 @@ var ts;
48472
48499
  }
48473
48500
  function getIndexInfosOfIndexSymbol(indexSymbol) {
48474
48501
  if (indexSymbol.declarations) {
48475
- var indexInfos_2 = [];
48502
+ var indexInfos_4 = [];
48476
48503
  var _loop_14 = function (declaration) {
48477
48504
  if (declaration.parameters.length === 1) {
48478
48505
  var parameter = declaration.parameters[0];
48479
48506
  if (parameter.type) {
48480
48507
  forEachType(getTypeFromTypeNode(parameter.type), function (keyType) {
48481
- if (isValidIndexKeyType(keyType) && !findIndexInfo(indexInfos_2, keyType)) {
48482
- indexInfos_2.push(createIndexInfo(keyType, declaration.type ? getTypeFromTypeNode(declaration.type) : anyType, ts.hasEffectiveModifier(declaration, 64), declaration));
48508
+ if (isValidIndexKeyType(keyType) && !findIndexInfo(indexInfos_4, keyType)) {
48509
+ indexInfos_4.push(createIndexInfo(keyType, declaration.type ? getTypeFromTypeNode(declaration.type) : anyType, ts.hasEffectiveModifier(declaration, 64), declaration));
48483
48510
  }
48484
48511
  });
48485
48512
  }
@@ -48489,7 +48516,7 @@ var ts;
48489
48516
  var declaration = _a[_i];
48490
48517
  _loop_14(declaration);
48491
48518
  }
48492
- return indexInfos_2;
48519
+ return indexInfos_4;
48493
48520
  }
48494
48521
  return ts.emptyArray;
48495
48522
  }
@@ -48974,7 +49001,7 @@ var ts;
48974
49001
  function getTypeFromTypeQueryNode(node) {
48975
49002
  var links = getNodeLinks(node);
48976
49003
  if (!links.resolvedType) {
48977
- var type = ts.isThisIdentifier(node.exprName) ? checkThisExpression(node.exprName) : checkExpression(node.exprName);
49004
+ var type = checkExpressionWithTypeArguments(node);
48978
49005
  links.resolvedType = getRegularTypeOfLiteralType(getWidenedType(type));
48979
49006
  }
48980
49007
  return links.resolvedType;
@@ -50264,7 +50291,7 @@ var ts;
50264
50291
  }
50265
50292
  var prop = getPropertyOfType(objectType, propName);
50266
50293
  if (prop) {
50267
- if (accessFlags & 64 && accessNode && prop.declarations && getDeclarationNodeFlagsFromSymbol(prop) & 134217728 && isUncalledFunctionReference(accessNode, prop)) {
50294
+ if (accessFlags & 64 && accessNode && prop.declarations && isDeprecatedSymbol(prop) && isUncalledFunctionReference(accessNode, prop)) {
50268
50295
  var deprecatedNode = (_a = accessExpression === null || accessExpression === void 0 ? void 0 : accessExpression.argumentExpression) !== null && _a !== void 0 ? _a : (ts.isIndexedAccessTypeNode(accessNode) ? accessNode.indexType : accessNode);
50269
50296
  addDeprecatedSuggestion(deprecatedNode, prop.declarations, propName);
50270
50297
  }
@@ -51400,7 +51427,9 @@ var ts;
51400
51427
  return result;
51401
51428
  }
51402
51429
  function getObjectTypeInstantiation(type, mapper, aliasSymbol, aliasTypeArguments) {
51403
- var declaration = type.objectFlags & 4 ? type.node : type.symbol.declarations[0];
51430
+ var declaration = type.objectFlags & 4 ? type.node :
51431
+ type.objectFlags & 16777216 ? type.node :
51432
+ type.symbol.declarations[0];
51404
51433
  var links = getNodeLinks(declaration);
51405
51434
  var target = type.objectFlags & 4 ? links.resolvedType :
51406
51435
  type.objectFlags & 64 ? type.target : type;
@@ -51412,8 +51441,8 @@ var ts;
51412
51441
  outerTypeParameters = ts.addRange(outerTypeParameters, templateTagParameters);
51413
51442
  }
51414
51443
  typeParameters = outerTypeParameters || ts.emptyArray;
51415
- var allDeclarations_1 = type.objectFlags & 4 ? [declaration] : type.symbol.declarations;
51416
- typeParameters = (target.objectFlags & 4 || target.symbol.flags & 8192 || target.symbol.flags & 2048) && !target.aliasTypeArguments ?
51444
+ var allDeclarations_1 = type.objectFlags & (4 | 16777216) ? [declaration] : type.symbol.declarations;
51445
+ typeParameters = (target.objectFlags & (4 | 16777216) || target.symbol.flags & 8192 || target.symbol.flags & 2048) && !target.aliasTypeArguments ?
51417
51446
  ts.filter(typeParameters, function (tp) { return ts.some(allDeclarations_1, function (d) { return isTypeParameterPossiblyReferenced(tp, d); }); }) :
51418
51447
  typeParameters;
51419
51448
  links.outerTypeParameters = typeParameters;
@@ -51562,6 +51591,9 @@ var ts;
51562
51591
  mapper = combineTypeMappers(makeUnaryTypeMapper(origTypeParameter, freshTypeParameter), mapper);
51563
51592
  freshTypeParameter.mapper = mapper;
51564
51593
  }
51594
+ if (type.objectFlags & 16777216) {
51595
+ result.node = type.node;
51596
+ }
51565
51597
  result.target = type;
51566
51598
  result.mapper = mapper;
51567
51599
  result.aliasSymbol = aliasSymbol || type.aliasSymbol;
@@ -54295,8 +54327,8 @@ var ts;
54295
54327
  var indexInfos = getIndexInfosOfType(target);
54296
54328
  var targetHasStringIndex = ts.some(indexInfos, function (info) { return info.keyType === stringType; });
54297
54329
  var result = -1;
54298
- for (var _i = 0, indexInfos_3 = indexInfos; _i < indexInfos_3.length; _i++) {
54299
- var targetInfo = indexInfos_3[_i];
54330
+ for (var _i = 0, indexInfos_5 = indexInfos; _i < indexInfos_5.length; _i++) {
54331
+ var targetInfo = indexInfos_5[_i];
54300
54332
  var related = !sourceIsPrimitive && targetHasStringIndex && targetInfo.type.flags & 1 ? -1 :
54301
54333
  isGenericMappedType(source) && targetHasStringIndex ? isRelatedTo(getTemplateTypeFromMappedType(source), targetInfo.type, 3, reportErrors) :
54302
54334
  typeRelatedToIndexInfo(source, targetInfo, reportErrors, intersectionState);
@@ -54805,10 +54837,10 @@ var ts;
54805
54837
  if (!(ts.getObjectFlags(type) & 4) || !(ts.getObjectFlags(type.target) & 3)) {
54806
54838
  return undefined;
54807
54839
  }
54808
- if (ts.getObjectFlags(type) & 33554432) {
54809
- return ts.getObjectFlags(type) & 67108864 ? type.cachedEquivalentBaseType : undefined;
54840
+ if (ts.getObjectFlags(type) & 67108864) {
54841
+ return ts.getObjectFlags(type) & 134217728 ? type.cachedEquivalentBaseType : undefined;
54810
54842
  }
54811
- type.objectFlags |= 33554432;
54843
+ type.objectFlags |= 67108864;
54812
54844
  var target = type.target;
54813
54845
  if (ts.getObjectFlags(target) & 1) {
54814
54846
  var baseTypeNode = getBaseTypeNodeOfClass(target);
@@ -54827,7 +54859,7 @@ var ts;
54827
54859
  if (ts.length(getTypeArguments(type)) > ts.length(target.typeParameters)) {
54828
54860
  instantiatedBase = getTypeWithThisArgument(instantiatedBase, ts.last(getTypeArguments(type)));
54829
54861
  }
54830
- type.objectFlags |= 67108864;
54862
+ type.objectFlags |= 134217728;
54831
54863
  return type.cachedEquivalentBaseType = instantiatedBase;
54832
54864
  }
54833
54865
  function isEmptyLiteralType(type) {
@@ -55424,7 +55456,7 @@ var ts;
55424
55456
  var result = !!(type.flags & 465829888 ||
55425
55457
  type.flags & 524288 && !isNonGenericTopLevelType(type) && (objectFlags & 4 && (type.node || ts.forEach(getTypeArguments(type), couldContainTypeVariables)) ||
55426
55458
  objectFlags & 16 && type.symbol && type.symbol.flags & (16 | 8192 | 32 | 2048 | 4096) && type.symbol.declarations ||
55427
- objectFlags & (32 | 1024 | 8388608)) ||
55459
+ objectFlags & (32 | 1024 | 8388608 | 16777216)) ||
55428
55460
  type.flags & 3145728 && !(type.flags & 1024) && !isNonGenericTopLevelType(type) && ts.some(type.types, couldContainTypeVariables));
55429
55461
  if (type.flags & 3899393) {
55430
55462
  type.objectFlags |= 1048576 | (result ? 2097152 : 0);
@@ -56191,8 +56223,8 @@ var ts;
56191
56223
  var priority = (ts.getObjectFlags(source) & ts.getObjectFlags(target) & 32) ? 8 : 0;
56192
56224
  var indexInfos = getIndexInfosOfType(target);
56193
56225
  if (isObjectTypeWithInferableIndex(source)) {
56194
- for (var _i = 0, indexInfos_4 = indexInfos; _i < indexInfos_4.length; _i++) {
56195
- var targetInfo = indexInfos_4[_i];
56226
+ for (var _i = 0, indexInfos_6 = indexInfos; _i < indexInfos_6.length; _i++) {
56227
+ var targetInfo = indexInfos_6[_i];
56196
56228
  var propTypes = [];
56197
56229
  for (var _a = 0, _b = getPropertiesOfType(source); _a < _b.length; _a++) {
56198
56230
  var prop = _b[_a];
@@ -56212,8 +56244,8 @@ var ts;
56212
56244
  }
56213
56245
  }
56214
56246
  }
56215
- for (var _e = 0, indexInfos_5 = indexInfos; _e < indexInfos_5.length; _e++) {
56216
- var targetInfo = indexInfos_5[_e];
56247
+ for (var _e = 0, indexInfos_7 = indexInfos; _e < indexInfos_7.length; _e++) {
56248
+ var targetInfo = indexInfos_7[_e];
56217
56249
  var sourceInfo = getApplicableIndexInfo(source, targetInfo.keyType);
56218
56250
  if (sourceInfo) {
56219
56251
  inferWithPriority(sourceInfo.type, targetInfo.type, priority);
@@ -58414,9 +58446,9 @@ var ts;
58414
58446
  markAliasReferenced(symbol, node);
58415
58447
  }
58416
58448
  var localOrExportSymbol = getExportSymbolOfValueSymbolIfExported(symbol);
58417
- var sourceSymbol = localOrExportSymbol.flags & 2097152 ? resolveAlias(localOrExportSymbol) : localOrExportSymbol;
58418
- if (sourceSymbol.declarations && getDeclarationNodeFlagsFromSymbol(sourceSymbol) & 134217728 && isUncalledFunctionReference(node, sourceSymbol)) {
58419
- addDeprecatedSuggestion(node, sourceSymbol.declarations, node.escapedText);
58449
+ var targetSymbol = checkDeprecatedAliasedSymbol(localOrExportSymbol, node);
58450
+ if (isDeprecatedSymbol(targetSymbol) && isUncalledFunctionReference(node, targetSymbol) && targetSymbol.declarations) {
58451
+ addDeprecatedSuggestion(node, targetSymbol.declarations, node.escapedText);
58420
58452
  }
58421
58453
  var declaration = localOrExportSymbol.valueDeclaration;
58422
58454
  if (declaration && localOrExportSymbol.flags & 32) {
@@ -60948,7 +60980,7 @@ var ts;
60948
60980
  }
60949
60981
  }
60950
60982
  else {
60951
- if (prop.declarations && getDeclarationNodeFlagsFromSymbol(prop) & 134217728 && isUncalledFunctionReference(node, prop)) {
60983
+ if (isDeprecatedSymbol(prop) && isUncalledFunctionReference(node, prop) && prop.declarations) {
60952
60984
  addDeprecatedSuggestion(right, prop.declarations, right.escapedText);
60953
60985
  }
60954
60986
  checkPropertyNotUsedBeforeDeclaration(prop, node, right);
@@ -62175,7 +62207,7 @@ var ts;
62175
62207
  }
62176
62208
  var diags_3 = max > 1 ? allDiagnostics[minIndex] : ts.flatten(allDiagnostics);
62177
62209
  ts.Debug.assert(diags_3.length > 0, "No errors reported for 3 or fewer overload signatures");
62178
- var chain = ts.chainDiagnosticMessages(ts.map(diags_3, function (d) { return typeof d.messageText === "string" ? d : d.messageText; }), ts.Diagnostics.No_overload_matches_this_call);
62210
+ var chain = ts.chainDiagnosticMessages(ts.map(diags_3, ts.createDiagnosticMessageChainFromDiagnostic), ts.Diagnostics.No_overload_matches_this_call);
62179
62211
  var related = __spreadArray([], ts.flatMap(diags_3, function (d) { return d.relatedInformation; }), true);
62180
62212
  var diag = void 0;
62181
62213
  if (ts.every(diags_3, function (d) { return d.start === diags_3[0].start && d.length === diags_3[0].length && d.file === diags_3[0].file; })) {
@@ -63181,6 +63213,66 @@ var ts;
63181
63213
  return node.flags & 32 ? checkNonNullChain(node) :
63182
63214
  getNonNullableType(checkExpression(node.expression));
63183
63215
  }
63216
+ function checkExpressionWithTypeArguments(node) {
63217
+ checkGrammarExpressionWithTypeArguments(node);
63218
+ var exprType = node.kind === 227 ? checkExpression(node.expression) :
63219
+ ts.isThisIdentifier(node.exprName) ? checkThisExpression(node.exprName) :
63220
+ checkExpression(node.exprName);
63221
+ var typeArguments = node.typeArguments;
63222
+ if (!ts.some(typeArguments)) {
63223
+ return exprType;
63224
+ }
63225
+ var funcType = getApparentType(exprType);
63226
+ if (funcType === silentNeverType || isErrorType(funcType)) {
63227
+ return funcType;
63228
+ }
63229
+ var hasSomeApplicableSignature = false;
63230
+ var nonApplicableType;
63231
+ var hasSignatures;
63232
+ var hasApplicableSignature;
63233
+ var result = mapType(funcType, getInstantiatedType);
63234
+ var errorType = hasSomeApplicableSignature ? nonApplicableType : funcType;
63235
+ if (errorType) {
63236
+ diagnostics.add(ts.createDiagnosticForNodeArray(ts.getSourceFileOfNode(node), typeArguments, ts.Diagnostics.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable, typeToString(errorType)));
63237
+ }
63238
+ return result;
63239
+ function getInstantiatedType(type) {
63240
+ hasSignatures = false;
63241
+ hasApplicableSignature = false;
63242
+ var result = getInstantiatedTypeWorker(type);
63243
+ hasSomeApplicableSignature || (hasSomeApplicableSignature = hasApplicableSignature);
63244
+ if (hasSignatures && !hasApplicableSignature) {
63245
+ nonApplicableType !== null && nonApplicableType !== void 0 ? nonApplicableType : (nonApplicableType = type);
63246
+ }
63247
+ return result;
63248
+ }
63249
+ function getInstantiatedTypeWorker(type) {
63250
+ if (type.flags & 524288) {
63251
+ var resolved = resolveStructuredTypeMembers(type);
63252
+ var callSignatures = getInstantiatedSignatures(resolved.callSignatures);
63253
+ var constructSignatures = getInstantiatedSignatures(resolved.constructSignatures);
63254
+ hasSignatures || (hasSignatures = resolved.callSignatures.length !== 0 || resolved.constructSignatures.length !== 0);
63255
+ hasApplicableSignature || (hasApplicableSignature = callSignatures.length !== 0 || constructSignatures.length !== 0);
63256
+ if (callSignatures !== resolved.callSignatures || constructSignatures !== resolved.constructSignatures) {
63257
+ var result_11 = createAnonymousType(undefined, resolved.members, callSignatures, constructSignatures, resolved.indexInfos);
63258
+ result_11.objectFlags |= 16777216;
63259
+ result_11.node = node;
63260
+ return result_11;
63261
+ }
63262
+ }
63263
+ else if (type.flags & 2097152) {
63264
+ return getIntersectionType(ts.sameMap(type.types, getInstantiatedTypeWorker));
63265
+ }
63266
+ return type;
63267
+ }
63268
+ function getInstantiatedSignatures(signatures) {
63269
+ var applicableSignatures = ts.filter(signatures, function (sig) { return !!sig.typeParameters && hasCorrectTypeArgumentArity(sig, typeArguments); });
63270
+ return ts.sameMap(applicableSignatures, function (sig) {
63271
+ var typeArgumentTypes = checkTypeArguments(sig, typeArguments, true);
63272
+ return typeArgumentTypes ? getSignatureInstantiation(sig, typeArgumentTypes, ts.isInJSFile(sig.declaration)) : sig;
63273
+ });
63274
+ }
63275
+ }
63184
63276
  function checkMetaProperty(node) {
63185
63277
  checkGrammarMetaProperty(node);
63186
63278
  if (node.keywordToken === 103) {
@@ -65411,6 +65503,8 @@ var ts;
65411
65503
  return checkAssertion(node);
65412
65504
  case 229:
65413
65505
  return checkNonNullAssertion(node);
65506
+ case 227:
65507
+ return checkExpressionWithTypeArguments(node);
65414
65508
  case 230:
65415
65509
  return checkMetaProperty(node);
65416
65510
  case 214:
@@ -66495,12 +66589,12 @@ var ts;
66495
66589
  case 264:
66496
66590
  case 267:
66497
66591
  case 266:
66498
- var result_11 = 0;
66592
+ var result_12 = 0;
66499
66593
  var target = resolveAlias(getSymbolOfNode(d));
66500
66594
  ts.forEach(target.declarations, function (d) {
66501
- result_11 |= getDeclarationSpaces(d);
66595
+ result_12 |= getDeclarationSpaces(d);
66502
66596
  });
66503
- return result_11;
66597
+ return result_12;
66504
66598
  case 253:
66505
66599
  case 202:
66506
66600
  case 255:
@@ -68520,8 +68614,8 @@ var ts;
68520
68614
  }
68521
68615
  }
68522
68616
  if (indexInfos.length > 1) {
68523
- for (var _d = 0, indexInfos_6 = indexInfos; _d < indexInfos_6.length; _d++) {
68524
- var info = indexInfos_6[_d];
68617
+ for (var _d = 0, indexInfos_8 = indexInfos; _d < indexInfos_8.length; _d++) {
68618
+ var info = indexInfos_8[_d];
68525
68619
  checkIndexConstraintForIndexSignature(type, info);
68526
68620
  }
68527
68621
  }
@@ -68544,8 +68638,8 @@ var ts;
68544
68638
  error(errorNode, ts.Diagnostics.Property_0_of_type_1_is_not_assignable_to_2_index_type_3, symbolToString(prop), typeToString(propType), typeToString(info.keyType), typeToString(info.type));
68545
68639
  }
68546
68640
  };
68547
- for (var _i = 0, indexInfos_7 = indexInfos; _i < indexInfos_7.length; _i++) {
68548
- var info = indexInfos_7[_i];
68641
+ for (var _i = 0, indexInfos_9 = indexInfos; _i < indexInfos_9.length; _i++) {
68642
+ var info = indexInfos_9[_i];
68549
68643
  _loop_27(info);
68550
68644
  }
68551
68645
  }
@@ -68564,8 +68658,8 @@ var ts;
68564
68658
  error(errorNode, ts.Diagnostics._0_index_type_1_is_not_assignable_to_2_index_type_3, typeToString(checkInfo.keyType), typeToString(checkInfo.type), typeToString(info.keyType), typeToString(info.type));
68565
68659
  }
68566
68660
  };
68567
- for (var _i = 0, indexInfos_8 = indexInfos; _i < indexInfos_8.length; _i++) {
68568
- var info = indexInfos_8[_i];
68661
+ for (var _i = 0, indexInfos_10 = indexInfos; _i < indexInfos_10.length; _i++) {
68662
+ var info = indexInfos_10[_i];
68569
68663
  _loop_28(info);
68570
68664
  }
68571
68665
  }
@@ -69338,16 +69432,15 @@ var ts;
69338
69432
  return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText);
69339
69433
  case 206:
69340
69434
  case 205:
69341
- var ex = expr;
69342
- if (isConstantMemberAccess(ex)) {
69343
- var type = getTypeOfExpression(ex.expression);
69435
+ if (isConstantMemberAccess(expr)) {
69436
+ var type = getTypeOfExpression(expr.expression);
69344
69437
  if (type.symbol && type.symbol.flags & 384) {
69345
69438
  var name = void 0;
69346
- if (ex.kind === 205) {
69347
- name = ex.name.escapedText;
69439
+ if (expr.kind === 205) {
69440
+ name = expr.name.escapedText;
69348
69441
  }
69349
69442
  else {
69350
- name = ts.escapeLeadingUnderscores(ts.cast(ex.argumentExpression, ts.isLiteralExpression).text);
69443
+ name = ts.escapeLeadingUnderscores(ts.cast(expr.argumentExpression, ts.isLiteralExpression).text);
69351
69444
  }
69352
69445
  return evaluateEnumMember(expr, type.symbol, name);
69353
69446
  }
@@ -69375,6 +69468,10 @@ var ts;
69375
69468
  }
69376
69469
  }
69377
69470
  function isConstantMemberAccess(node) {
69471
+ var type = getTypeOfExpression(node);
69472
+ if (type === errorType) {
69473
+ return false;
69474
+ }
69378
69475
  return node.kind === 79 ||
69379
69476
  node.kind === 205 && isConstantMemberAccess(node.expression) ||
69380
69477
  node.kind === 206 && isConstantMemberAccess(node.expression) &&
@@ -69633,7 +69730,6 @@ var ts;
69633
69730
  return true;
69634
69731
  }
69635
69732
  function checkAliasSymbol(node) {
69636
- var _a;
69637
69733
  var symbol = getSymbolOfNode(node);
69638
69734
  var target = resolveAlias(symbol);
69639
69735
  if (target !== unknownSymbol) {
@@ -69680,11 +69776,46 @@ var ts;
69680
69776
  }
69681
69777
  }
69682
69778
  }
69683
- if (ts.isImportSpecifier(node) && ((_a = target.declarations) === null || _a === void 0 ? void 0 : _a.every(function (d) { return !!(ts.getCombinedNodeFlags(d) & 134217728); }))) {
69684
- addDeprecatedSuggestion(node.name, target.declarations, symbol.escapedName);
69779
+ if (ts.isImportSpecifier(node)) {
69780
+ var targetSymbol = checkDeprecatedAliasedSymbol(symbol, node);
69781
+ if (isDeprecatedAliasedSymbol(targetSymbol) && targetSymbol.declarations) {
69782
+ addDeprecatedSuggestion(node, targetSymbol.declarations, targetSymbol.escapedName);
69783
+ }
69685
69784
  }
69686
69785
  }
69687
69786
  }
69787
+ function isDeprecatedAliasedSymbol(symbol) {
69788
+ return !!symbol.declarations && ts.every(symbol.declarations, function (d) { return !!(ts.getCombinedNodeFlags(d) & 134217728); });
69789
+ }
69790
+ function checkDeprecatedAliasedSymbol(symbol, location) {
69791
+ if (!(symbol.flags & 2097152))
69792
+ return symbol;
69793
+ var targetSymbol = resolveAlias(symbol);
69794
+ if (targetSymbol === unknownSymbol)
69795
+ return targetSymbol;
69796
+ while (symbol.flags & 2097152) {
69797
+ var target = getImmediateAliasedSymbol(symbol);
69798
+ if (target) {
69799
+ if (target === targetSymbol)
69800
+ break;
69801
+ if (target.declarations && ts.length(target.declarations)) {
69802
+ if (isDeprecatedAliasedSymbol(target)) {
69803
+ addDeprecatedSuggestion(location, target.declarations, target.escapedName);
69804
+ break;
69805
+ }
69806
+ else {
69807
+ if (symbol === targetSymbol)
69808
+ break;
69809
+ symbol = target;
69810
+ }
69811
+ }
69812
+ }
69813
+ else {
69814
+ break;
69815
+ }
69816
+ }
69817
+ return targetSymbol;
69818
+ }
69688
69819
  function checkImportBinding(node) {
69689
69820
  checkCollisionsForDeclarationName(node, node.name);
69690
69821
  checkAliasSymbol(node);
@@ -73586,7 +73717,7 @@ var ts;
73586
73717
  return factory.updateConstructorTypeNode(node, nodesVisitor(node.modifiers, visitor, ts.isModifier), nodesVisitor(node.typeParameters, visitor, ts.isTypeParameterDeclaration), nodesVisitor(node.parameters, visitor, ts.isParameterDeclaration), nodeVisitor(node.type, visitor, ts.isTypeNode));
73587
73718
  case 180:
73588
73719
  ts.Debug.type(node);
73589
- return factory.updateTypeQueryNode(node, nodeVisitor(node.exprName, visitor, ts.isEntityName));
73720
+ return factory.updateTypeQueryNode(node, nodeVisitor(node.exprName, visitor, ts.isEntityName), nodesVisitor(node.typeArguments, visitor, ts.isTypeNode));
73590
73721
  case 181:
73591
73722
  ts.Debug.type(node);
73592
73723
  return factory.updateTypeLiteralNode(node, nodesVisitor(node.members, visitor, ts.isTypeElement));
@@ -75805,8 +75936,8 @@ var ts;
75805
75936
  function generateClassElementDecorationExpressions(node, isStatic) {
75806
75937
  var members = getDecoratedClassElements(node, isStatic);
75807
75938
  var expressions;
75808
- for (var _i = 0, members_6 = members; _i < members_6.length; _i++) {
75809
- var member = members_6[_i];
75939
+ for (var _i = 0, members_8 = members; _i < members_8.length; _i++) {
75940
+ var member = members_8[_i];
75810
75941
  var expression = generateClassElementDecorationExpression(node, member);
75811
75942
  if (expression) {
75812
75943
  if (!expressions) {
@@ -79826,8 +79957,8 @@ var ts;
79826
79957
  function convertJsxChildrenToChildrenPropAssignment(children) {
79827
79958
  var nonWhitespaceChildren = ts.getSemanticJsxChildren(children);
79828
79959
  if (ts.length(nonWhitespaceChildren) === 1 && !nonWhitespaceChildren[0].dotDotDotToken) {
79829
- var result_12 = transformJsxChildToExpression(nonWhitespaceChildren[0]);
79830
- return result_12 && factory.createPropertyAssignment("children", result_12);
79960
+ var result_13 = transformJsxChildToExpression(nonWhitespaceChildren[0]);
79961
+ return result_13 && factory.createPropertyAssignment("children", result_13);
79831
79962
  }
79832
79963
  var result = ts.mapDefined(children, transformJsxChildToExpression);
79833
79964
  return ts.length(result) ? factory.createPropertyAssignment("children", factory.createArrayLiteralExpression(result)) : undefined;
@@ -89678,6 +89809,8 @@ var ts;
89678
89809
  return emitAsExpression(node);
89679
89810
  case 229:
89680
89811
  return emitNonNullExpression(node);
89812
+ case 227:
89813
+ return emitExpressionWithTypeArguments(node);
89681
89814
  case 230:
89682
89815
  return emitMetaProperty(node);
89683
89816
  case 231:
@@ -90071,6 +90204,7 @@ var ts;
90071
90204
  writeKeyword("typeof");
90072
90205
  writeSpace();
90073
90206
  emit(node.exprName);
90207
+ emitTypeArguments(node, node.typeArguments);
90074
90208
  }
90075
90209
  function emitTypeLiteral(node) {
90076
90210
  writePunctuation("{");
@@ -94533,15 +94667,15 @@ var ts;
94533
94667
  }
94534
94668
  var oldSourceFile = oldProgram && oldProgram.getSourceFile(file.fileName);
94535
94669
  if (oldSourceFile !== file && file.resolvedModules) {
94536
- var result_13 = [];
94670
+ var result_14 = [];
94537
94671
  var i = 0;
94538
94672
  for (var _i = 0, moduleNames_1 = moduleNames; _i < moduleNames_1.length; _i++) {
94539
94673
  var moduleName = moduleNames_1[_i];
94540
94674
  var resolvedModule = file.resolvedModules.get(moduleName, getModeForResolutionAtIndex(file, i));
94541
94675
  i++;
94542
- result_13.push(resolvedModule);
94676
+ result_14.push(resolvedModule);
94543
94677
  }
94544
- return result_13;
94678
+ return result_14;
94545
94679
  }
94546
94680
  var unknownModuleNames;
94547
94681
  var result;
@@ -95578,13 +95712,13 @@ var ts;
95578
95712
  redirectTargetsMap.add(fileFromPackageId.path, fileName);
95579
95713
  addFileToFilesByName(dupFile, path, redirectedPath);
95580
95714
  addFileIncludeReason(dupFile, reason);
95581
- sourceFileToPackageName.set(path, packageId.name);
95715
+ sourceFileToPackageName.set(path, ts.packageIdToPackageName(packageId));
95582
95716
  processingOtherFiles.push(dupFile);
95583
95717
  return dupFile;
95584
95718
  }
95585
95719
  else if (file) {
95586
95720
  packageIdToSourceFile.set(packageIdKey, file);
95587
- sourceFileToPackageName.set(path, packageId.name);
95721
+ sourceFileToPackageName.set(path, ts.packageIdToPackageName(packageId));
95588
95722
  }
95589
95723
  }
95590
95724
  addFileToFilesByName(file, path, redirectedPath);
@@ -98904,9 +99038,9 @@ var ts;
98904
99038
  var targets = importedFileNames.map(function (f) { return ts.getNormalizedAbsolutePath(f, cwd); });
98905
99039
  var shouldFilterIgnoredPaths = !ts.every(targets, ts.containsIgnoredPath);
98906
99040
  if (!preferSymlinks) {
98907
- var result_14 = ts.forEach(targets, function (p) { return !(shouldFilterIgnoredPaths && ts.containsIgnoredPath(p)) && cb(p, referenceRedirect === p); });
98908
- if (result_14)
98909
- return result_14;
99041
+ var result_15 = ts.forEach(targets, function (p) { return !(shouldFilterIgnoredPaths && ts.containsIgnoredPath(p)) && cb(p, referenceRedirect === p); });
99042
+ if (result_15)
99043
+ return result_15;
98910
99044
  }
98911
99045
  var symlinkedDirectories = (_a = host.getSymlinkCache) === null || _a === void 0 ? void 0 : _a.call(host).getSymlinkedDirectoriesByRealpath();
98912
99046
  var fullImportedFileName = ts.getNormalizedAbsolutePath(importedFileName, cwd);
@@ -98925,10 +99059,10 @@ var ts;
98925
99059
  for (var _i = 0, symlinkDirectories_1 = symlinkDirectories; _i < symlinkDirectories_1.length; _i++) {
98926
99060
  var symlinkDirectory = symlinkDirectories_1[_i];
98927
99061
  var option = ts.resolvePath(symlinkDirectory, relative);
98928
- var result_15 = cb(option, target === referenceRedirect);
99062
+ var result_16 = cb(option, target === referenceRedirect);
98929
99063
  shouldFilterIgnoredPaths = true;
98930
- if (result_15)
98931
- return result_15;
99064
+ if (result_16)
99065
+ return result_16;
98932
99066
  }
98933
99067
  });
98934
99068
  });