typescript 5.4.0-dev.20231201 → 5.4.0-dev.20231202

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.4";
21
- var version = `${versionMajorMinor}.0-dev.20231201`;
21
+ var version = `${versionMajorMinor}.0-dev.20231202`;
22
22
 
23
23
  // src/compiler/core.ts
24
24
  var emptyArray = [];
@@ -33128,6 +33128,8 @@ var Parser;
33128
33128
  break;
33129
33129
  case "template":
33130
33130
  return parseTemplateTag(start2, tagName, indent2, indentText);
33131
+ case "this":
33132
+ return parseThisTag(start2, tagName, indent2, indentText);
33131
33133
  default:
33132
33134
  return false;
33133
33135
  }
@@ -44707,7 +44709,7 @@ function createTypeChecker(host) {
44707
44709
  return isBlockScopedNameDeclaredBeforeUse(getAncestor(declaration, 260 /* VariableDeclaration */), usage);
44708
44710
  } else if (declaration.kind === 260 /* VariableDeclaration */) {
44709
44711
  return !isImmediatelyUsedInInitializerOfBlockScopedVariable(declaration, usage);
44710
- } else if (isClassDeclaration(declaration)) {
44712
+ } else if (isClassLike(declaration)) {
44711
44713
  return !findAncestor(usage, (n) => isComputedPropertyName(n) && n.parent.parent === declaration);
44712
44714
  } else if (isPropertyDeclaration(declaration)) {
44713
44715
  return !isPropertyImmediatelyReferencedWithinDeclaration(
@@ -55325,6 +55327,7 @@ function createTypeChecker(host) {
55325
55327
  let flags = 0 /* None */;
55326
55328
  let minArgumentCount = 0;
55327
55329
  let thisParameter;
55330
+ let thisTag = isInJSFile(declaration) ? getJSDocThisTag(declaration) : void 0;
55328
55331
  let hasThisParameter = false;
55329
55332
  const iife = getImmediatelyInvokedFunctionExpression(declaration);
55330
55333
  const isJSConstructSignature = isJSDocConstructSignature(declaration);
@@ -55334,6 +55337,10 @@ function createTypeChecker(host) {
55334
55337
  }
55335
55338
  for (let i = isJSConstructSignature ? 1 : 0; i < declaration.parameters.length; i++) {
55336
55339
  const param = declaration.parameters[i];
55340
+ if (isInJSFile(param) && isJSDocThisTag(param)) {
55341
+ thisTag = param;
55342
+ continue;
55343
+ }
55337
55344
  let paramSymbol = param.symbol;
55338
55345
  const type = isJSDocParameterTag(param) ? param.typeExpression && param.typeExpression.type : param.type;
55339
55346
  if (paramSymbol && !!(paramSymbol.flags & 4 /* Property */) && !isBindingPattern(param.name)) {
@@ -55371,11 +55378,8 @@ function createTypeChecker(host) {
55371
55378
  thisParameter = getAnnotatedAccessorThisParameter(other);
55372
55379
  }
55373
55380
  }
55374
- if (isInJSFile(declaration)) {
55375
- const thisTag = getJSDocThisTag(declaration);
55376
- if (thisTag && thisTag.typeExpression) {
55377
- thisParameter = createSymbolWithType(createSymbol(1 /* FunctionScopedVariable */, "this" /* This */), getTypeFromTypeNode(thisTag.typeExpression));
55378
- }
55381
+ if (thisTag && thisTag.typeExpression) {
55382
+ thisParameter = createSymbolWithType(createSymbol(1 /* FunctionScopedVariable */, "this" /* This */), getTypeFromTypeNode(thisTag.typeExpression));
55379
55383
  }
55380
55384
  const hostDeclaration = isJSDocSignature(declaration) ? getEffectiveJSDocHost(declaration) : declaration;
55381
55385
  const classType = hostDeclaration && isConstructorDeclaration(hostDeclaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(hostDeclaration.parent.symbol)) : void 0;
@@ -60174,8 +60178,8 @@ function createTypeChecker(host) {
60174
60178
  const sourceType = i === restIndex ? getRestTypeAtPosition(source, i) : tryGetTypeAtPosition(source, i);
60175
60179
  const targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
60176
60180
  if (sourceType && targetType) {
60177
- const sourceSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
60178
- const targetSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
60181
+ const sourceSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(source, i) ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
60182
+ const targetSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(target, i) ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
60179
60183
  const callbacks = sourceSig && targetSig && !getTypePredicateOfSignature(sourceSig) && !getTypePredicateOfSignature(targetSig) && getTypeFacts(sourceType, 50331648 /* IsUndefinedOrNull */) === getTypeFacts(targetType, 50331648 /* IsUndefinedOrNull */);
60180
60184
  let related = callbacks ? compareSignaturesRelated(targetSig, sourceSig, checkMode & 8 /* StrictArity */ | (strictVariance ? 2 /* StrictCallback */ : 1 /* BivariantCallback */), reportErrors2, errorReporter, incompatibleErrorReporter, compareTypes, reportUnreliableMarkers) : !(checkMode & 3 /* Callback */) && !strictVariance && compareTypes(
60181
60185
  sourceType,
@@ -70725,6 +70729,10 @@ function createTypeChecker(host) {
70725
70729
  const minTypeArgumentCount = getMinTypeArgumentCount(signature.typeParameters);
70726
70730
  return !some(typeArguments) || typeArguments.length >= minTypeArgumentCount && typeArguments.length <= numTypeParameters;
70727
70731
  }
70732
+ function isInstantiatedGenericParameter(signature, pos) {
70733
+ let type;
70734
+ return !!(signature.target && (type = tryGetTypeAtPosition(signature.target, pos)) && isGenericType(type));
70735
+ }
70728
70736
  function getSingleCallSignature(type) {
70729
70737
  return getSingleSignature(
70730
70738
  type,
package/lib/tsserver.js CHANGED
@@ -2332,7 +2332,7 @@ module.exports = __toCommonJS(server_exports);
2332
2332
 
2333
2333
  // src/compiler/corePublic.ts
2334
2334
  var versionMajorMinor = "5.4";
2335
- var version = `${versionMajorMinor}.0-dev.20231201`;
2335
+ var version = `${versionMajorMinor}.0-dev.20231202`;
2336
2336
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2337
2337
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2338
2338
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -37555,6 +37555,8 @@ var Parser;
37555
37555
  break;
37556
37556
  case "template":
37557
37557
  return parseTemplateTag(start3, tagName, indent3, indentText);
37558
+ case "this":
37559
+ return parseThisTag(start3, tagName, indent3, indentText);
37558
37560
  default:
37559
37561
  return false;
37560
37562
  }
@@ -49434,7 +49436,7 @@ function createTypeChecker(host) {
49434
49436
  return isBlockScopedNameDeclaredBeforeUse(getAncestor(declaration, 260 /* VariableDeclaration */), usage);
49435
49437
  } else if (declaration.kind === 260 /* VariableDeclaration */) {
49436
49438
  return !isImmediatelyUsedInInitializerOfBlockScopedVariable(declaration, usage);
49437
- } else if (isClassDeclaration(declaration)) {
49439
+ } else if (isClassLike(declaration)) {
49438
49440
  return !findAncestor(usage, (n) => isComputedPropertyName(n) && n.parent.parent === declaration);
49439
49441
  } else if (isPropertyDeclaration(declaration)) {
49440
49442
  return !isPropertyImmediatelyReferencedWithinDeclaration(
@@ -60052,6 +60054,7 @@ function createTypeChecker(host) {
60052
60054
  let flags = 0 /* None */;
60053
60055
  let minArgumentCount = 0;
60054
60056
  let thisParameter;
60057
+ let thisTag = isInJSFile(declaration) ? getJSDocThisTag(declaration) : void 0;
60055
60058
  let hasThisParameter2 = false;
60056
60059
  const iife = getImmediatelyInvokedFunctionExpression(declaration);
60057
60060
  const isJSConstructSignature = isJSDocConstructSignature(declaration);
@@ -60061,6 +60064,10 @@ function createTypeChecker(host) {
60061
60064
  }
60062
60065
  for (let i = isJSConstructSignature ? 1 : 0; i < declaration.parameters.length; i++) {
60063
60066
  const param = declaration.parameters[i];
60067
+ if (isInJSFile(param) && isJSDocThisTag(param)) {
60068
+ thisTag = param;
60069
+ continue;
60070
+ }
60064
60071
  let paramSymbol = param.symbol;
60065
60072
  const type = isJSDocParameterTag(param) ? param.typeExpression && param.typeExpression.type : param.type;
60066
60073
  if (paramSymbol && !!(paramSymbol.flags & 4 /* Property */) && !isBindingPattern(param.name)) {
@@ -60098,11 +60105,8 @@ function createTypeChecker(host) {
60098
60105
  thisParameter = getAnnotatedAccessorThisParameter(other);
60099
60106
  }
60100
60107
  }
60101
- if (isInJSFile(declaration)) {
60102
- const thisTag = getJSDocThisTag(declaration);
60103
- if (thisTag && thisTag.typeExpression) {
60104
- thisParameter = createSymbolWithType(createSymbol(1 /* FunctionScopedVariable */, "this" /* This */), getTypeFromTypeNode(thisTag.typeExpression));
60105
- }
60108
+ if (thisTag && thisTag.typeExpression) {
60109
+ thisParameter = createSymbolWithType(createSymbol(1 /* FunctionScopedVariable */, "this" /* This */), getTypeFromTypeNode(thisTag.typeExpression));
60106
60110
  }
60107
60111
  const hostDeclaration = isJSDocSignature(declaration) ? getEffectiveJSDocHost(declaration) : declaration;
60108
60112
  const classType = hostDeclaration && isConstructorDeclaration(hostDeclaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(hostDeclaration.parent.symbol)) : void 0;
@@ -64901,8 +64905,8 @@ function createTypeChecker(host) {
64901
64905
  const sourceType = i === restIndex ? getRestTypeAtPosition(source, i) : tryGetTypeAtPosition(source, i);
64902
64906
  const targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
64903
64907
  if (sourceType && targetType) {
64904
- const sourceSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
64905
- const targetSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
64908
+ const sourceSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(source, i) ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
64909
+ const targetSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(target, i) ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
64906
64910
  const callbacks = sourceSig && targetSig && !getTypePredicateOfSignature(sourceSig) && !getTypePredicateOfSignature(targetSig) && getTypeFacts(sourceType, 50331648 /* IsUndefinedOrNull */) === getTypeFacts(targetType, 50331648 /* IsUndefinedOrNull */);
64907
64911
  let related = callbacks ? compareSignaturesRelated(targetSig, sourceSig, checkMode & 8 /* StrictArity */ | (strictVariance ? 2 /* StrictCallback */ : 1 /* BivariantCallback */), reportErrors2, errorReporter, incompatibleErrorReporter, compareTypes, reportUnreliableMarkers) : !(checkMode & 3 /* Callback */) && !strictVariance && compareTypes(
64908
64912
  sourceType,
@@ -75452,6 +75456,10 @@ function createTypeChecker(host) {
75452
75456
  const minTypeArgumentCount = getMinTypeArgumentCount(signature.typeParameters);
75453
75457
  return !some(typeArguments) || typeArguments.length >= minTypeArgumentCount && typeArguments.length <= numTypeParameters;
75454
75458
  }
75459
+ function isInstantiatedGenericParameter(signature, pos) {
75460
+ let type;
75461
+ return !!(signature.target && (type = tryGetTypeAtPosition(signature.target, pos)) && isGenericType(type));
75462
+ }
75455
75463
  function getSingleCallSignature(type) {
75456
75464
  return getSingleSignature(
75457
75465
  type,
@@ -137815,7 +137823,7 @@ function transpileModule(input, transpileOptions) {
137815
137823
  options
137816
137824
  ),
137817
137825
  setExternalModuleIndicator: getSetExternalModuleIndicator(options),
137818
- jsDocParsingMode: transpileOptions.jsDocParsingMode ?? 1 /* ParseNone */
137826
+ jsDocParsingMode: transpileOptions.jsDocParsingMode ?? 0 /* ParseAll */
137819
137827
  }
137820
137828
  );
137821
137829
  if (transpileOptions.moduleName) {
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.4";
38
- version = `${versionMajorMinor}.0-dev.20231201`;
38
+ version = `${versionMajorMinor}.0-dev.20231202`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -35623,6 +35623,8 @@ ${lanes.join("\n")}
35623
35623
  break;
35624
35624
  case "template":
35625
35625
  return parseTemplateTag(start2, tagName, indent3, indentText);
35626
+ case "this":
35627
+ return parseThisTag(start2, tagName, indent3, indentText);
35626
35628
  default:
35627
35629
  return false;
35628
35630
  }
@@ -47197,7 +47199,7 @@ ${lanes.join("\n")}
47197
47199
  return isBlockScopedNameDeclaredBeforeUse(getAncestor(declaration, 260 /* VariableDeclaration */), usage);
47198
47200
  } else if (declaration.kind === 260 /* VariableDeclaration */) {
47199
47201
  return !isImmediatelyUsedInInitializerOfBlockScopedVariable(declaration, usage);
47200
- } else if (isClassDeclaration(declaration)) {
47202
+ } else if (isClassLike(declaration)) {
47201
47203
  return !findAncestor(usage, (n) => isComputedPropertyName(n) && n.parent.parent === declaration);
47202
47204
  } else if (isPropertyDeclaration(declaration)) {
47203
47205
  return !isPropertyImmediatelyReferencedWithinDeclaration(
@@ -57815,6 +57817,7 @@ ${lanes.join("\n")}
57815
57817
  let flags = 0 /* None */;
57816
57818
  let minArgumentCount = 0;
57817
57819
  let thisParameter;
57820
+ let thisTag = isInJSFile(declaration) ? getJSDocThisTag(declaration) : void 0;
57818
57821
  let hasThisParameter2 = false;
57819
57822
  const iife = getImmediatelyInvokedFunctionExpression(declaration);
57820
57823
  const isJSConstructSignature = isJSDocConstructSignature(declaration);
@@ -57824,6 +57827,10 @@ ${lanes.join("\n")}
57824
57827
  }
57825
57828
  for (let i = isJSConstructSignature ? 1 : 0; i < declaration.parameters.length; i++) {
57826
57829
  const param = declaration.parameters[i];
57830
+ if (isInJSFile(param) && isJSDocThisTag(param)) {
57831
+ thisTag = param;
57832
+ continue;
57833
+ }
57827
57834
  let paramSymbol = param.symbol;
57828
57835
  const type = isJSDocParameterTag(param) ? param.typeExpression && param.typeExpression.type : param.type;
57829
57836
  if (paramSymbol && !!(paramSymbol.flags & 4 /* Property */) && !isBindingPattern(param.name)) {
@@ -57861,11 +57868,8 @@ ${lanes.join("\n")}
57861
57868
  thisParameter = getAnnotatedAccessorThisParameter(other);
57862
57869
  }
57863
57870
  }
57864
- if (isInJSFile(declaration)) {
57865
- const thisTag = getJSDocThisTag(declaration);
57866
- if (thisTag && thisTag.typeExpression) {
57867
- thisParameter = createSymbolWithType(createSymbol(1 /* FunctionScopedVariable */, "this" /* This */), getTypeFromTypeNode(thisTag.typeExpression));
57868
- }
57871
+ if (thisTag && thisTag.typeExpression) {
57872
+ thisParameter = createSymbolWithType(createSymbol(1 /* FunctionScopedVariable */, "this" /* This */), getTypeFromTypeNode(thisTag.typeExpression));
57869
57873
  }
57870
57874
  const hostDeclaration = isJSDocSignature(declaration) ? getEffectiveJSDocHost(declaration) : declaration;
57871
57875
  const classType = hostDeclaration && isConstructorDeclaration(hostDeclaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(hostDeclaration.parent.symbol)) : void 0;
@@ -62664,8 +62668,8 @@ ${lanes.join("\n")}
62664
62668
  const sourceType = i === restIndex ? getRestTypeAtPosition(source, i) : tryGetTypeAtPosition(source, i);
62665
62669
  const targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
62666
62670
  if (sourceType && targetType) {
62667
- const sourceSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
62668
- const targetSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
62671
+ const sourceSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(source, i) ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
62672
+ const targetSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(target, i) ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
62669
62673
  const callbacks = sourceSig && targetSig && !getTypePredicateOfSignature(sourceSig) && !getTypePredicateOfSignature(targetSig) && getTypeFacts(sourceType, 50331648 /* IsUndefinedOrNull */) === getTypeFacts(targetType, 50331648 /* IsUndefinedOrNull */);
62670
62674
  let related = callbacks ? compareSignaturesRelated(targetSig, sourceSig, checkMode & 8 /* StrictArity */ | (strictVariance ? 2 /* StrictCallback */ : 1 /* BivariantCallback */), reportErrors2, errorReporter, incompatibleErrorReporter, compareTypes, reportUnreliableMarkers) : !(checkMode & 3 /* Callback */) && !strictVariance && compareTypes(
62671
62675
  sourceType,
@@ -73215,6 +73219,10 @@ ${lanes.join("\n")}
73215
73219
  const minTypeArgumentCount = getMinTypeArgumentCount(signature.typeParameters);
73216
73220
  return !some(typeArguments) || typeArguments.length >= minTypeArgumentCount && typeArguments.length <= numTypeParameters;
73217
73221
  }
73222
+ function isInstantiatedGenericParameter(signature, pos) {
73223
+ let type;
73224
+ return !!(signature.target && (type = tryGetTypeAtPosition(signature.target, pos)) && isGenericType(type));
73225
+ }
73218
73226
  function getSingleCallSignature(type) {
73219
73227
  return getSingleSignature(
73220
73228
  type,
@@ -136180,7 +136188,7 @@ ${lanes.join("\n")}
136180
136188
  options
136181
136189
  ),
136182
136190
  setExternalModuleIndicator: getSetExternalModuleIndicator(options),
136183
- jsDocParsingMode: transpileOptions.jsDocParsingMode ?? 1 /* ParseNone */
136191
+ jsDocParsingMode: transpileOptions.jsDocParsingMode ?? 0 /* ParseAll */
136184
136192
  }
136185
136193
  );
136186
136194
  if (transpileOptions.moduleName) {
@@ -54,7 +54,7 @@ var path = __toESM(require("path"));
54
54
 
55
55
  // src/compiler/corePublic.ts
56
56
  var versionMajorMinor = "5.4";
57
- var version = `${versionMajorMinor}.0-dev.20231201`;
57
+ var version = `${versionMajorMinor}.0-dev.20231202`;
58
58
 
59
59
  // src/compiler/core.ts
60
60
  var emptyArray = [];
@@ -24942,6 +24942,8 @@ var Parser;
24942
24942
  break;
24943
24943
  case "template":
24944
24944
  return parseTemplateTag(start2, tagName, indent3, indentText);
24945
+ case "this":
24946
+ return parseThisTag(start2, tagName, indent3, indentText);
24945
24947
  default:
24946
24948
  return false;
24947
24949
  }
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.4.0-dev.20231201",
5
+ "version": "5.4.0-dev.20231202",
6
6
  "license": "Apache-2.0",
7
7
  "description": "TypeScript is a language for application scale JavaScript development",
8
8
  "keywords": [
@@ -114,5 +114,5 @@
114
114
  "node": "20.1.0",
115
115
  "npm": "8.19.4"
116
116
  },
117
- "gitHead": "5bc66177388247d3e270653f94d82a8dabd56d69"
117
+ "gitHead": "670815f768afb613ff2651b16dc4258aeb33a036"
118
118
  }