@typescript-deploys/pr-build 5.8.0-pr-60910-2 → 5.8.0-pr-60834-11
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 +29 -25
- package/lib/typescript.js +29 -25
- package/package.json +1 -1
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.8";
|
|
21
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
21
|
+
var version = `${versionMajorMinor}.0-insiders.20250104`;
|
|
22
22
|
|
|
23
23
|
// src/compiler/core.ts
|
|
24
24
|
var emptyArray = [];
|
|
@@ -41407,7 +41407,7 @@ function loadModuleFromNearestNodeModulesDirectoryTypesScope(moduleName, directo
|
|
|
41407
41407
|
);
|
|
41408
41408
|
}
|
|
41409
41409
|
function loadModuleFromNearestNodeModulesDirectoryWorker(extensions, moduleName, directory, state, typesScopeOnly, cache, redirectedReference) {
|
|
41410
|
-
const mode = state.features === 0 ? void 0 : state.features & 32 /* EsmMode */
|
|
41410
|
+
const mode = state.features === 0 ? void 0 : state.features & 32 /* EsmMode */ ? 99 /* ESNext */ : 1 /* CommonJS */;
|
|
41411
41411
|
const priorityExtensions = extensions & (1 /* TypeScript */ | 4 /* Declaration */);
|
|
41412
41412
|
const secondaryExtensions = extensions & ~(1 /* TypeScript */ | 4 /* Declaration */);
|
|
41413
41413
|
if (priorityExtensions) {
|
|
@@ -77870,7 +77870,7 @@ function createTypeChecker(host) {
|
|
|
77870
77870
|
return false;
|
|
77871
77871
|
}
|
|
77872
77872
|
}
|
|
77873
|
-
function getTypePredicateFromBody(func) {
|
|
77873
|
+
function getTypePredicateFromBody(func, contextualTypePredicate) {
|
|
77874
77874
|
switch (func.kind) {
|
|
77875
77875
|
case 176 /* Constructor */:
|
|
77876
77876
|
case 177 /* GetAccessor */:
|
|
@@ -77889,28 +77889,29 @@ function createTypeChecker(host) {
|
|
|
77889
77889
|
});
|
|
77890
77890
|
if (bailedEarly || !singleReturn || functionHasImplicitReturn(func)) return void 0;
|
|
77891
77891
|
}
|
|
77892
|
-
|
|
77893
|
-
|
|
77894
|
-
function checkIfExpressionRefinesAnyParameter(func, expr) {
|
|
77895
|
-
expr = skipParentheses(
|
|
77896
|
-
expr,
|
|
77892
|
+
const expr = skipParentheses(
|
|
77893
|
+
singleReturn,
|
|
77897
77894
|
/*excludeJSDocTypeAssertions*/
|
|
77898
77895
|
true
|
|
77899
77896
|
);
|
|
77900
77897
|
const returnType = checkExpressionCached(expr);
|
|
77901
|
-
if (
|
|
77902
|
-
|
|
77903
|
-
|
|
77904
|
-
|
|
77905
|
-
return;
|
|
77906
|
-
}
|
|
77907
|
-
const trueType2 = checkIfExpressionRefinesParameter(func, expr, param, initType);
|
|
77908
|
-
if (trueType2) {
|
|
77909
|
-
return createTypePredicate(1 /* Identifier */, unescapeLeadingUnderscores(param.name.escapedText), i, trueType2);
|
|
77898
|
+
if (contextualTypePredicate && returnType.flags & 512 /* BooleanLiteral */) {
|
|
77899
|
+
const param = func.parameters[contextualTypePredicate.parameterIndex];
|
|
77900
|
+
if (!isIdentifier(param.name)) {
|
|
77901
|
+
return void 0;
|
|
77910
77902
|
}
|
|
77911
|
-
|
|
77903
|
+
const refinedType = returnType.intrinsicName === "true" ? getTypeOfSymbol(param.symbol) : neverType;
|
|
77904
|
+
return createTypePredicate(1 /* Identifier */, unescapeLeadingUnderscores(param.name.escapedText), contextualTypePredicate.parameterIndex, refinedType);
|
|
77905
|
+
}
|
|
77906
|
+
if (!(returnType.flags & 16 /* Boolean */)) return void 0;
|
|
77907
|
+
return contextualTypePredicate ? getTypePredicateIfRefinesParameterAtIndex(func, expr, contextualTypePredicate, contextualTypePredicate.parameterIndex) : forEach(func.parameters, (_, i) => getTypePredicateIfRefinesParameterAtIndex(func, expr, contextualTypePredicate, i));
|
|
77912
77908
|
}
|
|
77913
|
-
function
|
|
77909
|
+
function getTypePredicateIfRefinesParameterAtIndex(func, expr, contextualTypePredicate, parameterIndex) {
|
|
77910
|
+
const param = func.parameters[parameterIndex];
|
|
77911
|
+
const initType = getTypeOfSymbol(param.symbol);
|
|
77912
|
+
if (!initType || initType.flags & 16 /* Boolean */ || !isIdentifier(param.name) || isSymbolAssigned(param.symbol) || isRestParameter(param)) {
|
|
77913
|
+
return;
|
|
77914
|
+
}
|
|
77914
77915
|
const antecedent = canHaveFlowNode(expr) && expr.flowNode || expr.parent.kind === 253 /* ReturnStatement */ && expr.parent.flowNode || createFlowNode(
|
|
77915
77916
|
2 /* Start */,
|
|
77916
77917
|
/*node*/
|
|
@@ -77920,10 +77921,12 @@ function createTypeChecker(host) {
|
|
|
77920
77921
|
);
|
|
77921
77922
|
const trueCondition = createFlowNode(32 /* TrueCondition */, expr, antecedent);
|
|
77922
77923
|
const trueType2 = getFlowTypeOfReference(param.name, initType, initType, func, trueCondition);
|
|
77923
|
-
if (trueType2 === initType)
|
|
77924
|
+
if (!contextualTypePredicate && trueType2 === initType) {
|
|
77925
|
+
return void 0;
|
|
77926
|
+
}
|
|
77924
77927
|
const falseCondition = createFlowNode(64 /* FalseCondition */, expr, antecedent);
|
|
77925
77928
|
const falseSubtype = getFlowTypeOfReference(param.name, initType, trueType2, func, falseCondition);
|
|
77926
|
-
return falseSubtype.flags & 131072 /* Never */ ? trueType2 : void 0;
|
|
77929
|
+
return falseSubtype.flags & 131072 /* Never */ ? createTypePredicate(1 /* Identifier */, unescapeLeadingUnderscores(param.name.escapedText), parameterIndex, trueType2) : void 0;
|
|
77927
77930
|
}
|
|
77928
77931
|
function checkAllCodePathsInNonVoidFunctionReturnOrThrow(func, returnType) {
|
|
77929
77932
|
addLazyDiagnostic(checkAllCodePathsInNonVoidFunctionReturnOrThrowDiagnostics);
|
|
@@ -78034,10 +78037,11 @@ function createTypeChecker(host) {
|
|
|
78034
78037
|
inferFromAnnotatedParameters(signature, contextualSignature, inferenceContext);
|
|
78035
78038
|
}
|
|
78036
78039
|
}
|
|
78037
|
-
if (contextualSignature && !getReturnTypeFromAnnotation(node)
|
|
78038
|
-
const returnType = getReturnTypeFromBody(node, checkMode);
|
|
78039
|
-
|
|
78040
|
-
|
|
78040
|
+
if (contextualSignature && !getReturnTypeFromAnnotation(node)) {
|
|
78041
|
+
const returnType = signature.resolvedReturnType ?? getReturnTypeFromBody(node, checkMode);
|
|
78042
|
+
signature.resolvedReturnType ?? (signature.resolvedReturnType = returnType);
|
|
78043
|
+
if (signature.resolvedReturnType.flags && 16 /* Boolean */ && contextualSignature.resolvedTypePredicate && contextualSignature.resolvedTypePredicate !== noTypePredicate && contextualSignature.resolvedTypePredicate.kind === 1 /* Identifier */) {
|
|
78044
|
+
signature.resolvedTypePredicate ?? (signature.resolvedTypePredicate = getTypePredicateFromBody(node, contextualSignature.resolvedTypePredicate) ?? noTypePredicate);
|
|
78041
78045
|
}
|
|
78042
78046
|
}
|
|
78043
78047
|
checkSignatureDeclaration(node);
|
package/lib/typescript.js
CHANGED
|
@@ -2279,7 +2279,7 @@ module.exports = __toCommonJS(typescript_exports);
|
|
|
2279
2279
|
|
|
2280
2280
|
// src/compiler/corePublic.ts
|
|
2281
2281
|
var versionMajorMinor = "5.8";
|
|
2282
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
2282
|
+
var version = `${versionMajorMinor}.0-insiders.20250104`;
|
|
2283
2283
|
var Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
2284
2284
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
2285
2285
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -45893,7 +45893,7 @@ function loadModuleFromNearestNodeModulesDirectoryTypesScope(moduleName, directo
|
|
|
45893
45893
|
);
|
|
45894
45894
|
}
|
|
45895
45895
|
function loadModuleFromNearestNodeModulesDirectoryWorker(extensions, moduleName, directory, state, typesScopeOnly, cache, redirectedReference) {
|
|
45896
|
-
const mode = state.features === 0 ? void 0 : state.features & 32 /* EsmMode */
|
|
45896
|
+
const mode = state.features === 0 ? void 0 : state.features & 32 /* EsmMode */ ? 99 /* ESNext */ : 1 /* CommonJS */;
|
|
45897
45897
|
const priorityExtensions = extensions & (1 /* TypeScript */ | 4 /* Declaration */);
|
|
45898
45898
|
const secondaryExtensions = extensions & ~(1 /* TypeScript */ | 4 /* Declaration */);
|
|
45899
45899
|
if (priorityExtensions) {
|
|
@@ -82474,7 +82474,7 @@ function createTypeChecker(host) {
|
|
|
82474
82474
|
return false;
|
|
82475
82475
|
}
|
|
82476
82476
|
}
|
|
82477
|
-
function getTypePredicateFromBody(func) {
|
|
82477
|
+
function getTypePredicateFromBody(func, contextualTypePredicate) {
|
|
82478
82478
|
switch (func.kind) {
|
|
82479
82479
|
case 176 /* Constructor */:
|
|
82480
82480
|
case 177 /* GetAccessor */:
|
|
@@ -82493,28 +82493,29 @@ function createTypeChecker(host) {
|
|
|
82493
82493
|
});
|
|
82494
82494
|
if (bailedEarly || !singleReturn || functionHasImplicitReturn(func)) return void 0;
|
|
82495
82495
|
}
|
|
82496
|
-
|
|
82497
|
-
|
|
82498
|
-
function checkIfExpressionRefinesAnyParameter(func, expr) {
|
|
82499
|
-
expr = skipParentheses(
|
|
82500
|
-
expr,
|
|
82496
|
+
const expr = skipParentheses(
|
|
82497
|
+
singleReturn,
|
|
82501
82498
|
/*excludeJSDocTypeAssertions*/
|
|
82502
82499
|
true
|
|
82503
82500
|
);
|
|
82504
82501
|
const returnType = checkExpressionCached(expr);
|
|
82505
|
-
if (
|
|
82506
|
-
|
|
82507
|
-
|
|
82508
|
-
|
|
82509
|
-
return;
|
|
82510
|
-
}
|
|
82511
|
-
const trueType2 = checkIfExpressionRefinesParameter(func, expr, param, initType);
|
|
82512
|
-
if (trueType2) {
|
|
82513
|
-
return createTypePredicate(1 /* Identifier */, unescapeLeadingUnderscores(param.name.escapedText), i, trueType2);
|
|
82502
|
+
if (contextualTypePredicate && returnType.flags & 512 /* BooleanLiteral */) {
|
|
82503
|
+
const param = func.parameters[contextualTypePredicate.parameterIndex];
|
|
82504
|
+
if (!isIdentifier(param.name)) {
|
|
82505
|
+
return void 0;
|
|
82514
82506
|
}
|
|
82515
|
-
|
|
82507
|
+
const refinedType = returnType.intrinsicName === "true" ? getTypeOfSymbol(param.symbol) : neverType;
|
|
82508
|
+
return createTypePredicate(1 /* Identifier */, unescapeLeadingUnderscores(param.name.escapedText), contextualTypePredicate.parameterIndex, refinedType);
|
|
82509
|
+
}
|
|
82510
|
+
if (!(returnType.flags & 16 /* Boolean */)) return void 0;
|
|
82511
|
+
return contextualTypePredicate ? getTypePredicateIfRefinesParameterAtIndex(func, expr, contextualTypePredicate, contextualTypePredicate.parameterIndex) : forEach(func.parameters, (_, i) => getTypePredicateIfRefinesParameterAtIndex(func, expr, contextualTypePredicate, i));
|
|
82516
82512
|
}
|
|
82517
|
-
function
|
|
82513
|
+
function getTypePredicateIfRefinesParameterAtIndex(func, expr, contextualTypePredicate, parameterIndex) {
|
|
82514
|
+
const param = func.parameters[parameterIndex];
|
|
82515
|
+
const initType = getTypeOfSymbol(param.symbol);
|
|
82516
|
+
if (!initType || initType.flags & 16 /* Boolean */ || !isIdentifier(param.name) || isSymbolAssigned(param.symbol) || isRestParameter(param)) {
|
|
82517
|
+
return;
|
|
82518
|
+
}
|
|
82518
82519
|
const antecedent = canHaveFlowNode(expr) && expr.flowNode || expr.parent.kind === 253 /* ReturnStatement */ && expr.parent.flowNode || createFlowNode(
|
|
82519
82520
|
2 /* Start */,
|
|
82520
82521
|
/*node*/
|
|
@@ -82524,10 +82525,12 @@ function createTypeChecker(host) {
|
|
|
82524
82525
|
);
|
|
82525
82526
|
const trueCondition = createFlowNode(32 /* TrueCondition */, expr, antecedent);
|
|
82526
82527
|
const trueType2 = getFlowTypeOfReference(param.name, initType, initType, func, trueCondition);
|
|
82527
|
-
if (trueType2 === initType)
|
|
82528
|
+
if (!contextualTypePredicate && trueType2 === initType) {
|
|
82529
|
+
return void 0;
|
|
82530
|
+
}
|
|
82528
82531
|
const falseCondition = createFlowNode(64 /* FalseCondition */, expr, antecedent);
|
|
82529
82532
|
const falseSubtype = getFlowTypeOfReference(param.name, initType, trueType2, func, falseCondition);
|
|
82530
|
-
return falseSubtype.flags & 131072 /* Never */ ? trueType2 : void 0;
|
|
82533
|
+
return falseSubtype.flags & 131072 /* Never */ ? createTypePredicate(1 /* Identifier */, unescapeLeadingUnderscores(param.name.escapedText), parameterIndex, trueType2) : void 0;
|
|
82531
82534
|
}
|
|
82532
82535
|
function checkAllCodePathsInNonVoidFunctionReturnOrThrow(func, returnType) {
|
|
82533
82536
|
addLazyDiagnostic(checkAllCodePathsInNonVoidFunctionReturnOrThrowDiagnostics);
|
|
@@ -82638,10 +82641,11 @@ function createTypeChecker(host) {
|
|
|
82638
82641
|
inferFromAnnotatedParameters(signature, contextualSignature, inferenceContext);
|
|
82639
82642
|
}
|
|
82640
82643
|
}
|
|
82641
|
-
if (contextualSignature && !getReturnTypeFromAnnotation(node)
|
|
82642
|
-
const returnType = getReturnTypeFromBody(node, checkMode);
|
|
82643
|
-
|
|
82644
|
-
|
|
82644
|
+
if (contextualSignature && !getReturnTypeFromAnnotation(node)) {
|
|
82645
|
+
const returnType = signature.resolvedReturnType ?? getReturnTypeFromBody(node, checkMode);
|
|
82646
|
+
signature.resolvedReturnType ?? (signature.resolvedReturnType = returnType);
|
|
82647
|
+
if (signature.resolvedReturnType.flags && 16 /* Boolean */ && contextualSignature.resolvedTypePredicate && contextualSignature.resolvedTypePredicate !== noTypePredicate && contextualSignature.resolvedTypePredicate.kind === 1 /* Identifier */) {
|
|
82648
|
+
signature.resolvedTypePredicate ?? (signature.resolvedTypePredicate = getTypePredicateFromBody(node, contextualSignature.resolvedTypePredicate) ?? noTypePredicate);
|
|
82645
82649
|
}
|
|
82646
82650
|
}
|
|
82647
82651
|
checkSignatureDeclaration(node);
|
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.8.0-pr-
|
|
5
|
+
"version": "5.8.0-pr-60834-11",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"description": "TypeScript is a language for application scale JavaScript development",
|
|
8
8
|
"keywords": [
|