typescript 5.2.0-dev.20230718 → 5.2.0-dev.20230720

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
@@ -18,7 +18,7 @@ and limitations under the License.
18
18
 
19
19
  // src/compiler/corePublic.ts
20
20
  var versionMajorMinor = "5.2";
21
- var version = `${versionMajorMinor}.0-dev.20230718`;
21
+ var version = `${versionMajorMinor}.0-dev.20230720`;
22
22
 
23
23
  // src/compiler/core.ts
24
24
  var emptyArray = [];
@@ -3762,7 +3762,8 @@ var SignatureFlags = /* @__PURE__ */ ((SignatureFlags4) => {
3762
3762
  SignatureFlags4[SignatureFlags4["IsOuterCallChain"] = 16] = "IsOuterCallChain";
3763
3763
  SignatureFlags4[SignatureFlags4["IsUntypedSignatureInJSFile"] = 32] = "IsUntypedSignatureInJSFile";
3764
3764
  SignatureFlags4[SignatureFlags4["IsNonInferrable"] = 64] = "IsNonInferrable";
3765
- SignatureFlags4[SignatureFlags4["PropagatingFlags"] = 39] = "PropagatingFlags";
3765
+ SignatureFlags4[SignatureFlags4["IsSignatureCandidateForOverloadFailure"] = 128] = "IsSignatureCandidateForOverloadFailure";
3766
+ SignatureFlags4[SignatureFlags4["PropagatingFlags"] = 167] = "PropagatingFlags";
3766
3767
  SignatureFlags4[SignatureFlags4["CallChainFlags"] = 24] = "CallChainFlags";
3767
3768
  return SignatureFlags4;
3768
3769
  })(SignatureFlags || {});
