@typescript-deploys/pr-build 5.4.0-pr-49218-45 → 5.4.0-pr-56243-5

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
@@ -50244,7 +50244,7 @@ function createTypeChecker(host) {
50244
50244
  });
50245
50245
  let addingDeclare = !bundled;
50246
50246
  const exportEquals = symbolTable.get("export=" /* ExportEquals */);
50247
- if (exportEquals && symbolTable.size > 1 && exportEquals.flags & 2097152 /* Alias */) {
50247
+ if (exportEquals && symbolTable.size > 1 && exportEquals.flags & (2097152 /* Alias */ | 1536 /* Module */)) {
50248
50248
  symbolTable = createSymbolTable();
50249
50249
  symbolTable.set("export=" /* ExportEquals */, exportEquals);
50250
50250
  }
@@ -50701,8 +50701,18 @@ function createTypeChecker(host) {
50701
50701
  );
50702
50702
  }
50703
50703
  function getNamespaceMembersForSerialization(symbol) {
50704
- const exports2 = getExportsOfSymbol(symbol);
50705
- return !exports2 ? [] : filter(arrayFrom(exports2.values()), (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
50704
+ let exports2 = arrayFrom(getExportsOfSymbol(symbol).values());
50705
+ const merged = getMergedSymbol(symbol);
50706
+ if (merged !== symbol) {
50707
+ const membersSet = new Set(exports2);
50708
+ for (const exported of getExportsOfSymbol(merged).values()) {
50709
+ if (!(getSymbolFlags(resolveSymbol(exported)) & 111551 /* Value */)) {
50710
+ membersSet.add(exported);
50711
+ }
50712
+ }
50713
+ exports2 = arrayFrom(membersSet);
50714
+ }
50715
+ return filter(exports2, (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
50706
50716
  }
50707
50717
  function isTypeOnlyNamespace(symbol) {
50708
50718
  return every(getNamespaceMembersForSerialization(symbol), (m) => !(getSymbolFlags(resolveSymbol(m)) & 111551 /* Value */));
@@ -60529,37 +60539,7 @@ function createTypeChecker(host) {
60529
60539
  const restIndex = sourceRestType || targetRestType ? paramCount - 1 : -1;
60530
60540
  for (let i = 0; i < paramCount; i++) {
60531
60541
  const sourceType = i === restIndex ? getRestTypeAtPosition(source, i) : tryGetTypeAtPosition(source, i);
60532
- let targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
60533
- if (i === restIndex && targetType && sourceType && isTupleType(sourceType)) {
60534
- targetType = mapType(targetType, (t) => {
60535
- if (!isTupleType(t) || // When both sides are tuples of the same structure, we don't want to "propagate" types from elements of variable positions
60536
- // to the following positions as that would disallow signatures of the exact same structures when trailing fixed elements are involved:
60537
- //
60538
- // let fn: (...rest: [...string[], number]) => void = (...rest: [...string[], number]) => {}; // ok
60539
- //
60540
- // Since we want to allow contextual types to flow into paremeters, we don't need to differentiate between rest and variadic elements
60541
- // as that doesn't affect the contextual type of the parameter
60542
- isTupleTypeStructureMatching(sourceType, t, 2 /* MatchVariable */)) {
60543
- return t;
60544
- }
60545
- const elementTypes = [];
60546
- const elementFlags = [];
60547
- const sourceArity = getTypeReferenceArity(sourceType);
60548
- const targetArity = getTypeReferenceArity(t);
60549
- for (let i2 = 0; i2 < sourceArity; i2++) {
60550
- if (i2 >= targetArity) {
60551
- if (sourceType.target.elementFlags[i2] & 3 /* Fixed */) {
60552
- elementTypes.push(undefinedType);
60553
- elementFlags.push(sourceType.target.elementFlags[i2]);
60554
- }
60555
- continue;
60556
- }
60557
- elementTypes.push(getTupleElementType(t, i2));
60558
- elementFlags.push(sourceType.target.elementFlags[i2]);
60559
- }
60560
- return createTupleType(elementTypes, elementFlags);
60561
- });
60562
- }
60542
+ const targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
60563
60543
  if (sourceType && targetType) {
60564
60544
  const sourceSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(source, i) ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
60565
60545
  const targetSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(target, i) ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
@@ -63816,11 +63796,8 @@ function createTypeChecker(host) {
63816
63796
  }
63817
63797
  return void 0;
63818
63798
  }
63819
- function isTupleTypeStructureMatching(t1, t2, tupleStructureComparisonKind) {
63820
- return getTypeReferenceArity(t1) === getTypeReferenceArity(t2) && every(t1.target.elementFlags, (f1, i) => {
63821
- const f2 = t2.target.elementFlags[i];
63822
- return f1 === f2 || !!(tupleStructureComparisonKind & 1 /* MatchFixed */ && f1 & 3 /* Fixed */ && f2 & 3 /* Fixed */) || !!(tupleStructureComparisonKind & 2 /* MatchVariable */ && f1 & 12 /* Variable */ && f2 & 12 /* Variable */);
63823
- });
63799
+ function isTupleTypeStructureMatching(t1, t2) {
63800
+ return getTypeReferenceArity(t1) === getTypeReferenceArity(t2) && every(t1.target.elementFlags, (f, i) => (f & 12 /* Variable */) === (t2.target.elementFlags[i] & 12 /* Variable */));
63824
63801
  }
63825
63802
  function isZeroBigInt({ value }) {
63826
63803
  return value.base10Value === "0";
@@ -65028,7 +65005,7 @@ function createTypeChecker(host) {
65028
65005
  const targetArity = getTypeReferenceArity(target);
65029
65006
  const elementTypes = getTypeArguments(target);
65030
65007
  const elementFlags = target.target.elementFlags;
65031
- if (isTupleType(source) && isTupleTypeStructureMatching(source, target, 1 /* MatchFixed */)) {
65008
+ if (isTupleType(source) && isTupleTypeStructureMatching(source, target)) {
65032
65009
  for (let i = 0; i < targetArity; i++) {
65033
65010
  inferFromTypes(getTypeArguments(source)[i], elementTypes[i]);
65034
65011
  }
@@ -119634,7 +119611,7 @@ function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _config
119634
119611
  }
119635
119612
  const isFromNodeModulesSearch = resolution.isExternalLibraryImport;
119636
119613
  const isJsFile = !resolutionExtensionIsTSOrJson(resolution.extension);
119637
- const isJsFileFromNodeModules = isFromNodeModulesSearch && isJsFile;
119614
+ const isJsFileFromNodeModules = isFromNodeModulesSearch && isJsFile && (!resolution.originalPath || pathContainsNodeModules(resolution.resolvedFileName));
119638
119615
  const resolvedFileName = resolution.resolvedFileName;
119639
119616
  if (isFromNodeModulesSearch) {
119640
119617
  currentNodeModulesDepth++;
package/lib/tsserver.js CHANGED
@@ -54982,7 +54982,7 @@ function createTypeChecker(host) {
54982
54982
  });
54983
54983
  let addingDeclare = !bundled;
54984
54984
  const exportEquals = symbolTable.get("export=" /* ExportEquals */);
54985
- if (exportEquals && symbolTable.size > 1 && exportEquals.flags & 2097152 /* Alias */) {
54985
+ if (exportEquals && symbolTable.size > 1 && exportEquals.flags & (2097152 /* Alias */ | 1536 /* Module */)) {
54986
54986
  symbolTable = createSymbolTable();
54987
54987
  symbolTable.set("export=" /* ExportEquals */, exportEquals);
54988
54988
  }
@@ -55439,8 +55439,18 @@ function createTypeChecker(host) {
55439
55439
  );
55440
55440
  }
55441
55441
  function getNamespaceMembersForSerialization(symbol) {
55442
- const exports2 = getExportsOfSymbol(symbol);
55443
- return !exports2 ? [] : filter(arrayFrom(exports2.values()), (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
55442
+ let exports2 = arrayFrom(getExportsOfSymbol(symbol).values());
55443
+ const merged = getMergedSymbol(symbol);
55444
+ if (merged !== symbol) {
55445
+ const membersSet = new Set(exports2);
55446
+ for (const exported of getExportsOfSymbol(merged).values()) {
55447
+ if (!(getSymbolFlags(resolveSymbol(exported)) & 111551 /* Value */)) {
55448
+ membersSet.add(exported);
55449
+ }
55450
+ }
55451
+ exports2 = arrayFrom(membersSet);
55452
+ }
55453
+ return filter(exports2, (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
55444
55454
  }
55445
55455
  function isTypeOnlyNamespace(symbol) {
55446
55456
  return every(getNamespaceMembersForSerialization(symbol), (m) => !(getSymbolFlags(resolveSymbol(m)) & 111551 /* Value */));
@@ -65267,37 +65277,7 @@ function createTypeChecker(host) {
65267
65277
  const restIndex = sourceRestType || targetRestType ? paramCount - 1 : -1;
65268
65278
  for (let i = 0; i < paramCount; i++) {
65269
65279
  const sourceType = i === restIndex ? getRestTypeAtPosition(source, i) : tryGetTypeAtPosition(source, i);
65270
- let targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
65271
- if (i === restIndex && targetType && sourceType && isTupleType(sourceType)) {
65272
- targetType = mapType(targetType, (t) => {
65273
- if (!isTupleType(t) || // When both sides are tuples of the same structure, we don't want to "propagate" types from elements of variable positions
65274
- // to the following positions as that would disallow signatures of the exact same structures when trailing fixed elements are involved:
65275
- //
65276
- // let fn: (...rest: [...string[], number]) => void = (...rest: [...string[], number]) => {}; // ok
65277
- //
65278
- // Since we want to allow contextual types to flow into paremeters, we don't need to differentiate between rest and variadic elements
65279
- // as that doesn't affect the contextual type of the parameter
65280
- isTupleTypeStructureMatching(sourceType, t, 2 /* MatchVariable */)) {
65281
- return t;
65282
- }
65283
- const elementTypes = [];
65284
- const elementFlags = [];
65285
- const sourceArity = getTypeReferenceArity(sourceType);
65286
- const targetArity = getTypeReferenceArity(t);
65287
- for (let i2 = 0; i2 < sourceArity; i2++) {
65288
- if (i2 >= targetArity) {
65289
- if (sourceType.target.elementFlags[i2] & 3 /* Fixed */) {
65290
- elementTypes.push(undefinedType);
65291
- elementFlags.push(sourceType.target.elementFlags[i2]);
65292
- }
65293
- continue;
65294
- }
65295
- elementTypes.push(getTupleElementType(t, i2));
65296
- elementFlags.push(sourceType.target.elementFlags[i2]);
65297
- }
65298
- return createTupleType(elementTypes, elementFlags);
65299
- });
65300
- }
65280
+ const targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
65301
65281
  if (sourceType && targetType) {
65302
65282
  const sourceSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(source, i) ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
65303
65283
  const targetSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(target, i) ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
@@ -68554,11 +68534,8 @@ function createTypeChecker(host) {
68554
68534
  }
68555
68535
  return void 0;
68556
68536
  }
68557
- function isTupleTypeStructureMatching(t1, t2, tupleStructureComparisonKind) {
68558
- return getTypeReferenceArity(t1) === getTypeReferenceArity(t2) && every(t1.target.elementFlags, (f1, i) => {
68559
- const f2 = t2.target.elementFlags[i];
68560
- return f1 === f2 || !!(tupleStructureComparisonKind & 1 /* MatchFixed */ && f1 & 3 /* Fixed */ && f2 & 3 /* Fixed */) || !!(tupleStructureComparisonKind & 2 /* MatchVariable */ && f1 & 12 /* Variable */ && f2 & 12 /* Variable */);
68561
- });
68537
+ function isTupleTypeStructureMatching(t1, t2) {
68538
+ return getTypeReferenceArity(t1) === getTypeReferenceArity(t2) && every(t1.target.elementFlags, (f, i) => (f & 12 /* Variable */) === (t2.target.elementFlags[i] & 12 /* Variable */));
68562
68539
  }
68563
68540
  function isZeroBigInt({ value }) {
68564
68541
  return value.base10Value === "0";
@@ -69766,7 +69743,7 @@ function createTypeChecker(host) {
69766
69743
  const targetArity = getTypeReferenceArity(target);
69767
69744
  const elementTypes = getTypeArguments(target);
69768
69745
  const elementFlags = target.target.elementFlags;
69769
- if (isTupleType(source) && isTupleTypeStructureMatching(source, target, 1 /* MatchFixed */)) {
69746
+ if (isTupleType(source) && isTupleTypeStructureMatching(source, target)) {
69770
69747
  for (let i = 0; i < targetArity; i++) {
69771
69748
  inferFromTypes(getTypeArguments(source)[i], elementTypes[i]);
69772
69749
  }
@@ -124597,7 +124574,7 @@ function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _config
124597
124574
  }
124598
124575
  const isFromNodeModulesSearch = resolution.isExternalLibraryImport;
124599
124576
  const isJsFile = !resolutionExtensionIsTSOrJson(resolution.extension);
124600
- const isJsFileFromNodeModules = isFromNodeModulesSearch && isJsFile;
124577
+ const isJsFileFromNodeModules = isFromNodeModulesSearch && isJsFile && (!resolution.originalPath || pathContainsNodeModules(resolution.resolvedFileName));
124601
124578
  const resolvedFileName = resolution.resolvedFileName;
124602
124579
  if (isFromNodeModulesSearch) {
124603
124580
  currentNodeModulesDepth++;
package/lib/typescript.js CHANGED
@@ -52737,7 +52737,7 @@ ${lanes.join("\n")}
52737
52737
  });
52738
52738
  let addingDeclare = !bundled;
52739
52739
  const exportEquals = symbolTable.get("export=" /* ExportEquals */);
52740
- if (exportEquals && symbolTable.size > 1 && exportEquals.flags & 2097152 /* Alias */) {
52740
+ if (exportEquals && symbolTable.size > 1 && exportEquals.flags & (2097152 /* Alias */ | 1536 /* Module */)) {
52741
52741
  symbolTable = createSymbolTable();
52742
52742
  symbolTable.set("export=" /* ExportEquals */, exportEquals);
52743
52743
  }
@@ -53194,8 +53194,18 @@ ${lanes.join("\n")}
53194
53194
  );
53195
53195
  }
53196
53196
  function getNamespaceMembersForSerialization(symbol) {
53197
- const exports = getExportsOfSymbol(symbol);
53198
- return !exports ? [] : filter(arrayFrom(exports.values()), (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
53197
+ let exports = arrayFrom(getExportsOfSymbol(symbol).values());
53198
+ const merged = getMergedSymbol(symbol);
53199
+ if (merged !== symbol) {
53200
+ const membersSet = new Set(exports);
53201
+ for (const exported of getExportsOfSymbol(merged).values()) {
53202
+ if (!(getSymbolFlags(resolveSymbol(exported)) & 111551 /* Value */)) {
53203
+ membersSet.add(exported);
53204
+ }
53205
+ }
53206
+ exports = arrayFrom(membersSet);
53207
+ }
53208
+ return filter(exports, (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
53199
53209
  }
53200
53210
  function isTypeOnlyNamespace(symbol) {
53201
53211
  return every(getNamespaceMembersForSerialization(symbol), (m) => !(getSymbolFlags(resolveSymbol(m)) & 111551 /* Value */));
@@ -63022,37 +63032,7 @@ ${lanes.join("\n")}
63022
63032
  const restIndex = sourceRestType || targetRestType ? paramCount - 1 : -1;
63023
63033
  for (let i = 0; i < paramCount; i++) {
63024
63034
  const sourceType = i === restIndex ? getRestTypeAtPosition(source, i) : tryGetTypeAtPosition(source, i);
63025
- let targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
63026
- if (i === restIndex && targetType && sourceType && isTupleType(sourceType)) {
63027
- targetType = mapType(targetType, (t) => {
63028
- if (!isTupleType(t) || // When both sides are tuples of the same structure, we don't want to "propagate" types from elements of variable positions
63029
- // to the following positions as that would disallow signatures of the exact same structures when trailing fixed elements are involved:
63030
- //
63031
- // let fn: (...rest: [...string[], number]) => void = (...rest: [...string[], number]) => {}; // ok
63032
- //
63033
- // Since we want to allow contextual types to flow into paremeters, we don't need to differentiate between rest and variadic elements
63034
- // as that doesn't affect the contextual type of the parameter
63035
- isTupleTypeStructureMatching(sourceType, t, 2 /* MatchVariable */)) {
63036
- return t;
63037
- }
63038
- const elementTypes = [];
63039
- const elementFlags = [];
63040
- const sourceArity = getTypeReferenceArity(sourceType);
63041
- const targetArity = getTypeReferenceArity(t);
63042
- for (let i2 = 0; i2 < sourceArity; i2++) {
63043
- if (i2 >= targetArity) {
63044
- if (sourceType.target.elementFlags[i2] & 3 /* Fixed */) {
63045
- elementTypes.push(undefinedType);
63046
- elementFlags.push(sourceType.target.elementFlags[i2]);
63047
- }
63048
- continue;
63049
- }
63050
- elementTypes.push(getTupleElementType(t, i2));
63051
- elementFlags.push(sourceType.target.elementFlags[i2]);
63052
- }
63053
- return createTupleType(elementTypes, elementFlags);
63054
- });
63055
- }
63035
+ const targetType = i === restIndex ? getRestTypeAtPosition(target, i) : tryGetTypeAtPosition(target, i);
63056
63036
  if (sourceType && targetType) {
63057
63037
  const sourceSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(source, i) ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
63058
63038
  const targetSig = checkMode & 3 /* Callback */ || isInstantiatedGenericParameter(target, i) ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
@@ -66309,11 +66289,8 @@ ${lanes.join("\n")}
66309
66289
  }
66310
66290
  return void 0;
66311
66291
  }
66312
- function isTupleTypeStructureMatching(t1, t2, tupleStructureComparisonKind) {
66313
- return getTypeReferenceArity(t1) === getTypeReferenceArity(t2) && every(t1.target.elementFlags, (f1, i) => {
66314
- const f2 = t2.target.elementFlags[i];
66315
- return f1 === f2 || !!(tupleStructureComparisonKind & 1 /* MatchFixed */ && f1 & 3 /* Fixed */ && f2 & 3 /* Fixed */) || !!(tupleStructureComparisonKind & 2 /* MatchVariable */ && f1 & 12 /* Variable */ && f2 & 12 /* Variable */);
66316
- });
66292
+ function isTupleTypeStructureMatching(t1, t2) {
66293
+ return getTypeReferenceArity(t1) === getTypeReferenceArity(t2) && every(t1.target.elementFlags, (f, i) => (f & 12 /* Variable */) === (t2.target.elementFlags[i] & 12 /* Variable */));
66317
66294
  }
66318
66295
  function isZeroBigInt({ value }) {
66319
66296
  return value.base10Value === "0";
@@ -67521,7 +67498,7 @@ ${lanes.join("\n")}
67521
67498
  const targetArity = getTypeReferenceArity(target);
67522
67499
  const elementTypes = getTypeArguments(target);
67523
67500
  const elementFlags = target.target.elementFlags;
67524
- if (isTupleType(source) && isTupleTypeStructureMatching(source, target, 1 /* MatchFixed */)) {
67501
+ if (isTupleType(source) && isTupleTypeStructureMatching(source, target)) {
67525
67502
  for (let i = 0; i < targetArity; i++) {
67526
67503
  inferFromTypes(getTypeArguments(source)[i], elementTypes[i]);
67527
67504
  }
@@ -122570,7 +122547,7 @@ ${lanes.join("\n")}
122570
122547
  }
122571
122548
  const isFromNodeModulesSearch = resolution.isExternalLibraryImport;
122572
122549
  const isJsFile = !resolutionExtensionIsTSOrJson(resolution.extension);
122573
- const isJsFileFromNodeModules = isFromNodeModulesSearch && isJsFile;
122550
+ const isJsFileFromNodeModules = isFromNodeModulesSearch && isJsFile && (!resolution.originalPath || pathContainsNodeModules(resolution.resolvedFileName));
122574
122551
  const resolvedFileName = resolution.resolvedFileName;
122575
122552
  if (isFromNodeModulesSearch) {
122576
122553
  currentNodeModulesDepth++;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@typescript-deploys/pr-build",
3
3
  "author": "Microsoft Corp.",
4
4
  "homepage": "https://www.typescriptlang.org/",
5
- "version": "5.4.0-pr-49218-45",
5
+ "version": "5.4.0-pr-56243-5",
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": "624e31924d903e31deffbf8358ff7d517e1a6ec3"
117
+ "gitHead": "fe865ed126747a43ecaedd50761ad4070902ac22"
118
118
  }