@typescript-deploys/pr-build 5.1.0-pr-51328-34 → 5.1.0-pr-53758-6
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 +42 -71
- package/lib/tsserver.js +42 -71
- package/lib/tsserverlibrary.js +42 -71
- package/lib/typescript.js +42 -71
- package/lib/typingsInstaller.js +2 -4
- package/package.json +2 -2
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.1";
|
|
21
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
21
|
+
var version = `${versionMajorMinor}.0-insiders.20230412`;
|
|
22
22
|
|
|
23
23
|
// src/compiler/core.ts
|
|
24
24
|
var emptyArray = [];
|
|
@@ -7741,8 +7741,7 @@ var Diagnostics = {
|
|
|
7741
7741
|
_0_is_possibly_null_or_undefined: diag(18049, 1 /* Error */, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
|
|
7742
7742
|
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
|
|
7743
7743
|
Compiler_option_0_cannot_be_given_an_empty_string: diag(18051, 1 /* Error */, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string."),
|
|
7744
|
-
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
7745
|
-
Its_type_0_is_not_a_valid_JSX_element_type: diag(18053, 1 /* Error */, "Its_type_0_is_not_a_valid_JSX_element_type_18053", "Its type '{0}' is not a valid JSX element type.")
|
|
7744
|
+
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
7746
7745
|
};
|
|
7747
7746
|
|
|
7748
7747
|
// src/compiler/scanner.ts
|
|
@@ -43408,6 +43407,8 @@ function createTypeChecker(host) {
|
|
|
43408
43407
|
var resolutionTargets = [];
|
|
43409
43408
|
var resolutionResults = [];
|
|
43410
43409
|
var resolutionPropertyNames = [];
|
|
43410
|
+
var resolutionStart = 0;
|
|
43411
|
+
var inVarianceComputation = false;
|
|
43411
43412
|
var suggestionCount = 0;
|
|
43412
43413
|
var maximumSuggestionCount = 10;
|
|
43413
43414
|
var mergedSymbols = [];
|
|
@@ -50608,7 +50609,7 @@ function createTypeChecker(host) {
|
|
|
50608
50609
|
return true;
|
|
50609
50610
|
}
|
|
50610
50611
|
function findResolutionCycleStartIndex(target, propertyName) {
|
|
50611
|
-
for (let i = resolutionTargets.length - 1; i >=
|
|
50612
|
+
for (let i = resolutionTargets.length - 1; i >= resolutionStart; i--) {
|
|
50612
50613
|
if (resolutionTargetHasProperty(resolutionTargets[i], resolutionPropertyNames[i])) {
|
|
50613
50614
|
return -1;
|
|
50614
50615
|
}
|
|
@@ -58188,7 +58189,7 @@ function createTypeChecker(host) {
|
|
|
58188
58189
|
if (newConstraint.flags & 3 /* AnyOrUnknown */ || isTypeAssignableTo(getRestrictiveInstantiation(newBaseType), getRestrictiveInstantiation(newConstraint))) {
|
|
58189
58190
|
return newBaseType;
|
|
58190
58191
|
}
|
|
58191
|
-
return newBaseType.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
58192
|
+
return newBaseType.flags & 8650752 /* TypeVariable */ || newConstraint.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
58192
58193
|
}
|
|
58193
58194
|
return type;
|
|
58194
58195
|
}
|
|
@@ -61580,40 +61581,31 @@ function createTypeChecker(host) {
|
|
|
61580
61581
|
return getPropertiesOfType(type).filter((targetProp) => containsMissingType(getTypeOfSymbol(targetProp)));
|
|
61581
61582
|
}
|
|
61582
61583
|
function getBestMatchingType(source, target, isRelatedTo = compareTypesAssignable) {
|
|
61583
|
-
return findMatchingDiscriminantType(
|
|
61584
|
-
source,
|
|
61585
|
-
target,
|
|
61586
|
-
isRelatedTo,
|
|
61587
|
-
/*skipPartial*/
|
|
61588
|
-
true
|
|
61589
|
-
) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
61584
|
+
return findMatchingDiscriminantType(source, target, isRelatedTo) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
61590
61585
|
}
|
|
61591
|
-
function discriminateTypeByDiscriminableItems(target, discriminators, related
|
|
61592
|
-
const
|
|
61586
|
+
function discriminateTypeByDiscriminableItems(target, discriminators, related) {
|
|
61587
|
+
const types = target.types;
|
|
61588
|
+
const include = types.map((t) => t.flags & 402784252 /* Primitive */ ? 0 /* False */ : -1 /* True */);
|
|
61593
61589
|
for (const [getDiscriminatingType, propertyName] of discriminators) {
|
|
61594
|
-
|
|
61595
|
-
|
|
61596
|
-
|
|
61590
|
+
let matched = false;
|
|
61591
|
+
for (let i = 0; i < types.length; i++) {
|
|
61592
|
+
if (include[i]) {
|
|
61593
|
+
const targetType = getTypeOfPropertyOfType(types[i], propertyName);
|
|
61594
|
+
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
61595
|
+
matched = true;
|
|
61596
|
+
} else {
|
|
61597
|
+
include[i] = 3 /* Maybe */;
|
|
61598
|
+
}
|
|
61599
|
+
}
|
|
61597
61600
|
}
|
|
61598
|
-
let i = 0;
|
|
61599
|
-
|
|
61600
|
-
|
|
61601
|
-
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
61602
|
-
discriminable[i] = discriminable[i] === void 0 ? true : discriminable[i];
|
|
61603
|
-
} else {
|
|
61604
|
-
discriminable[i] = false;
|
|
61601
|
+
for (let i = 0; i < types.length; i++) {
|
|
61602
|
+
if (include[i] === 3 /* Maybe */) {
|
|
61603
|
+
include[i] = matched ? 0 /* False */ : -1 /* True */;
|
|
61605
61604
|
}
|
|
61606
|
-
i++;
|
|
61607
61605
|
}
|
|
61608
61606
|
}
|
|
61609
|
-
const
|
|
61610
|
-
|
|
61611
|
-
true
|
|
61612
|
-
);
|
|
61613
|
-
if (match === -1) {
|
|
61614
|
-
return defaultValue;
|
|
61615
|
-
}
|
|
61616
|
-
return getUnionType(target.types.filter((_, index) => discriminable[index]));
|
|
61607
|
+
const filtered = contains(include, 0 /* False */) ? getUnionType(types.filter((_, i) => include[i])) : target;
|
|
61608
|
+
return filtered.flags & 131072 /* Never */ ? target : filtered;
|
|
61617
61609
|
}
|
|
61618
61610
|
function isWeakType(type) {
|
|
61619
61611
|
if (type.flags & 524288 /* Object */) {
|
|
@@ -61644,6 +61636,11 @@ function createTypeChecker(host) {
|
|
|
61644
61636
|
const links = getSymbolLinks(symbol);
|
|
61645
61637
|
if (!links.variances) {
|
|
61646
61638
|
(_a2 = tracing) == null ? void 0 : _a2.push(tracing.Phase.CheckTypes, "getVariancesWorker", { arity: typeParameters.length, id: getTypeId(getDeclaredTypeOfSymbol(symbol)) });
|
|
61639
|
+
const oldVarianceComputation = inVarianceComputation;
|
|
61640
|
+
if (!inVarianceComputation) {
|
|
61641
|
+
inVarianceComputation = true;
|
|
61642
|
+
resolutionStart = resolutionTargets.length;
|
|
61643
|
+
}
|
|
61647
61644
|
links.variances = emptyArray;
|
|
61648
61645
|
const variances = [];
|
|
61649
61646
|
for (const tp of typeParameters) {
|
|
@@ -61672,6 +61669,10 @@ function createTypeChecker(host) {
|
|
|
61672
61669
|
}
|
|
61673
61670
|
variances.push(variance);
|
|
61674
61671
|
}
|
|
61672
|
+
if (!oldVarianceComputation) {
|
|
61673
|
+
inVarianceComputation = false;
|
|
61674
|
+
resolutionStart = 0;
|
|
61675
|
+
}
|
|
61675
61676
|
links.variances = variances;
|
|
61676
61677
|
(_b = tracing) == null ? void 0 : _b.pop({ variances: variances.map(Debug.formatVariance) });
|
|
61677
61678
|
}
|
|
@@ -66908,8 +66909,7 @@ function createTypeChecker(host) {
|
|
|
66908
66909
|
(s) => [() => undefinedType, s.escapedName]
|
|
66909
66910
|
)
|
|
66910
66911
|
),
|
|
66911
|
-
isTypeAssignableTo
|
|
66912
|
-
contextualType
|
|
66912
|
+
isTypeAssignableTo
|
|
66913
66913
|
);
|
|
66914
66914
|
}
|
|
66915
66915
|
function discriminateContextualTypeByJSXAttributes(node, contextualType) {
|
|
@@ -66928,8 +66928,7 @@ function createTypeChecker(host) {
|
|
|
66928
66928
|
(s) => [() => undefinedType, s.escapedName]
|
|
66929
66929
|
)
|
|
66930
66930
|
),
|
|
66931
|
-
isTypeAssignableTo
|
|
66932
|
-
contextualType
|
|
66931
|
+
isTypeAssignableTo
|
|
66933
66932
|
);
|
|
66934
66933
|
}
|
|
66935
66934
|
function getApparentTypeOfContextualType(node, contextFlags) {
|
|
@@ -68169,12 +68168,6 @@ function createTypeChecker(host) {
|
|
|
68169
68168
|
return getUnionType([jsxElementType, nullType]);
|
|
68170
68169
|
}
|
|
68171
68170
|
}
|
|
68172
|
-
function getJsxElementTypeTypeAt(location) {
|
|
68173
|
-
const type = getJsxType(JsxNames.ElementType, location);
|
|
68174
|
-
if (isErrorType(type))
|
|
68175
|
-
return void 0;
|
|
68176
|
-
return type;
|
|
68177
|
-
}
|
|
68178
68171
|
function getJsxIntrinsicTagNamesAt(location) {
|
|
68179
68172
|
const intrinsics = getJsxType(JsxNames.IntrinsicElements, location);
|
|
68180
68173
|
return intrinsics ? getPropertiesOfType(intrinsics) : emptyArray;
|
|
@@ -68237,24 +68230,7 @@ function createTypeChecker(host) {
|
|
|
68237
68230
|
const jsxOpeningLikeNode = node;
|
|
68238
68231
|
const sig = getResolvedSignature(jsxOpeningLikeNode);
|
|
68239
68232
|
checkDeprecatedSignature(sig, node);
|
|
68240
|
-
|
|
68241
|
-
if (elementTypeConstraint !== void 0) {
|
|
68242
|
-
const tagType = isJsxIntrinsicIdentifier(jsxOpeningLikeNode.tagName) ? (
|
|
68243
|
-
// TODO: Should this be a literal that library authors could potentially check against?
|
|
68244
|
-
stringType
|
|
68245
|
-
) : getApparentType(checkExpression(jsxOpeningLikeNode.tagName));
|
|
68246
|
-
checkTypeRelatedTo(tagType, elementTypeConstraint, assignableRelation, jsxOpeningLikeNode.tagName, Diagnostics.Its_type_0_is_not_a_valid_JSX_element_type, () => {
|
|
68247
|
-
const componentName = getTextOfNode(jsxOpeningLikeNode.tagName);
|
|
68248
|
-
return chainDiagnosticMessages(
|
|
68249
|
-
/*details*/
|
|
68250
|
-
void 0,
|
|
68251
|
-
Diagnostics._0_cannot_be_used_as_a_JSX_component,
|
|
68252
|
-
componentName
|
|
68253
|
-
);
|
|
68254
|
-
});
|
|
68255
|
-
} else {
|
|
68256
|
-
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
68257
|
-
}
|
|
68233
|
+
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
68258
68234
|
}
|
|
68259
68235
|
}
|
|
68260
68236
|
function isKnownProperty(targetType, name, isComparingJsxAttributes) {
|
|
@@ -82966,7 +82942,7 @@ function createTypeChecker(host) {
|
|
|
82966
82942
|
}
|
|
82967
82943
|
return type;
|
|
82968
82944
|
}
|
|
82969
|
-
function findMatchingDiscriminantType(source, target, isRelatedTo
|
|
82945
|
+
function findMatchingDiscriminantType(source, target, isRelatedTo) {
|
|
82970
82946
|
if (target.flags & 1048576 /* Union */ && source.flags & (2097152 /* Intersection */ | 524288 /* Object */)) {
|
|
82971
82947
|
const match = getMatchingUnionConstituentForType(target, source);
|
|
82972
82948
|
if (match) {
|
|
@@ -82976,14 +82952,10 @@ function createTypeChecker(host) {
|
|
|
82976
82952
|
if (sourceProperties) {
|
|
82977
82953
|
const sourcePropertiesFiltered = findDiscriminantProperties(sourceProperties, target);
|
|
82978
82954
|
if (sourcePropertiesFiltered) {
|
|
82979
|
-
|
|
82980
|
-
|
|
82981
|
-
|
|
82982
|
-
|
|
82983
|
-
/*defaultValue*/
|
|
82984
|
-
void 0,
|
|
82985
|
-
skipPartial
|
|
82986
|
-
);
|
|
82955
|
+
const discriminated = discriminateTypeByDiscriminableItems(target, map(sourcePropertiesFiltered, (p) => [() => getTypeOfSymbol(p), p.escapedName]), isRelatedTo);
|
|
82956
|
+
if (discriminated !== target) {
|
|
82957
|
+
return discriminated;
|
|
82958
|
+
}
|
|
82987
82959
|
}
|
|
82988
82960
|
}
|
|
82989
82961
|
}
|
|
@@ -83017,7 +82989,6 @@ var JsxNames;
|
|
|
83017
82989
|
JsxNames2.ElementAttributesPropertyNameContainer = "ElementAttributesProperty";
|
|
83018
82990
|
JsxNames2.ElementChildrenAttributeNameContainer = "ElementChildrenAttribute";
|
|
83019
82991
|
JsxNames2.Element = "Element";
|
|
83020
|
-
JsxNames2.ElementType = "ElementType";
|
|
83021
82992
|
JsxNames2.IntrinsicAttributes = "IntrinsicAttributes";
|
|
83022
82993
|
JsxNames2.IntrinsicClassAttributes = "IntrinsicClassAttributes";
|
|
83023
82994
|
JsxNames2.LibraryManagedAttributes = "LibraryManagedAttributes";
|
package/lib/tsserver.js
CHANGED
|
@@ -2293,7 +2293,7 @@ module.exports = __toCommonJS(server_exports);
|
|
|
2293
2293
|
|
|
2294
2294
|
// src/compiler/corePublic.ts
|
|
2295
2295
|
var versionMajorMinor = "5.1";
|
|
2296
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
2296
|
+
var version = `${versionMajorMinor}.0-insiders.20230412`;
|
|
2297
2297
|
var Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
2298
2298
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
2299
2299
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -11242,8 +11242,7 @@ var Diagnostics = {
|
|
|
11242
11242
|
_0_is_possibly_null_or_undefined: diag(18049, 1 /* Error */, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
|
|
11243
11243
|
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
|
|
11244
11244
|
Compiler_option_0_cannot_be_given_an_empty_string: diag(18051, 1 /* Error */, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string."),
|
|
11245
|
-
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
11246
|
-
Its_type_0_is_not_a_valid_JSX_element_type: diag(18053, 1 /* Error */, "Its_type_0_is_not_a_valid_JSX_element_type_18053", "Its type '{0}' is not a valid JSX element type.")
|
|
11245
|
+
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
11247
11246
|
};
|
|
11248
11247
|
|
|
11249
11248
|
// src/compiler/scanner.ts
|
|
@@ -48058,6 +48057,8 @@ function createTypeChecker(host) {
|
|
|
48058
48057
|
var resolutionTargets = [];
|
|
48059
48058
|
var resolutionResults = [];
|
|
48060
48059
|
var resolutionPropertyNames = [];
|
|
48060
|
+
var resolutionStart = 0;
|
|
48061
|
+
var inVarianceComputation = false;
|
|
48061
48062
|
var suggestionCount = 0;
|
|
48062
48063
|
var maximumSuggestionCount = 10;
|
|
48063
48064
|
var mergedSymbols = [];
|
|
@@ -55258,7 +55259,7 @@ function createTypeChecker(host) {
|
|
|
55258
55259
|
return true;
|
|
55259
55260
|
}
|
|
55260
55261
|
function findResolutionCycleStartIndex(target, propertyName) {
|
|
55261
|
-
for (let i = resolutionTargets.length - 1; i >=
|
|
55262
|
+
for (let i = resolutionTargets.length - 1; i >= resolutionStart; i--) {
|
|
55262
55263
|
if (resolutionTargetHasProperty(resolutionTargets[i], resolutionPropertyNames[i])) {
|
|
55263
55264
|
return -1;
|
|
55264
55265
|
}
|
|
@@ -62838,7 +62839,7 @@ function createTypeChecker(host) {
|
|
|
62838
62839
|
if (newConstraint.flags & 3 /* AnyOrUnknown */ || isTypeAssignableTo(getRestrictiveInstantiation(newBaseType), getRestrictiveInstantiation(newConstraint))) {
|
|
62839
62840
|
return newBaseType;
|
|
62840
62841
|
}
|
|
62841
|
-
return newBaseType.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
62842
|
+
return newBaseType.flags & 8650752 /* TypeVariable */ || newConstraint.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
62842
62843
|
}
|
|
62843
62844
|
return type;
|
|
62844
62845
|
}
|
|
@@ -66230,40 +66231,31 @@ function createTypeChecker(host) {
|
|
|
66230
66231
|
return getPropertiesOfType(type).filter((targetProp) => containsMissingType(getTypeOfSymbol(targetProp)));
|
|
66231
66232
|
}
|
|
66232
66233
|
function getBestMatchingType(source, target, isRelatedTo = compareTypesAssignable) {
|
|
66233
|
-
return findMatchingDiscriminantType(
|
|
66234
|
-
source,
|
|
66235
|
-
target,
|
|
66236
|
-
isRelatedTo,
|
|
66237
|
-
/*skipPartial*/
|
|
66238
|
-
true
|
|
66239
|
-
) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
66234
|
+
return findMatchingDiscriminantType(source, target, isRelatedTo) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
66240
66235
|
}
|
|
66241
|
-
function discriminateTypeByDiscriminableItems(target, discriminators, related
|
|
66242
|
-
const
|
|
66236
|
+
function discriminateTypeByDiscriminableItems(target, discriminators, related) {
|
|
66237
|
+
const types = target.types;
|
|
66238
|
+
const include = types.map((t) => t.flags & 402784252 /* Primitive */ ? 0 /* False */ : -1 /* True */);
|
|
66243
66239
|
for (const [getDiscriminatingType, propertyName] of discriminators) {
|
|
66244
|
-
|
|
66245
|
-
|
|
66246
|
-
|
|
66240
|
+
let matched = false;
|
|
66241
|
+
for (let i = 0; i < types.length; i++) {
|
|
66242
|
+
if (include[i]) {
|
|
66243
|
+
const targetType = getTypeOfPropertyOfType(types[i], propertyName);
|
|
66244
|
+
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
66245
|
+
matched = true;
|
|
66246
|
+
} else {
|
|
66247
|
+
include[i] = 3 /* Maybe */;
|
|
66248
|
+
}
|
|
66249
|
+
}
|
|
66247
66250
|
}
|
|
66248
|
-
let i = 0;
|
|
66249
|
-
|
|
66250
|
-
|
|
66251
|
-
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
66252
|
-
discriminable[i] = discriminable[i] === void 0 ? true : discriminable[i];
|
|
66253
|
-
} else {
|
|
66254
|
-
discriminable[i] = false;
|
|
66251
|
+
for (let i = 0; i < types.length; i++) {
|
|
66252
|
+
if (include[i] === 3 /* Maybe */) {
|
|
66253
|
+
include[i] = matched ? 0 /* False */ : -1 /* True */;
|
|
66255
66254
|
}
|
|
66256
|
-
i++;
|
|
66257
66255
|
}
|
|
66258
66256
|
}
|
|
66259
|
-
const
|
|
66260
|
-
|
|
66261
|
-
true
|
|
66262
|
-
);
|
|
66263
|
-
if (match === -1) {
|
|
66264
|
-
return defaultValue;
|
|
66265
|
-
}
|
|
66266
|
-
return getUnionType(target.types.filter((_, index) => discriminable[index]));
|
|
66257
|
+
const filtered = contains(include, 0 /* False */) ? getUnionType(types.filter((_, i) => include[i])) : target;
|
|
66258
|
+
return filtered.flags & 131072 /* Never */ ? target : filtered;
|
|
66267
66259
|
}
|
|
66268
66260
|
function isWeakType(type) {
|
|
66269
66261
|
if (type.flags & 524288 /* Object */) {
|
|
@@ -66294,6 +66286,11 @@ function createTypeChecker(host) {
|
|
|
66294
66286
|
const links = getSymbolLinks(symbol);
|
|
66295
66287
|
if (!links.variances) {
|
|
66296
66288
|
(_a2 = tracing) == null ? void 0 : _a2.push(tracing.Phase.CheckTypes, "getVariancesWorker", { arity: typeParameters.length, id: getTypeId(getDeclaredTypeOfSymbol(symbol)) });
|
|
66289
|
+
const oldVarianceComputation = inVarianceComputation;
|
|
66290
|
+
if (!inVarianceComputation) {
|
|
66291
|
+
inVarianceComputation = true;
|
|
66292
|
+
resolutionStart = resolutionTargets.length;
|
|
66293
|
+
}
|
|
66297
66294
|
links.variances = emptyArray;
|
|
66298
66295
|
const variances = [];
|
|
66299
66296
|
for (const tp of typeParameters) {
|
|
@@ -66322,6 +66319,10 @@ function createTypeChecker(host) {
|
|
|
66322
66319
|
}
|
|
66323
66320
|
variances.push(variance);
|
|
66324
66321
|
}
|
|
66322
|
+
if (!oldVarianceComputation) {
|
|
66323
|
+
inVarianceComputation = false;
|
|
66324
|
+
resolutionStart = 0;
|
|
66325
|
+
}
|
|
66325
66326
|
links.variances = variances;
|
|
66326
66327
|
(_b = tracing) == null ? void 0 : _b.pop({ variances: variances.map(Debug.formatVariance) });
|
|
66327
66328
|
}
|
|
@@ -71558,8 +71559,7 @@ function createTypeChecker(host) {
|
|
|
71558
71559
|
(s) => [() => undefinedType, s.escapedName]
|
|
71559
71560
|
)
|
|
71560
71561
|
),
|
|
71561
|
-
isTypeAssignableTo
|
|
71562
|
-
contextualType
|
|
71562
|
+
isTypeAssignableTo
|
|
71563
71563
|
);
|
|
71564
71564
|
}
|
|
71565
71565
|
function discriminateContextualTypeByJSXAttributes(node, contextualType) {
|
|
@@ -71578,8 +71578,7 @@ function createTypeChecker(host) {
|
|
|
71578
71578
|
(s) => [() => undefinedType, s.escapedName]
|
|
71579
71579
|
)
|
|
71580
71580
|
),
|
|
71581
|
-
isTypeAssignableTo
|
|
71582
|
-
contextualType
|
|
71581
|
+
isTypeAssignableTo
|
|
71583
71582
|
);
|
|
71584
71583
|
}
|
|
71585
71584
|
function getApparentTypeOfContextualType(node, contextFlags) {
|
|
@@ -72819,12 +72818,6 @@ function createTypeChecker(host) {
|
|
|
72819
72818
|
return getUnionType([jsxElementType, nullType]);
|
|
72820
72819
|
}
|
|
72821
72820
|
}
|
|
72822
|
-
function getJsxElementTypeTypeAt(location) {
|
|
72823
|
-
const type = getJsxType(JsxNames.ElementType, location);
|
|
72824
|
-
if (isErrorType(type))
|
|
72825
|
-
return void 0;
|
|
72826
|
-
return type;
|
|
72827
|
-
}
|
|
72828
72821
|
function getJsxIntrinsicTagNamesAt(location) {
|
|
72829
72822
|
const intrinsics = getJsxType(JsxNames.IntrinsicElements, location);
|
|
72830
72823
|
return intrinsics ? getPropertiesOfType(intrinsics) : emptyArray;
|
|
@@ -72887,24 +72880,7 @@ function createTypeChecker(host) {
|
|
|
72887
72880
|
const jsxOpeningLikeNode = node;
|
|
72888
72881
|
const sig = getResolvedSignature(jsxOpeningLikeNode);
|
|
72889
72882
|
checkDeprecatedSignature(sig, node);
|
|
72890
|
-
|
|
72891
|
-
if (elementTypeConstraint !== void 0) {
|
|
72892
|
-
const tagType = isJsxIntrinsicIdentifier(jsxOpeningLikeNode.tagName) ? (
|
|
72893
|
-
// TODO: Should this be a literal that library authors could potentially check against?
|
|
72894
|
-
stringType
|
|
72895
|
-
) : getApparentType(checkExpression(jsxOpeningLikeNode.tagName));
|
|
72896
|
-
checkTypeRelatedTo(tagType, elementTypeConstraint, assignableRelation, jsxOpeningLikeNode.tagName, Diagnostics.Its_type_0_is_not_a_valid_JSX_element_type, () => {
|
|
72897
|
-
const componentName = getTextOfNode(jsxOpeningLikeNode.tagName);
|
|
72898
|
-
return chainDiagnosticMessages(
|
|
72899
|
-
/*details*/
|
|
72900
|
-
void 0,
|
|
72901
|
-
Diagnostics._0_cannot_be_used_as_a_JSX_component,
|
|
72902
|
-
componentName
|
|
72903
|
-
);
|
|
72904
|
-
});
|
|
72905
|
-
} else {
|
|
72906
|
-
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
72907
|
-
}
|
|
72883
|
+
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
72908
72884
|
}
|
|
72909
72885
|
}
|
|
72910
72886
|
function isKnownProperty(targetType, name, isComparingJsxAttributes) {
|
|
@@ -87616,7 +87592,7 @@ function createTypeChecker(host) {
|
|
|
87616
87592
|
}
|
|
87617
87593
|
return type;
|
|
87618
87594
|
}
|
|
87619
|
-
function findMatchingDiscriminantType(source, target, isRelatedTo
|
|
87595
|
+
function findMatchingDiscriminantType(source, target, isRelatedTo) {
|
|
87620
87596
|
if (target.flags & 1048576 /* Union */ && source.flags & (2097152 /* Intersection */ | 524288 /* Object */)) {
|
|
87621
87597
|
const match = getMatchingUnionConstituentForType(target, source);
|
|
87622
87598
|
if (match) {
|
|
@@ -87626,14 +87602,10 @@ function createTypeChecker(host) {
|
|
|
87626
87602
|
if (sourceProperties) {
|
|
87627
87603
|
const sourcePropertiesFiltered = findDiscriminantProperties(sourceProperties, target);
|
|
87628
87604
|
if (sourcePropertiesFiltered) {
|
|
87629
|
-
|
|
87630
|
-
|
|
87631
|
-
|
|
87632
|
-
|
|
87633
|
-
/*defaultValue*/
|
|
87634
|
-
void 0,
|
|
87635
|
-
skipPartial
|
|
87636
|
-
);
|
|
87605
|
+
const discriminated = discriminateTypeByDiscriminableItems(target, map(sourcePropertiesFiltered, (p) => [() => getTypeOfSymbol(p), p.escapedName]), isRelatedTo);
|
|
87606
|
+
if (discriminated !== target) {
|
|
87607
|
+
return discriminated;
|
|
87608
|
+
}
|
|
87637
87609
|
}
|
|
87638
87610
|
}
|
|
87639
87611
|
}
|
|
@@ -87667,7 +87639,6 @@ var JsxNames;
|
|
|
87667
87639
|
JsxNames2.ElementAttributesPropertyNameContainer = "ElementAttributesProperty";
|
|
87668
87640
|
JsxNames2.ElementChildrenAttributeNameContainer = "ElementChildrenAttribute";
|
|
87669
87641
|
JsxNames2.Element = "Element";
|
|
87670
|
-
JsxNames2.ElementType = "ElementType";
|
|
87671
87642
|
JsxNames2.IntrinsicAttributes = "IntrinsicAttributes";
|
|
87672
87643
|
JsxNames2.IntrinsicClassAttributes = "IntrinsicClassAttributes";
|
|
87673
87644
|
JsxNames2.LibraryManagedAttributes = "LibraryManagedAttributes";
|
package/lib/tsserverlibrary.js
CHANGED
|
@@ -35,7 +35,7 @@ var ts = (() => {
|
|
|
35
35
|
"src/compiler/corePublic.ts"() {
|
|
36
36
|
"use strict";
|
|
37
37
|
versionMajorMinor = "5.1";
|
|
38
|
-
version = `${versionMajorMinor}.0-insiders.
|
|
38
|
+
version = `${versionMajorMinor}.0-insiders.20230412`;
|
|
39
39
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
40
40
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
41
41
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -9058,8 +9058,7 @@ ${lanes.join("\n")}
|
|
|
9058
9058
|
_0_is_possibly_null_or_undefined: diag(18049, 1 /* Error */, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
|
|
9059
9059
|
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
|
|
9060
9060
|
Compiler_option_0_cannot_be_given_an_empty_string: diag(18051, 1 /* Error */, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string."),
|
|
9061
|
-
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
9062
|
-
Its_type_0_is_not_a_valid_JSX_element_type: diag(18053, 1 /* Error */, "Its_type_0_is_not_a_valid_JSX_element_type_18053", "Its type '{0}' is not a valid JSX element type.")
|
|
9061
|
+
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
9063
9062
|
};
|
|
9064
9063
|
}
|
|
9065
9064
|
});
|
|
@@ -45859,6 +45858,8 @@ ${lanes.join("\n")}
|
|
|
45859
45858
|
var resolutionTargets = [];
|
|
45860
45859
|
var resolutionResults = [];
|
|
45861
45860
|
var resolutionPropertyNames = [];
|
|
45861
|
+
var resolutionStart = 0;
|
|
45862
|
+
var inVarianceComputation = false;
|
|
45862
45863
|
var suggestionCount = 0;
|
|
45863
45864
|
var maximumSuggestionCount = 10;
|
|
45864
45865
|
var mergedSymbols = [];
|
|
@@ -53059,7 +53060,7 @@ ${lanes.join("\n")}
|
|
|
53059
53060
|
return true;
|
|
53060
53061
|
}
|
|
53061
53062
|
function findResolutionCycleStartIndex(target, propertyName) {
|
|
53062
|
-
for (let i = resolutionTargets.length - 1; i >=
|
|
53063
|
+
for (let i = resolutionTargets.length - 1; i >= resolutionStart; i--) {
|
|
53063
53064
|
if (resolutionTargetHasProperty(resolutionTargets[i], resolutionPropertyNames[i])) {
|
|
53064
53065
|
return -1;
|
|
53065
53066
|
}
|
|
@@ -60639,7 +60640,7 @@ ${lanes.join("\n")}
|
|
|
60639
60640
|
if (newConstraint.flags & 3 /* AnyOrUnknown */ || isTypeAssignableTo(getRestrictiveInstantiation(newBaseType), getRestrictiveInstantiation(newConstraint))) {
|
|
60640
60641
|
return newBaseType;
|
|
60641
60642
|
}
|
|
60642
|
-
return newBaseType.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
60643
|
+
return newBaseType.flags & 8650752 /* TypeVariable */ || newConstraint.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
60643
60644
|
}
|
|
60644
60645
|
return type;
|
|
60645
60646
|
}
|
|
@@ -64031,40 +64032,31 @@ ${lanes.join("\n")}
|
|
|
64031
64032
|
return getPropertiesOfType(type).filter((targetProp) => containsMissingType(getTypeOfSymbol(targetProp)));
|
|
64032
64033
|
}
|
|
64033
64034
|
function getBestMatchingType(source, target, isRelatedTo = compareTypesAssignable) {
|
|
64034
|
-
return findMatchingDiscriminantType(
|
|
64035
|
-
source,
|
|
64036
|
-
target,
|
|
64037
|
-
isRelatedTo,
|
|
64038
|
-
/*skipPartial*/
|
|
64039
|
-
true
|
|
64040
|
-
) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
64035
|
+
return findMatchingDiscriminantType(source, target, isRelatedTo) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
64041
64036
|
}
|
|
64042
|
-
function discriminateTypeByDiscriminableItems(target, discriminators, related
|
|
64043
|
-
const
|
|
64037
|
+
function discriminateTypeByDiscriminableItems(target, discriminators, related) {
|
|
64038
|
+
const types = target.types;
|
|
64039
|
+
const include = types.map((t) => t.flags & 402784252 /* Primitive */ ? 0 /* False */ : -1 /* True */);
|
|
64044
64040
|
for (const [getDiscriminatingType, propertyName] of discriminators) {
|
|
64045
|
-
|
|
64046
|
-
|
|
64047
|
-
|
|
64041
|
+
let matched = false;
|
|
64042
|
+
for (let i = 0; i < types.length; i++) {
|
|
64043
|
+
if (include[i]) {
|
|
64044
|
+
const targetType = getTypeOfPropertyOfType(types[i], propertyName);
|
|
64045
|
+
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
64046
|
+
matched = true;
|
|
64047
|
+
} else {
|
|
64048
|
+
include[i] = 3 /* Maybe */;
|
|
64049
|
+
}
|
|
64050
|
+
}
|
|
64048
64051
|
}
|
|
64049
|
-
let i = 0;
|
|
64050
|
-
|
|
64051
|
-
|
|
64052
|
-
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
64053
|
-
discriminable[i] = discriminable[i] === void 0 ? true : discriminable[i];
|
|
64054
|
-
} else {
|
|
64055
|
-
discriminable[i] = false;
|
|
64052
|
+
for (let i = 0; i < types.length; i++) {
|
|
64053
|
+
if (include[i] === 3 /* Maybe */) {
|
|
64054
|
+
include[i] = matched ? 0 /* False */ : -1 /* True */;
|
|
64056
64055
|
}
|
|
64057
|
-
i++;
|
|
64058
64056
|
}
|
|
64059
64057
|
}
|
|
64060
|
-
const
|
|
64061
|
-
|
|
64062
|
-
true
|
|
64063
|
-
);
|
|
64064
|
-
if (match === -1) {
|
|
64065
|
-
return defaultValue;
|
|
64066
|
-
}
|
|
64067
|
-
return getUnionType(target.types.filter((_, index) => discriminable[index]));
|
|
64058
|
+
const filtered = contains(include, 0 /* False */) ? getUnionType(types.filter((_, i) => include[i])) : target;
|
|
64059
|
+
return filtered.flags & 131072 /* Never */ ? target : filtered;
|
|
64068
64060
|
}
|
|
64069
64061
|
function isWeakType(type) {
|
|
64070
64062
|
if (type.flags & 524288 /* Object */) {
|
|
@@ -64095,6 +64087,11 @@ ${lanes.join("\n")}
|
|
|
64095
64087
|
const links = getSymbolLinks(symbol);
|
|
64096
64088
|
if (!links.variances) {
|
|
64097
64089
|
(_a2 = tracing) == null ? void 0 : _a2.push(tracing.Phase.CheckTypes, "getVariancesWorker", { arity: typeParameters.length, id: getTypeId(getDeclaredTypeOfSymbol(symbol)) });
|
|
64090
|
+
const oldVarianceComputation = inVarianceComputation;
|
|
64091
|
+
if (!inVarianceComputation) {
|
|
64092
|
+
inVarianceComputation = true;
|
|
64093
|
+
resolutionStart = resolutionTargets.length;
|
|
64094
|
+
}
|
|
64098
64095
|
links.variances = emptyArray;
|
|
64099
64096
|
const variances = [];
|
|
64100
64097
|
for (const tp of typeParameters) {
|
|
@@ -64123,6 +64120,10 @@ ${lanes.join("\n")}
|
|
|
64123
64120
|
}
|
|
64124
64121
|
variances.push(variance);
|
|
64125
64122
|
}
|
|
64123
|
+
if (!oldVarianceComputation) {
|
|
64124
|
+
inVarianceComputation = false;
|
|
64125
|
+
resolutionStart = 0;
|
|
64126
|
+
}
|
|
64126
64127
|
links.variances = variances;
|
|
64127
64128
|
(_b = tracing) == null ? void 0 : _b.pop({ variances: variances.map(Debug.formatVariance) });
|
|
64128
64129
|
}
|
|
@@ -69359,8 +69360,7 @@ ${lanes.join("\n")}
|
|
|
69359
69360
|
(s) => [() => undefinedType, s.escapedName]
|
|
69360
69361
|
)
|
|
69361
69362
|
),
|
|
69362
|
-
isTypeAssignableTo
|
|
69363
|
-
contextualType
|
|
69363
|
+
isTypeAssignableTo
|
|
69364
69364
|
);
|
|
69365
69365
|
}
|
|
69366
69366
|
function discriminateContextualTypeByJSXAttributes(node, contextualType) {
|
|
@@ -69379,8 +69379,7 @@ ${lanes.join("\n")}
|
|
|
69379
69379
|
(s) => [() => undefinedType, s.escapedName]
|
|
69380
69380
|
)
|
|
69381
69381
|
),
|
|
69382
|
-
isTypeAssignableTo
|
|
69383
|
-
contextualType
|
|
69382
|
+
isTypeAssignableTo
|
|
69384
69383
|
);
|
|
69385
69384
|
}
|
|
69386
69385
|
function getApparentTypeOfContextualType(node, contextFlags) {
|
|
@@ -70620,12 +70619,6 @@ ${lanes.join("\n")}
|
|
|
70620
70619
|
return getUnionType([jsxElementType, nullType]);
|
|
70621
70620
|
}
|
|
70622
70621
|
}
|
|
70623
|
-
function getJsxElementTypeTypeAt(location) {
|
|
70624
|
-
const type = getJsxType(JsxNames.ElementType, location);
|
|
70625
|
-
if (isErrorType(type))
|
|
70626
|
-
return void 0;
|
|
70627
|
-
return type;
|
|
70628
|
-
}
|
|
70629
70622
|
function getJsxIntrinsicTagNamesAt(location) {
|
|
70630
70623
|
const intrinsics = getJsxType(JsxNames.IntrinsicElements, location);
|
|
70631
70624
|
return intrinsics ? getPropertiesOfType(intrinsics) : emptyArray;
|
|
@@ -70688,24 +70681,7 @@ ${lanes.join("\n")}
|
|
|
70688
70681
|
const jsxOpeningLikeNode = node;
|
|
70689
70682
|
const sig = getResolvedSignature(jsxOpeningLikeNode);
|
|
70690
70683
|
checkDeprecatedSignature(sig, node);
|
|
70691
|
-
|
|
70692
|
-
if (elementTypeConstraint !== void 0) {
|
|
70693
|
-
const tagType = isJsxIntrinsicIdentifier(jsxOpeningLikeNode.tagName) ? (
|
|
70694
|
-
// TODO: Should this be a literal that library authors could potentially check against?
|
|
70695
|
-
stringType
|
|
70696
|
-
) : getApparentType(checkExpression(jsxOpeningLikeNode.tagName));
|
|
70697
|
-
checkTypeRelatedTo(tagType, elementTypeConstraint, assignableRelation, jsxOpeningLikeNode.tagName, Diagnostics.Its_type_0_is_not_a_valid_JSX_element_type, () => {
|
|
70698
|
-
const componentName = getTextOfNode(jsxOpeningLikeNode.tagName);
|
|
70699
|
-
return chainDiagnosticMessages(
|
|
70700
|
-
/*details*/
|
|
70701
|
-
void 0,
|
|
70702
|
-
Diagnostics._0_cannot_be_used_as_a_JSX_component,
|
|
70703
|
-
componentName
|
|
70704
|
-
);
|
|
70705
|
-
});
|
|
70706
|
-
} else {
|
|
70707
|
-
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
70708
|
-
}
|
|
70684
|
+
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
70709
70685
|
}
|
|
70710
70686
|
}
|
|
70711
70687
|
function isKnownProperty(targetType, name, isComparingJsxAttributes) {
|
|
@@ -85417,7 +85393,7 @@ ${lanes.join("\n")}
|
|
|
85417
85393
|
}
|
|
85418
85394
|
return type;
|
|
85419
85395
|
}
|
|
85420
|
-
function findMatchingDiscriminantType(source, target, isRelatedTo
|
|
85396
|
+
function findMatchingDiscriminantType(source, target, isRelatedTo) {
|
|
85421
85397
|
if (target.flags & 1048576 /* Union */ && source.flags & (2097152 /* Intersection */ | 524288 /* Object */)) {
|
|
85422
85398
|
const match = getMatchingUnionConstituentForType(target, source);
|
|
85423
85399
|
if (match) {
|
|
@@ -85427,14 +85403,10 @@ ${lanes.join("\n")}
|
|
|
85427
85403
|
if (sourceProperties) {
|
|
85428
85404
|
const sourcePropertiesFiltered = findDiscriminantProperties(sourceProperties, target);
|
|
85429
85405
|
if (sourcePropertiesFiltered) {
|
|
85430
|
-
|
|
85431
|
-
|
|
85432
|
-
|
|
85433
|
-
|
|
85434
|
-
/*defaultValue*/
|
|
85435
|
-
void 0,
|
|
85436
|
-
skipPartial
|
|
85437
|
-
);
|
|
85406
|
+
const discriminated = discriminateTypeByDiscriminableItems(target, map(sourcePropertiesFiltered, (p) => [() => getTypeOfSymbol(p), p.escapedName]), isRelatedTo);
|
|
85407
|
+
if (discriminated !== target) {
|
|
85408
|
+
return discriminated;
|
|
85409
|
+
}
|
|
85438
85410
|
}
|
|
85439
85411
|
}
|
|
85440
85412
|
}
|
|
@@ -85633,7 +85605,6 @@ ${lanes.join("\n")}
|
|
|
85633
85605
|
JsxNames2.ElementAttributesPropertyNameContainer = "ElementAttributesProperty";
|
|
85634
85606
|
JsxNames2.ElementChildrenAttributeNameContainer = "ElementChildrenAttribute";
|
|
85635
85607
|
JsxNames2.Element = "Element";
|
|
85636
|
-
JsxNames2.ElementType = "ElementType";
|
|
85637
85608
|
JsxNames2.IntrinsicAttributes = "IntrinsicAttributes";
|
|
85638
85609
|
JsxNames2.IntrinsicClassAttributes = "IntrinsicClassAttributes";
|
|
85639
85610
|
JsxNames2.LibraryManagedAttributes = "LibraryManagedAttributes";
|
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.1";
|
|
38
|
-
version = `${versionMajorMinor}.0-insiders.
|
|
38
|
+
version = `${versionMajorMinor}.0-insiders.20230412`;
|
|
39
39
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
40
40
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
41
41
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -9058,8 +9058,7 @@ ${lanes.join("\n")}
|
|
|
9058
9058
|
_0_is_possibly_null_or_undefined: diag(18049, 1 /* Error */, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
|
|
9059
9059
|
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
|
|
9060
9060
|
Compiler_option_0_cannot_be_given_an_empty_string: diag(18051, 1 /* Error */, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string."),
|
|
9061
|
-
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
9062
|
-
Its_type_0_is_not_a_valid_JSX_element_type: diag(18053, 1 /* Error */, "Its_type_0_is_not_a_valid_JSX_element_type_18053", "Its type '{0}' is not a valid JSX element type.")
|
|
9061
|
+
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
9063
9062
|
};
|
|
9064
9063
|
}
|
|
9065
9064
|
});
|
|
@@ -45859,6 +45858,8 @@ ${lanes.join("\n")}
|
|
|
45859
45858
|
var resolutionTargets = [];
|
|
45860
45859
|
var resolutionResults = [];
|
|
45861
45860
|
var resolutionPropertyNames = [];
|
|
45861
|
+
var resolutionStart = 0;
|
|
45862
|
+
var inVarianceComputation = false;
|
|
45862
45863
|
var suggestionCount = 0;
|
|
45863
45864
|
var maximumSuggestionCount = 10;
|
|
45864
45865
|
var mergedSymbols = [];
|
|
@@ -53059,7 +53060,7 @@ ${lanes.join("\n")}
|
|
|
53059
53060
|
return true;
|
|
53060
53061
|
}
|
|
53061
53062
|
function findResolutionCycleStartIndex(target, propertyName) {
|
|
53062
|
-
for (let i = resolutionTargets.length - 1; i >=
|
|
53063
|
+
for (let i = resolutionTargets.length - 1; i >= resolutionStart; i--) {
|
|
53063
53064
|
if (resolutionTargetHasProperty(resolutionTargets[i], resolutionPropertyNames[i])) {
|
|
53064
53065
|
return -1;
|
|
53065
53066
|
}
|
|
@@ -60639,7 +60640,7 @@ ${lanes.join("\n")}
|
|
|
60639
60640
|
if (newConstraint.flags & 3 /* AnyOrUnknown */ || isTypeAssignableTo(getRestrictiveInstantiation(newBaseType), getRestrictiveInstantiation(newConstraint))) {
|
|
60640
60641
|
return newBaseType;
|
|
60641
60642
|
}
|
|
60642
|
-
return newBaseType.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
60643
|
+
return newBaseType.flags & 8650752 /* TypeVariable */ || newConstraint.flags & 8650752 /* TypeVariable */ ? getSubstitutionType(newBaseType, newConstraint) : getIntersectionType([newConstraint, newBaseType]);
|
|
60643
60644
|
}
|
|
60644
60645
|
return type;
|
|
60645
60646
|
}
|
|
@@ -64031,40 +64032,31 @@ ${lanes.join("\n")}
|
|
|
64031
64032
|
return getPropertiesOfType(type).filter((targetProp) => containsMissingType(getTypeOfSymbol(targetProp)));
|
|
64032
64033
|
}
|
|
64033
64034
|
function getBestMatchingType(source, target, isRelatedTo = compareTypesAssignable) {
|
|
64034
|
-
return findMatchingDiscriminantType(
|
|
64035
|
-
source,
|
|
64036
|
-
target,
|
|
64037
|
-
isRelatedTo,
|
|
64038
|
-
/*skipPartial*/
|
|
64039
|
-
true
|
|
64040
|
-
) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
64035
|
+
return findMatchingDiscriminantType(source, target, isRelatedTo) || findMatchingTypeReferenceOrTypeAliasReference(source, target) || findBestTypeForObjectLiteral(source, target) || findBestTypeForInvokable(source, target) || findMostOverlappyType(source, target);
|
|
64041
64036
|
}
|
|
64042
|
-
function discriminateTypeByDiscriminableItems(target, discriminators, related
|
|
64043
|
-
const
|
|
64037
|
+
function discriminateTypeByDiscriminableItems(target, discriminators, related) {
|
|
64038
|
+
const types = target.types;
|
|
64039
|
+
const include = types.map((t) => t.flags & 402784252 /* Primitive */ ? 0 /* False */ : -1 /* True */);
|
|
64044
64040
|
for (const [getDiscriminatingType, propertyName] of discriminators) {
|
|
64045
|
-
|
|
64046
|
-
|
|
64047
|
-
|
|
64041
|
+
let matched = false;
|
|
64042
|
+
for (let i = 0; i < types.length; i++) {
|
|
64043
|
+
if (include[i]) {
|
|
64044
|
+
const targetType = getTypeOfPropertyOfType(types[i], propertyName);
|
|
64045
|
+
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
64046
|
+
matched = true;
|
|
64047
|
+
} else {
|
|
64048
|
+
include[i] = 3 /* Maybe */;
|
|
64049
|
+
}
|
|
64050
|
+
}
|
|
64048
64051
|
}
|
|
64049
|
-
let i = 0;
|
|
64050
|
-
|
|
64051
|
-
|
|
64052
|
-
if (targetType && related(getDiscriminatingType(), targetType)) {
|
|
64053
|
-
discriminable[i] = discriminable[i] === void 0 ? true : discriminable[i];
|
|
64054
|
-
} else {
|
|
64055
|
-
discriminable[i] = false;
|
|
64052
|
+
for (let i = 0; i < types.length; i++) {
|
|
64053
|
+
if (include[i] === 3 /* Maybe */) {
|
|
64054
|
+
include[i] = matched ? 0 /* False */ : -1 /* True */;
|
|
64056
64055
|
}
|
|
64057
|
-
i++;
|
|
64058
64056
|
}
|
|
64059
64057
|
}
|
|
64060
|
-
const
|
|
64061
|
-
|
|
64062
|
-
true
|
|
64063
|
-
);
|
|
64064
|
-
if (match === -1) {
|
|
64065
|
-
return defaultValue;
|
|
64066
|
-
}
|
|
64067
|
-
return getUnionType(target.types.filter((_, index) => discriminable[index]));
|
|
64058
|
+
const filtered = contains(include, 0 /* False */) ? getUnionType(types.filter((_, i) => include[i])) : target;
|
|
64059
|
+
return filtered.flags & 131072 /* Never */ ? target : filtered;
|
|
64068
64060
|
}
|
|
64069
64061
|
function isWeakType(type) {
|
|
64070
64062
|
if (type.flags & 524288 /* Object */) {
|
|
@@ -64095,6 +64087,11 @@ ${lanes.join("\n")}
|
|
|
64095
64087
|
const links = getSymbolLinks(symbol);
|
|
64096
64088
|
if (!links.variances) {
|
|
64097
64089
|
(_a2 = tracing) == null ? void 0 : _a2.push(tracing.Phase.CheckTypes, "getVariancesWorker", { arity: typeParameters.length, id: getTypeId(getDeclaredTypeOfSymbol(symbol)) });
|
|
64090
|
+
const oldVarianceComputation = inVarianceComputation;
|
|
64091
|
+
if (!inVarianceComputation) {
|
|
64092
|
+
inVarianceComputation = true;
|
|
64093
|
+
resolutionStart = resolutionTargets.length;
|
|
64094
|
+
}
|
|
64098
64095
|
links.variances = emptyArray;
|
|
64099
64096
|
const variances = [];
|
|
64100
64097
|
for (const tp of typeParameters) {
|
|
@@ -64123,6 +64120,10 @@ ${lanes.join("\n")}
|
|
|
64123
64120
|
}
|
|
64124
64121
|
variances.push(variance);
|
|
64125
64122
|
}
|
|
64123
|
+
if (!oldVarianceComputation) {
|
|
64124
|
+
inVarianceComputation = false;
|
|
64125
|
+
resolutionStart = 0;
|
|
64126
|
+
}
|
|
64126
64127
|
links.variances = variances;
|
|
64127
64128
|
(_b = tracing) == null ? void 0 : _b.pop({ variances: variances.map(Debug.formatVariance) });
|
|
64128
64129
|
}
|
|
@@ -69359,8 +69360,7 @@ ${lanes.join("\n")}
|
|
|
69359
69360
|
(s) => [() => undefinedType, s.escapedName]
|
|
69360
69361
|
)
|
|
69361
69362
|
),
|
|
69362
|
-
isTypeAssignableTo
|
|
69363
|
-
contextualType
|
|
69363
|
+
isTypeAssignableTo
|
|
69364
69364
|
);
|
|
69365
69365
|
}
|
|
69366
69366
|
function discriminateContextualTypeByJSXAttributes(node, contextualType) {
|
|
@@ -69379,8 +69379,7 @@ ${lanes.join("\n")}
|
|
|
69379
69379
|
(s) => [() => undefinedType, s.escapedName]
|
|
69380
69380
|
)
|
|
69381
69381
|
),
|
|
69382
|
-
isTypeAssignableTo
|
|
69383
|
-
contextualType
|
|
69382
|
+
isTypeAssignableTo
|
|
69384
69383
|
);
|
|
69385
69384
|
}
|
|
69386
69385
|
function getApparentTypeOfContextualType(node, contextFlags) {
|
|
@@ -70620,12 +70619,6 @@ ${lanes.join("\n")}
|
|
|
70620
70619
|
return getUnionType([jsxElementType, nullType]);
|
|
70621
70620
|
}
|
|
70622
70621
|
}
|
|
70623
|
-
function getJsxElementTypeTypeAt(location) {
|
|
70624
|
-
const type = getJsxType(JsxNames.ElementType, location);
|
|
70625
|
-
if (isErrorType(type))
|
|
70626
|
-
return void 0;
|
|
70627
|
-
return type;
|
|
70628
|
-
}
|
|
70629
70622
|
function getJsxIntrinsicTagNamesAt(location) {
|
|
70630
70623
|
const intrinsics = getJsxType(JsxNames.IntrinsicElements, location);
|
|
70631
70624
|
return intrinsics ? getPropertiesOfType(intrinsics) : emptyArray;
|
|
@@ -70688,24 +70681,7 @@ ${lanes.join("\n")}
|
|
|
70688
70681
|
const jsxOpeningLikeNode = node;
|
|
70689
70682
|
const sig = getResolvedSignature(jsxOpeningLikeNode);
|
|
70690
70683
|
checkDeprecatedSignature(sig, node);
|
|
70691
|
-
|
|
70692
|
-
if (elementTypeConstraint !== void 0) {
|
|
70693
|
-
const tagType = isJsxIntrinsicIdentifier(jsxOpeningLikeNode.tagName) ? (
|
|
70694
|
-
// TODO: Should this be a literal that library authors could potentially check against?
|
|
70695
|
-
stringType
|
|
70696
|
-
) : getApparentType(checkExpression(jsxOpeningLikeNode.tagName));
|
|
70697
|
-
checkTypeRelatedTo(tagType, elementTypeConstraint, assignableRelation, jsxOpeningLikeNode.tagName, Diagnostics.Its_type_0_is_not_a_valid_JSX_element_type, () => {
|
|
70698
|
-
const componentName = getTextOfNode(jsxOpeningLikeNode.tagName);
|
|
70699
|
-
return chainDiagnosticMessages(
|
|
70700
|
-
/*details*/
|
|
70701
|
-
void 0,
|
|
70702
|
-
Diagnostics._0_cannot_be_used_as_a_JSX_component,
|
|
70703
|
-
componentName
|
|
70704
|
-
);
|
|
70705
|
-
});
|
|
70706
|
-
} else {
|
|
70707
|
-
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
70708
|
-
}
|
|
70684
|
+
checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(jsxOpeningLikeNode), getReturnTypeOfSignature(sig), jsxOpeningLikeNode);
|
|
70709
70685
|
}
|
|
70710
70686
|
}
|
|
70711
70687
|
function isKnownProperty(targetType, name, isComparingJsxAttributes) {
|
|
@@ -85417,7 +85393,7 @@ ${lanes.join("\n")}
|
|
|
85417
85393
|
}
|
|
85418
85394
|
return type;
|
|
85419
85395
|
}
|
|
85420
|
-
function findMatchingDiscriminantType(source, target, isRelatedTo
|
|
85396
|
+
function findMatchingDiscriminantType(source, target, isRelatedTo) {
|
|
85421
85397
|
if (target.flags & 1048576 /* Union */ && source.flags & (2097152 /* Intersection */ | 524288 /* Object */)) {
|
|
85422
85398
|
const match = getMatchingUnionConstituentForType(target, source);
|
|
85423
85399
|
if (match) {
|
|
@@ -85427,14 +85403,10 @@ ${lanes.join("\n")}
|
|
|
85427
85403
|
if (sourceProperties) {
|
|
85428
85404
|
const sourcePropertiesFiltered = findDiscriminantProperties(sourceProperties, target);
|
|
85429
85405
|
if (sourcePropertiesFiltered) {
|
|
85430
|
-
|
|
85431
|
-
|
|
85432
|
-
|
|
85433
|
-
|
|
85434
|
-
/*defaultValue*/
|
|
85435
|
-
void 0,
|
|
85436
|
-
skipPartial
|
|
85437
|
-
);
|
|
85406
|
+
const discriminated = discriminateTypeByDiscriminableItems(target, map(sourcePropertiesFiltered, (p) => [() => getTypeOfSymbol(p), p.escapedName]), isRelatedTo);
|
|
85407
|
+
if (discriminated !== target) {
|
|
85408
|
+
return discriminated;
|
|
85409
|
+
}
|
|
85438
85410
|
}
|
|
85439
85411
|
}
|
|
85440
85412
|
}
|
|
@@ -85633,7 +85605,6 @@ ${lanes.join("\n")}
|
|
|
85633
85605
|
JsxNames2.ElementAttributesPropertyNameContainer = "ElementAttributesProperty";
|
|
85634
85606
|
JsxNames2.ElementChildrenAttributeNameContainer = "ElementChildrenAttribute";
|
|
85635
85607
|
JsxNames2.Element = "Element";
|
|
85636
|
-
JsxNames2.ElementType = "ElementType";
|
|
85637
85608
|
JsxNames2.IntrinsicAttributes = "IntrinsicAttributes";
|
|
85638
85609
|
JsxNames2.IntrinsicClassAttributes = "IntrinsicClassAttributes";
|
|
85639
85610
|
JsxNames2.LibraryManagedAttributes = "LibraryManagedAttributes";
|
package/lib/typingsInstaller.js
CHANGED
|
@@ -54,7 +54,7 @@ var path = __toESM(require("path"));
|
|
|
54
54
|
|
|
55
55
|
// src/compiler/corePublic.ts
|
|
56
56
|
var versionMajorMinor = "5.1";
|
|
57
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
57
|
+
var version = `${versionMajorMinor}.0-insiders.20230412`;
|
|
58
58
|
|
|
59
59
|
// src/compiler/core.ts
|
|
60
60
|
var emptyArray = [];
|
|
@@ -7121,8 +7121,7 @@ var Diagnostics = {
|
|
|
7121
7121
|
_0_is_possibly_null_or_undefined: diag(18049, 1 /* Error */, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
|
|
7122
7122
|
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
|
|
7123
7123
|
Compiler_option_0_cannot_be_given_an_empty_string: diag(18051, 1 /* Error */, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string."),
|
|
7124
|
-
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
7125
|
-
Its_type_0_is_not_a_valid_JSX_element_type: diag(18053, 1 /* Error */, "Its_type_0_is_not_a_valid_JSX_element_type_18053", "Its type '{0}' is not a valid JSX element type.")
|
|
7124
|
+
Non_abstract_class_0_does_not_implement_all_abstract_members_of_1: diag(18052, 1 /* Error */, "Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052", "Non-abstract class '{0}' does not implement all abstract members of '{1}'")
|
|
7126
7125
|
};
|
|
7127
7126
|
|
|
7128
7127
|
// src/compiler/scanner.ts
|
|
@@ -28888,7 +28887,6 @@ var JsxNames;
|
|
|
28888
28887
|
JsxNames2.ElementAttributesPropertyNameContainer = "ElementAttributesProperty";
|
|
28889
28888
|
JsxNames2.ElementChildrenAttributeNameContainer = "ElementChildrenAttribute";
|
|
28890
28889
|
JsxNames2.Element = "Element";
|
|
28891
|
-
JsxNames2.ElementType = "ElementType";
|
|
28892
28890
|
JsxNames2.IntrinsicAttributes = "IntrinsicAttributes";
|
|
28893
28891
|
JsxNames2.IntrinsicClassAttributes = "IntrinsicClassAttributes";
|
|
28894
28892
|
JsxNames2.LibraryManagedAttributes = "LibraryManagedAttributes";
|
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.1.0-pr-
|
|
5
|
+
"version": "5.1.0-pr-53758-6",
|
|
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": "14.21.1",
|
|
115
115
|
"npm": "8.19.3"
|
|
116
116
|
},
|
|
117
|
-
"gitHead": "
|
|
117
|
+
"gitHead": "f416421fb6211503675dd59bcf68b6ea2703b7e0"
|
|
118
118
|
}
|