@@ -44551,7 +44552,7 @@ function createTypeChecker(host) {
44551
44552
  if (name === "const" && isConstAssertion(location)) {
44552
44553
  return void 0;
44553
44554
  }
44554
- if (isModuleDeclaration(location) && lastLocation && location.name === lastLocation) {
44555
+ if (isModuleOrEnumDeclaration(location) && lastLocation && location.name === lastLocation) {
44555
44556
  lastLocation = location;
44556
44557
  location = location.parent;
44557
44558
  }
@@ -52933,6 +52934,7 @@ function createTypeChecker(host) {
52933
52934
  return links.resolvedSymbol;
52934
52935
  }
52935
52936
  function getResolvedMembersOrExportsOfSymbol(symbol, resolutionKind) {
52937
+ var _a, _b, _c;
52936
52938
  const links = getSymbolLinks(symbol);
52937
52939
  if (!links[resolutionKind]) {
52938
52940
  const isStatic2 = resolutionKind === "resolvedExports" /* resolvedExports */;
@@ -52951,7 +52953,7 @@ function createTypeChecker(host) {
52951
52953
  }
52952
52954
  }
52953
52955
  }
52954
- const assignments = symbol.assignmentDeclarationMembers;
52956
+ const assignments = (((_a = symbol.valueDeclaration) == null ? void 0 : _a.kind) === 219 /* ArrowFunction */ || ((_b = symbol.valueDeclaration) == null ? void 0 : _b.kind) === 218 /* FunctionExpression */) && ((_c = getSymbolOfNode(symbol.valueDeclaration.parent)) == null ? void 0 : _c.assignmentDeclarationMembers) || symbol.assignmentDeclarationMembers;
52955
52957
  if (assignments) {
52956
52958
  const decls = arrayFrom(assignments.values());
52957
52959
  for (const member of decls) {
@@ -53080,7 +53082,7 @@ function createTypeChecker(host) {
53080
53082
  /*resolvedTypePredicate*/
53081
53083
  void 0,
53082
53084
  sig.minArgumentCount,
53083
- sig.flags & 39 /* PropagatingFlags */
53085
+ sig.flags & 167 /* PropagatingFlags */
53084
53086
  );
53085
53087
  result.target = sig.target;
53086
53088
  result.mapper = sig.mapper;
@@ -53381,7 +53383,7 @@ function createTypeChecker(host) {
53381
53383
  /*resolvedTypePredicate*/
53382
53384
  void 0,
53383
53385
  minArgCount,
53384
- (left.flags | right.flags) & 39 /* PropagatingFlags */
53386
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
53385
53387
  );
53386
53388
  result.compositeKind = 1048576 /* Union */;
53387
53389
  result.compositeSignatures = concatenate(left.compositeKind !== 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -53591,7 +53593,7 @@ function createTypeChecker(host) {
53591
53593
  /*resolvedTypePredicate*/
53592
53594
  void 0,
53593
53595
  sig.minArgumentCount,
53594
- sig.flags & 39 /* PropagatingFlags */
53596
+ sig.flags & 167 /* PropagatingFlags */
53595
53597
  ) : void 0
53596
53598
  ));
53597
53599
  }
@@ -58374,7 +58376,7 @@ function createTypeChecker(host) {
58374
58376
  /*resolvedTypePredicate*/
58375
58377
  void 0,
58376
58378
  signature.minArgumentCount,
58377
- signature.flags & 39 /* PropagatingFlags */
58379
+ signature.flags & 167 /* PropagatingFlags */
58378
58380
  );
58379
58381
  result.target = signature;
58380
58382
  result.mapper = mapper;
@@ -65635,12 +65637,15 @@ function createTypeChecker(host) {
65635
65637
  return narrowTypeByPrivateIdentifierInInExpression(type, expr, assumeTrue);
65636
65638
  }
65637
65639
  const target = getReferenceCandidate(expr.right);
65638
- const leftType = getTypeOfExpression(expr.left);
65639
- if (leftType.flags & 8576 /* StringOrNumberLiteralOrUnique */) {
65640
- if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
65640
+ if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target)) {
65641
+ const leftType = getTypeOfExpression(expr.left);
65642
+ if (isTypeUsableAsPropertyName(leftType) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
65641
65643
  return getTypeWithFacts(type, assumeTrue ? 524288 /* NEUndefined */ : 65536 /* EQUndefined */);
65642
65644
  }
65643
- if (isMatchingReference(reference, target)) {
65645
+ }
65646
+ if (isMatchingReference(reference, target)) {
65647
+ const leftType = getTypeOfExpression(expr.left);
65648
+ if (isTypeUsableAsPropertyName(leftType)) {
65644
65649
  return narrowTypeByInKeyword(type, leftType, assumeTrue);
65645
65650
  }
65646
65651
  }
@@ -67823,7 +67828,7 @@ function createTypeChecker(host) {
67823
67828
  /*resolvedTypePredicate*/
67824
67829
  void 0,
67825
67830
  minArgCount,
67826
- (left.flags | right.flags) & 39 /* PropagatingFlags */
67831
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
67827
67832
  );
67828
67833
  result.compositeKind = 2097152 /* Intersection */;
67829
67834
  result.compositeSignatures = concatenate(left.compositeKind === 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -70852,7 +70857,7 @@ function createTypeChecker(host) {
70852
70857
  parameters.push(createCombinedSymbolFromTypes(symbols, mapDefined(candidates, (candidate) => tryGetTypeAtPosition(candidate, i))));
70853
70858
  }
70854
70859
  const restParameterSymbols = mapDefined(candidates, (c) => signatureHasRestParameter(c) ? last(c.parameters) : void 0);
70855
- let flags = 0 /* None */;
70860
+ let flags = 128 /* IsSignatureCandidateForOverloadFailure */;
70856
70861
  if (restParameterSymbols.length !== 0) {
70857
70862
  const type = createArrayType(getUnionType(mapDefined(candidates, tryGetRestTypeOfSignature), 2 /* Subtype */));
70858
70863
  parameters.push(createCombinedSymbolForOverloadFailure(restParameterSymbols, type));
@@ -71576,6 +71581,8 @@ function createTypeChecker(host) {
71576
71581
  return returnType;
71577
71582
  }
71578
71583
  function checkDeprecatedSignature(signature, node) {
71584
+ if (signature.flags & 128 /* IsSignatureCandidateForOverloadFailure */)
71585
+ return;
71579
71586
  if (signature.declaration && signature.declaration.flags & 536870912 /* Deprecated */) {
71580
71587
  const suggestionNode = getDeprecatedSuggestionNode(node);
71581
71588
  const name = tryGetPropertyAccessOrIdentifierToString(getInvokedExpression(node));
package/lib/tsserver.js CHANGED
@@ -2327,7 +2327,7 @@ module.exports = __toCommonJS(server_exports);
2327
2327
 
2328
2328
  // src/compiler/corePublic.ts
2329
2329
  var versionMajorMinor = "5.2";
2330
- var version = `${versionMajorMinor}.0-dev.20230718`;
2330
+ var version = `${versionMajorMinor}.0-dev.20230720`;
2331
2331
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2332
2332
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2333
2333
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -6810,7 +6810,8 @@ var SignatureFlags = /* @__PURE__ */ ((SignatureFlags5) => {
6810
6810
  SignatureFlags5[SignatureFlags5["IsOuterCallChain"] = 16] = "IsOuterCallChain";
6811
6811
  SignatureFlags5[SignatureFlags5["IsUntypedSignatureInJSFile"] = 32] = "IsUntypedSignatureInJSFile";
6812
6812
  SignatureFlags5[SignatureFlags5["IsNonInferrable"] = 64] = "IsNonInferrable";
6813
- SignatureFlags5[SignatureFlags5["PropagatingFlags"] = 39] = "PropagatingFlags";
6813
+ SignatureFlags5[SignatureFlags5["IsSignatureCandidateForOverloadFailure"] = 128] = "IsSignatureCandidateForOverloadFailure";
6814
+ SignatureFlags5[SignatureFlags5["PropagatingFlags"] = 167] = "PropagatingFlags";
6814
6815
  SignatureFlags5[SignatureFlags5["CallChainFlags"] = 24] = "CallChainFlags";
6815
6816
  return SignatureFlags5;
6816
6817
  })(SignatureFlags || {});
@@ -49258,7 +49259,7 @@ function createTypeChecker(host) {
49258
49259
  if (name === "const" && isConstAssertion(location)) {
49259
49260
  return void 0;
49260
49261
  }
49261
- if (isModuleDeclaration(location) && lastLocation && location.name === lastLocation) {
49262
+ if (isModuleOrEnumDeclaration(location) && lastLocation && location.name === lastLocation) {
49262
49263
  lastLocation = location;
49263
49264
  location = location.parent;
49264
49265
  }
@@ -57640,6 +57641,7 @@ function createTypeChecker(host) {
57640
57641
  return links.resolvedSymbol;
57641
57642
  }
57642
57643
  function getResolvedMembersOrExportsOfSymbol(symbol, resolutionKind) {
57644
+ var _a, _b, _c;
57643
57645
  const links = getSymbolLinks(symbol);
57644
57646
  if (!links[resolutionKind]) {
57645
57647
  const isStatic2 = resolutionKind === "resolvedExports" /* resolvedExports */;
@@ -57658,7 +57660,7 @@ function createTypeChecker(host) {
57658
57660
  }
57659
57661
  }
57660
57662
  }
57661
- const assignments = symbol.assignmentDeclarationMembers;
57663
+ const assignments = (((_a = symbol.valueDeclaration) == null ? void 0 : _a.kind) === 219 /* ArrowFunction */ || ((_b = symbol.valueDeclaration) == null ? void 0 : _b.kind) === 218 /* FunctionExpression */) && ((_c = getSymbolOfNode(symbol.valueDeclaration.parent)) == null ? void 0 : _c.assignmentDeclarationMembers) || symbol.assignmentDeclarationMembers;
57662
57664
  if (assignments) {
57663
57665
  const decls = arrayFrom(assignments.values());
57664
57666
  for (const member of decls) {
@@ -57787,7 +57789,7 @@ function createTypeChecker(host) {
57787
57789
  /*resolvedTypePredicate*/
57788
57790
  void 0,
57789
57791
  sig.minArgumentCount,
57790
- sig.flags & 39 /* PropagatingFlags */
57792
+ sig.flags & 167 /* PropagatingFlags */
57791
57793
  );
57792
57794
  result.target = sig.target;
57793
57795
  result.mapper = sig.mapper;
@@ -58088,7 +58090,7 @@ function createTypeChecker(host) {
58088
58090
  /*resolvedTypePredicate*/
58089
58091
  void 0,
58090
58092
  minArgCount,
58091
- (left.flags | right.flags) & 39 /* PropagatingFlags */
58093
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
58092
58094
  );
58093
58095
  result.compositeKind = 1048576 /* Union */;
58094
58096
  result.compositeSignatures = concatenate(left.compositeKind !== 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -58298,7 +58300,7 @@ function createTypeChecker(host) {
58298
58300
  /*resolvedTypePredicate*/
58299
58301
  void 0,
58300
58302
  sig.minArgumentCount,
58301
- sig.flags & 39 /* PropagatingFlags */
58303
+ sig.flags & 167 /* PropagatingFlags */
58302
58304
  ) : void 0
58303
58305
  ));
58304
58306
  }
@@ -63081,7 +63083,7 @@ function createTypeChecker(host) {
63081
63083
  /*resolvedTypePredicate*/
63082
63084
  void 0,
63083
63085
  signature.minArgumentCount,
63084
- signature.flags & 39 /* PropagatingFlags */
63086
+ signature.flags & 167 /* PropagatingFlags */
63085
63087
  );
63086
63088
  result.target = signature;
63087
63089
  result.mapper = mapper;
@@ -70342,12 +70344,15 @@ function createTypeChecker(host) {
70342
70344
  return narrowTypeByPrivateIdentifierInInExpression(type, expr, assumeTrue);
70343
70345
  }
70344
70346
  const target = getReferenceCandidate(expr.right);
70345
- const leftType = getTypeOfExpression(expr.left);
70346
- if (leftType.flags & 8576 /* StringOrNumberLiteralOrUnique */) {
70347
- if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
70347
+ if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target)) {
70348
+ const leftType = getTypeOfExpression(expr.left);
70349
+ if (isTypeUsableAsPropertyName(leftType) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
70348
70350
  return getTypeWithFacts(type, assumeTrue ? 524288 /* NEUndefined */ : 65536 /* EQUndefined */);
70349
70351
  }
70350
- if (isMatchingReference(reference, target)) {
70352
+ }
70353
+ if (isMatchingReference(reference, target)) {
70354
+ const leftType = getTypeOfExpression(expr.left);
70355
+ if (isTypeUsableAsPropertyName(leftType)) {
70351
70356
  return narrowTypeByInKeyword(type, leftType, assumeTrue);
70352
70357
  }
70353
70358
  }
@@ -72530,7 +72535,7 @@ function createTypeChecker(host) {
72530
72535
  /*resolvedTypePredicate*/
72531
72536
  void 0,
72532
72537
  minArgCount,
72533
- (left.flags | right.flags) & 39 /* PropagatingFlags */
72538
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
72534
72539
  );
72535
72540
  result.compositeKind = 2097152 /* Intersection */;
72536
72541
  result.compositeSignatures = concatenate(left.compositeKind === 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -75559,7 +75564,7 @@ function createTypeChecker(host) {
75559
75564
  parameters.push(createCombinedSymbolFromTypes(symbols, mapDefined(candidates, (candidate) => tryGetTypeAtPosition(candidate, i))));
75560
75565
  }
75561
75566
  const restParameterSymbols = mapDefined(candidates, (c) => signatureHasRestParameter(c) ? last(c.parameters) : void 0);
75562
- let flags = 0 /* None */;
75567
+ let flags = 128 /* IsSignatureCandidateForOverloadFailure */;
75563
75568
  if (restParameterSymbols.length !== 0) {
75564
75569
  const type = createArrayType(getUnionType(mapDefined(candidates, tryGetRestTypeOfSignature), 2 /* Subtype */));
75565
75570
  parameters.push(createCombinedSymbolForOverloadFailure(restParameterSymbols, type));
@@ -76283,6 +76288,8 @@ function createTypeChecker(host) {
76283
76288
  return returnType;
76284
76289
  }
76285
76290
  function checkDeprecatedSignature(signature, node) {
76291
+ if (signature.flags & 128 /* IsSignatureCandidateForOverloadFailure */)
76292
+ return;
76286
76293
  if (signature.declaration && signature.declaration.flags & 536870912 /* Deprecated */) {
76287
76294
  const suggestionNode = getDeprecatedSuggestionNode(node);
76288
76295
  const name = tryGetPropertyAccessOrIdentifierToString(getInvokedExpression(node));
@@ -159133,7 +159140,8 @@ function getCompletionData(program, log, sourceFile, compilerOptions, position,
159133
159140
  const leftMostName = getLeftMostName(computedPropertyName.expression);
159134
159141
  const nameSymbol = leftMostName && typeChecker.getSymbolAtLocation(leftMostName);
159135
159142
  const firstAccessibleSymbol = nameSymbol && getFirstSymbolInChain(nameSymbol, contextToken, typeChecker);
159136
- if (firstAccessibleSymbol && addToSeen(seenPropertySymbols, getSymbolId(firstAccessibleSymbol))) {
159143
+ const firstAccessibleSymbolId = firstAccessibleSymbol && getSymbolId(firstAccessibleSymbol);
159144
+ if (firstAccessibleSymbolId && addToSeen(seenPropertySymbols, firstAccessibleSymbolId)) {
159137
159145
  const index = symbols.length;
159138
159146
  symbols.push(firstAccessibleSymbol);
159139
159147
  const moduleSymbol = firstAccessibleSymbol.parent;
@@ -159163,6 +159171,9 @@ function getCompletionData(program, log, sourceFile, compilerOptions, position,
159163
159171
  }
159164
159172
  }
159165
159173
  } else if (preferences.includeCompletionsWithInsertText) {
159174
+ if (firstAccessibleSymbolId && seenPropertySymbols.has(firstAccessibleSymbolId)) {
159175
+ return;
159176
+ }
159166
159177
  addSymbolOriginInfo(symbol);
159167
159178
  addSymbolSortInfo(symbol);
159168
159179
  symbols.push(symbol);
@@ -35,7 +35,7 @@ var ts = (() => {
35
35
  "src/compiler/corePublic.ts"() {
36
36
  "use strict";
37
37
  versionMajorMinor = "5.2";
38
- version = `${versionMajorMinor}.0-dev.20230718`;
38
+ version = `${versionMajorMinor}.0-dev.20230720`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -4576,7 +4576,8 @@ ${lanes.join("\n")}
4576
4576
  SignatureFlags5[SignatureFlags5["IsOuterCallChain"] = 16] = "IsOuterCallChain";
4577
4577
  SignatureFlags5[SignatureFlags5["IsUntypedSignatureInJSFile"] = 32] = "IsUntypedSignatureInJSFile";
4578
4578
  SignatureFlags5[SignatureFlags5["IsNonInferrable"] = 64] = "IsNonInferrable";
4579
- SignatureFlags5[SignatureFlags5["PropagatingFlags"] = 39] = "PropagatingFlags";
4579
+ SignatureFlags5[SignatureFlags5["IsSignatureCandidateForOverloadFailure"] = 128] = "IsSignatureCandidateForOverloadFailure";
4580
+ SignatureFlags5[SignatureFlags5["PropagatingFlags"] = 167] = "PropagatingFlags";
4580
4581
  SignatureFlags5[SignatureFlags5["CallChainFlags"] = 24] = "CallChainFlags";
4581
4582
  return SignatureFlags5;
4582
4583
  })(SignatureFlags || {});
@@ -47025,7 +47026,7 @@ ${lanes.join("\n")}
47025
47026
  if (name === "const" && isConstAssertion(location)) {
47026
47027
  return void 0;
47027
47028
  }
47028
- if (isModuleDeclaration(location) && lastLocation && location.name === lastLocation) {
47029
+ if (isModuleOrEnumDeclaration(location) && lastLocation && location.name === lastLocation) {
47029
47030
  lastLocation = location;
47030
47031
  location = location.parent;
47031
47032
  }
@@ -55407,6 +55408,7 @@ ${lanes.join("\n")}
55407
55408
  return links.resolvedSymbol;
55408
55409
  }
55409
55410
  function getResolvedMembersOrExportsOfSymbol(symbol, resolutionKind) {
55411
+ var _a, _b, _c;
55410
55412
  const links = getSymbolLinks(symbol);
55411
55413
  if (!links[resolutionKind]) {
55412
55414
  const isStatic2 = resolutionKind === "resolvedExports" /* resolvedExports */;
@@ -55425,7 +55427,7 @@ ${lanes.join("\n")}
55425
55427
  }
55426
55428
  }
55427
55429
  }
55428
- const assignments = symbol.assignmentDeclarationMembers;
55430
+ const assignments = (((_a = symbol.valueDeclaration) == null ? void 0 : _a.kind) === 219 /* ArrowFunction */ || ((_b = symbol.valueDeclaration) == null ? void 0 : _b.kind) === 218 /* FunctionExpression */) && ((_c = getSymbolOfNode(symbol.valueDeclaration.parent)) == null ? void 0 : _c.assignmentDeclarationMembers) || symbol.assignmentDeclarationMembers;
55429
55431
  if (assignments) {
55430
55432
  const decls = arrayFrom(assignments.values());
55431
55433
  for (const member of decls) {
@@ -55554,7 +55556,7 @@ ${lanes.join("\n")}
55554
55556
  /*resolvedTypePredicate*/
55555
55557
  void 0,
55556
55558
  sig.minArgumentCount,
55557
- sig.flags & 39 /* PropagatingFlags */
55559
+ sig.flags & 167 /* PropagatingFlags */
55558
55560
  );
55559
55561
  result.target = sig.target;
55560
55562
  result.mapper = sig.mapper;
@@ -55855,7 +55857,7 @@ ${lanes.join("\n")}
55855
55857
  /*resolvedTypePredicate*/
55856
55858
  void 0,
55857
55859
  minArgCount,
55858
- (left.flags | right.flags) & 39 /* PropagatingFlags */
55860
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
55859
55861
  );
55860
55862
  result.compositeKind = 1048576 /* Union */;
55861
55863
  result.compositeSignatures = concatenate(left.compositeKind !== 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -56065,7 +56067,7 @@ ${lanes.join("\n")}
56065
56067
  /*resolvedTypePredicate*/
56066
56068
  void 0,
56067
56069
  sig.minArgumentCount,
56068
- sig.flags & 39 /* PropagatingFlags */
56070
+ sig.flags & 167 /* PropagatingFlags */
56069
56071
  ) : void 0
56070
56072
  ));
56071
56073
  }
@@ -60848,7 +60850,7 @@ ${lanes.join("\n")}
60848
60850
  /*resolvedTypePredicate*/
60849
60851
  void 0,
60850
60852
  signature.minArgumentCount,
60851
- signature.flags & 39 /* PropagatingFlags */
60853
+ signature.flags & 167 /* PropagatingFlags */
60852
60854
  );
60853
60855
  result.target = signature;
60854
60856
  result.mapper = mapper;
@@ -68109,12 +68111,15 @@ ${lanes.join("\n")}
68109
68111
  return narrowTypeByPrivateIdentifierInInExpression(type, expr, assumeTrue);
68110
68112
  }
68111
68113
  const target = getReferenceCandidate(expr.right);
68112
- const leftType = getTypeOfExpression(expr.left);
68113
- if (leftType.flags & 8576 /* StringOrNumberLiteralOrUnique */) {
68114
- if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
68114
+ if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target)) {
68115
+ const leftType = getTypeOfExpression(expr.left);
68116
+ if (isTypeUsableAsPropertyName(leftType) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
68115
68117
  return getTypeWithFacts(type, assumeTrue ? 524288 /* NEUndefined */ : 65536 /* EQUndefined */);
68116
68118
  }
68117
- if (isMatchingReference(reference, target)) {
68119
+ }
68120
+ if (isMatchingReference(reference, target)) {
68121
+ const leftType = getTypeOfExpression(expr.left);
68122
+ if (isTypeUsableAsPropertyName(leftType)) {
68118
68123
  return narrowTypeByInKeyword(type, leftType, assumeTrue);
68119
68124
  }
68120
68125
  }
@@ -70297,7 +70302,7 @@ ${lanes.join("\n")}
70297
70302
  /*resolvedTypePredicate*/
70298
70303
  void 0,
70299
70304
  minArgCount,
70300
- (left.flags | right.flags) & 39 /* PropagatingFlags */
70305
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
70301
70306
  );
70302
70307
  result.compositeKind = 2097152 /* Intersection */;
70303
70308
  result.compositeSignatures = concatenate(left.compositeKind === 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -73326,7 +73331,7 @@ ${lanes.join("\n")}
73326
73331
  parameters.push(createCombinedSymbolFromTypes(symbols, mapDefined(candidates, (candidate) => tryGetTypeAtPosition(candidate, i))));
73327
73332
  }
73328
73333
  const restParameterSymbols = mapDefined(candidates, (c) => signatureHasRestParameter(c) ? last(c.parameters) : void 0);
73329
- let flags = 0 /* None */;
73334
+ let flags = 128 /* IsSignatureCandidateForOverloadFailure */;
73330
73335
  if (restParameterSymbols.length !== 0) {
73331
73336
  const type = createArrayType(getUnionType(mapDefined(candidates, tryGetRestTypeOfSignature), 2 /* Subtype */));
73332
73337
  parameters.push(createCombinedSymbolForOverloadFailure(restParameterSymbols, type));
@@ -74050,6 +74055,8 @@ ${lanes.join("\n")}
74050
74055
  return returnType;
74051
74056
  }
74052
74057
  function checkDeprecatedSignature(signature, node) {
74058
+ if (signature.flags & 128 /* IsSignatureCandidateForOverloadFailure */)
74059
+ return;
74053
74060
  if (signature.declaration && signature.declaration.flags & 536870912 /* Deprecated */) {
74054
74061
  const suggestionNode = getDeprecatedSuggestionNode(node);
74055
74062
  const name = tryGetPropertyAccessOrIdentifierToString(getInvokedExpression(node));
@@ -158356,7 +158363,8 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
158356
158363
  const leftMostName = getLeftMostName(computedPropertyName.expression);
158357
158364
  const nameSymbol = leftMostName && typeChecker.getSymbolAtLocation(leftMostName);
158358
158365
  const firstAccessibleSymbol = nameSymbol && getFirstSymbolInChain(nameSymbol, contextToken, typeChecker);
158359
- if (firstAccessibleSymbol && addToSeen(seenPropertySymbols, getSymbolId(firstAccessibleSymbol))) {
158366
+ const firstAccessibleSymbolId = firstAccessibleSymbol && getSymbolId(firstAccessibleSymbol);
158367
+ if (firstAccessibleSymbolId && addToSeen(seenPropertySymbols, firstAccessibleSymbolId)) {
158360
158368
  const index = symbols.length;
158361
158369
  symbols.push(firstAccessibleSymbol);
158362
158370
  const moduleSymbol = firstAccessibleSymbol.parent;
@@ -158386,6 +158394,9 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
158386
158394
  }
158387
158395
  }
158388
158396
  } else if (preferences.includeCompletionsWithInsertText) {
158397
+ if (firstAccessibleSymbolId && seenPropertySymbols.has(firstAccessibleSymbolId)) {
158398
+ return;
158399
+ }
158389
158400
  addSymbolOriginInfo(symbol);
158390
158401
  addSymbolSortInfo(symbol);
158391
158402
  symbols.push(symbol);
package/lib/typescript.js CHANGED
@@ -35,7 +35,7 @@ var ts = (() => {
35
35
  "src/compiler/corePublic.ts"() {
36
36
  "use strict";
37
37
  versionMajorMinor = "5.2";
38
- version = `${versionMajorMinor}.0-dev.20230718`;
38
+ version = `${versionMajorMinor}.0-dev.20230720`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -4576,7 +4576,8 @@ ${lanes.join("\n")}
4576
4576
  SignatureFlags5[SignatureFlags5["IsOuterCallChain"] = 16] = "IsOuterCallChain";
4577
4577
  SignatureFlags5[SignatureFlags5["IsUntypedSignatureInJSFile"] = 32] = "IsUntypedSignatureInJSFile";
4578
4578
  SignatureFlags5[SignatureFlags5["IsNonInferrable"] = 64] = "IsNonInferrable";
4579
- SignatureFlags5[SignatureFlags5["PropagatingFlags"] = 39] = "PropagatingFlags";
4579
+ SignatureFlags5[SignatureFlags5["IsSignatureCandidateForOverloadFailure"] = 128] = "IsSignatureCandidateForOverloadFailure";
4580
+ SignatureFlags5[SignatureFlags5["PropagatingFlags"] = 167] = "PropagatingFlags";
4580
4581
  SignatureFlags5[SignatureFlags5["CallChainFlags"] = 24] = "CallChainFlags";
4581
4582
  return SignatureFlags5;
4582
4583
  })(SignatureFlags || {});
@@ -47025,7 +47026,7 @@ ${lanes.join("\n")}
47025
47026
  if (name === "const" && isConstAssertion(location)) {
47026
47027
  return void 0;
47027
47028
  }
47028
- if (isModuleDeclaration(location) && lastLocation && location.name === lastLocation) {
47029
+ if (isModuleOrEnumDeclaration(location) && lastLocation && location.name === lastLocation) {
47029
47030
  lastLocation = location;
47030
47031
  location = location.parent;
47031
47032
  }
@@ -55407,6 +55408,7 @@ ${lanes.join("\n")}
55407
55408
  return links.resolvedSymbol;
55408
55409
  }
55409
55410
  function getResolvedMembersOrExportsOfSymbol(symbol, resolutionKind) {
55411
+ var _a, _b, _c;
55410
55412
  const links = getSymbolLinks(symbol);
55411
55413
  if (!links[resolutionKind]) {
55412
55414
  const isStatic2 = resolutionKind === "resolvedExports" /* resolvedExports */;
@@ -55425,7 +55427,7 @@ ${lanes.join("\n")}
55425
55427
  }
55426
55428
  }
55427
55429
  }
55428
- const assignments = symbol.assignmentDeclarationMembers;
55430
+ const assignments = (((_a = symbol.valueDeclaration) == null ? void 0 : _a.kind) === 219 /* ArrowFunction */ || ((_b = symbol.valueDeclaration) == null ? void 0 : _b.kind) === 218 /* FunctionExpression */) && ((_c = getSymbolOfNode(symbol.valueDeclaration.parent)) == null ? void 0 : _c.assignmentDeclarationMembers) || symbol.assignmentDeclarationMembers;
55429
55431
  if (assignments) {
55430
55432
  const decls = arrayFrom(assignments.values());
55431
55433
  for (const member of decls) {
@@ -55554,7 +55556,7 @@ ${lanes.join("\n")}
55554
55556
  /*resolvedTypePredicate*/
55555
55557
  void 0,
55556
55558
  sig.minArgumentCount,
55557
- sig.flags & 39 /* PropagatingFlags */
55559
+ sig.flags & 167 /* PropagatingFlags */
55558
55560
  );
55559
55561
  result.target = sig.target;
55560
55562
  result.mapper = sig.mapper;
@@ -55855,7 +55857,7 @@ ${lanes.join("\n")}
55855
55857
  /*resolvedTypePredicate*/
55856
55858
  void 0,
55857
55859
  minArgCount,
55858
- (left.flags | right.flags) & 39 /* PropagatingFlags */
55860
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
55859
55861
  );
55860
55862
  result.compositeKind = 1048576 /* Union */;
55861
55863
  result.compositeSignatures = concatenate(left.compositeKind !== 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -56065,7 +56067,7 @@ ${lanes.join("\n")}
56065
56067
  /*resolvedTypePredicate*/
56066
56068
  void 0,
56067
56069
  sig.minArgumentCount,
56068
- sig.flags & 39 /* PropagatingFlags */
56070
+ sig.flags & 167 /* PropagatingFlags */
56069
56071
  ) : void 0
56070
56072
  ));
56071
56073
  }
@@ -60848,7 +60850,7 @@ ${lanes.join("\n")}
60848
60850
  /*resolvedTypePredicate*/
60849
60851
  void 0,
60850
60852
  signature.minArgumentCount,
60851
- signature.flags & 39 /* PropagatingFlags */
60853
+ signature.flags & 167 /* PropagatingFlags */
60852
60854
  );
60853
60855
  result.target = signature;
60854
60856
  result.mapper = mapper;
@@ -68109,12 +68111,15 @@ ${lanes.join("\n")}
68109
68111
  return narrowTypeByPrivateIdentifierInInExpression(type, expr, assumeTrue);
68110
68112
  }
68111
68113
  const target = getReferenceCandidate(expr.right);
68112
- const leftType = getTypeOfExpression(expr.left);
68113
- if (leftType.flags & 8576 /* StringOrNumberLiteralOrUnique */) {
68114
- if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
68114
+ if (containsMissingType(type) && isAccessExpression(reference) && isMatchingReference(reference.expression, target)) {
68115
+ const leftType = getTypeOfExpression(expr.left);
68116
+ if (isTypeUsableAsPropertyName(leftType) && getAccessedPropertyName(reference) === getPropertyNameFromType(leftType)) {
68115
68117
  return getTypeWithFacts(type, assumeTrue ? 524288 /* NEUndefined */ : 65536 /* EQUndefined */);
68116
68118
  }
68117
- if (isMatchingReference(reference, target)) {
68119
+ }
68120
+ if (isMatchingReference(reference, target)) {
68121
+ const leftType = getTypeOfExpression(expr.left);
68122
+ if (isTypeUsableAsPropertyName(leftType)) {
68118
68123
  return narrowTypeByInKeyword(type, leftType, assumeTrue);
68119
68124
  }
68120
68125
  }
@@ -70297,7 +70302,7 @@ ${lanes.join("\n")}
70297
70302
  /*resolvedTypePredicate*/
70298
70303
  void 0,
70299
70304
  minArgCount,
70300
- (left.flags | right.flags) & 39 /* PropagatingFlags */
70305
+ (left.flags | right.flags) & 167 /* PropagatingFlags */
70301
70306
  );
70302
70307
  result.compositeKind = 2097152 /* Intersection */;
70303
70308
  result.compositeSignatures = concatenate(left.compositeKind === 2097152 /* Intersection */ && left.compositeSignatures || [left], [right]);
@@ -73326,7 +73331,7 @@ ${lanes.join("\n")}
73326
73331
  parameters.push(createCombinedSymbolFromTypes(symbols, mapDefined(candidates, (candidate) => tryGetTypeAtPosition(candidate, i))));
73327
73332
  }
73328
73333
  const restParameterSymbols = mapDefined(candidates, (c) => signatureHasRestParameter(c) ? last(c.parameters) : void 0);
73329
- let flags = 0 /* None */;
73334
+ let flags = 128 /* IsSignatureCandidateForOverloadFailure */;
73330
73335
  if (restParameterSymbols.length !== 0) {
73331
73336
  const type = createArrayType(getUnionType(mapDefined(candidates, tryGetRestTypeOfSignature), 2 /* Subtype */));
73332
73337
  parameters.push(createCombinedSymbolForOverloadFailure(restParameterSymbols, type));
@@ -74050,6 +74055,8 @@ ${lanes.join("\n")}
74050
74055
  return returnType;
74051
74056
  }
74052
74057
  function checkDeprecatedSignature(signature, node) {
74058
+ if (signature.flags & 128 /* IsSignatureCandidateForOverloadFailure */)
74059
+ return;
74053
74060
  if (signature.declaration && signature.declaration.flags & 536870912 /* Deprecated */) {
74054
74061
  const suggestionNode = getDeprecatedSuggestionNode(node);
74055
74062
  const name = tryGetPropertyAccessOrIdentifierToString(getInvokedExpression(node));
@@ -158371,7 +158378,8 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
158371
158378
  const leftMostName = getLeftMostName(computedPropertyName.expression);
158372
158379
  const nameSymbol = leftMostName && typeChecker.getSymbolAtLocation(leftMostName);
158373
158380
  const firstAccessibleSymbol = nameSymbol && getFirstSymbolInChain(nameSymbol, contextToken, typeChecker);
158374
- if (firstAccessibleSymbol && addToSeen(seenPropertySymbols, getSymbolId(firstAccessibleSymbol))) {
158381
+ const firstAccessibleSymbolId = firstAccessibleSymbol && getSymbolId(firstAccessibleSymbol);
158382
+ if (firstAccessibleSymbolId && addToSeen(seenPropertySymbols, firstAccessibleSymbolId)) {
158375
158383
  const index = symbols.length;
158376
158384
  symbols.push(firstAccessibleSymbol);
158377
158385
  const moduleSymbol = firstAccessibleSymbol.parent;
@@ -158401,6 +158409,9 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
158401
158409
  }
158402
158410
  }
158403
158411
  } else if (preferences.includeCompletionsWithInsertText) {
158412
+ if (firstAccessibleSymbolId && seenPropertySymbols.has(firstAccessibleSymbolId)) {
158413
+ return;
158414
+ }
158404
158415
  addSymbolOriginInfo(symbol);
158405
158416
  addSymbolSortInfo(symbol);
158406
158417
  symbols.push(symbol);
@@ -54,7 +54,7 @@ var path = __toESM(require("path"));
54
54
 
55
55
  // src/compiler/corePublic.ts
56
56
  var versionMajorMinor = "5.2";
57
- var version = `${versionMajorMinor}.0-dev.20230718`;
57
+ var version = `${versionMajorMinor}.0-dev.20230720`;
58
58
 
59
59
  // src/compiler/core.ts
60
60
  var emptyArray = [];
@@ -3193,7 +3193,8 @@ var SignatureFlags = /* @__PURE__ */ ((SignatureFlags4) => {
3193
3193
  SignatureFlags4[SignatureFlags4["IsOuterCallChain"] = 16] = "IsOuterCallChain";
3194
3194
  SignatureFlags4[SignatureFlags4["IsUntypedSignatureInJSFile"] = 32] = "IsUntypedSignatureInJSFile";
3195
3195
  SignatureFlags4[SignatureFlags4["IsNonInferrable"] = 64] = "IsNonInferrable";
3196
- SignatureFlags4[SignatureFlags4["PropagatingFlags"] = 39] = "PropagatingFlags";
3196
+ SignatureFlags4[SignatureFlags4["IsSignatureCandidateForOverloadFailure"] = 128] = "IsSignatureCandidateForOverloadFailure";
3197
+ SignatureFlags4[SignatureFlags4["PropagatingFlags"] = 167] = "PropagatingFlags";
3197
3198
  SignatureFlags4[SignatureFlags4["CallChainFlags"] = 24] = "CallChainFlags";
3198
3199
  return SignatureFlags4;
3199
3200
  })(SignatureFlags || {});
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "typescript",
3
3
  "author": "Microsoft Corp.",
4
4
  "homepage": "https://www.typescriptlang.org/",
5
- "version": "5.2.0-dev.20230718",
5
+ "version": "5.2.0-dev.20230720",
6
6
  "license": "Apache-2.0",
7
7
  "description": "TypeScript is a language for application scale JavaScript development",
8
8
  "keywords": [
@@ -113,5 +113,5 @@
113
113
  "node": "20.1.0",
114
114
  "npm": "8.19.4"
115
115
  },
116
- "gitHead": "4879087bef68e24ec2f7c98d83d70a88a5cc18c4"
116
+ "gitHead": "97ef321fa04b95e00ec0a3ff18d40457dd0e8c67"
117
117
  }