@typescript-deploys/pr-build 5.3.0-pr-55696-3 → 5.3.0-pr-55718-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 +43 -109
- package/lib/tsserver.js +43 -109
- package/lib/typescript.js +43 -109
- package/lib/typingsInstaller.js +1 -1
- package/package.json +3 -3
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.3";
|
|
21
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
21
|
+
var version = `${versionMajorMinor}.0-insiders.20230912`;
|
|
22
22
|
|
|
23
23
|
// src/compiler/core.ts
|
|
24
24
|
var emptyArray = [];
|
|
@@ -56266,8 +56266,7 @@ function createTypeChecker(host) {
|
|
|
56266
56266
|
if (elementFlags.length === 1 && elementFlags[0] & 4 /* Rest */) {
|
|
56267
56267
|
return readonly ? globalReadonlyArrayType : globalArrayType;
|
|
56268
56268
|
}
|
|
56269
|
-
const
|
|
56270
|
-
const key = map(elementFlags, (f) => f & 1 /* Required */ ? "#" : f & 2 /* Optional */ ? "?" : f & 4 /* Rest */ ? "." : "*").join() + (readonly ? "R" : "") + (memberIds.length ? "," + memberIds.join(",") : "");
|
|
56269
|
+
const key = map(elementFlags, (f) => f & 1 /* Required */ ? "#" : f & 2 /* Optional */ ? "?" : f & 4 /* Rest */ ? "." : "*").join() + (readonly ? "R" : "") + (some(namedMemberDeclarations, (node) => !!node) ? "," + map(namedMemberDeclarations, (node) => node ? getNodeId(node) : "_").join(",") : "");
|
|
56271
56270
|
let type = tupleTypes.get(key);
|
|
56272
56271
|
if (!type) {
|
|
56273
56272
|
tupleTypes.set(key, type = createTupleTargetType(elementFlags, readonly, namedMemberDeclarations));
|
|
@@ -73973,7 +73972,11 @@ function createTypeChecker(host) {
|
|
|
73973
73972
|
error(errorNode, Diagnostics.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value, eqType ? "false" : "true");
|
|
73974
73973
|
}
|
|
73975
73974
|
checkNaNEquality(errorNode, operator, left, right);
|
|
73976
|
-
|
|
73975
|
+
if (isUnitType(leftType) && isUnitType(rightType) && isTypeIdenticalTo(leftType, rightType)) {
|
|
73976
|
+
error(errorNode, Diagnostics.This_condition_will_always_return_0, operator === 37 /* EqualsEqualsEqualsToken */ || operator === 35 /* EqualsEqualsToken */ ? "true" : "false");
|
|
73977
|
+
} else {
|
|
73978
|
+
reportOperatorErrorUnless((left2, right2) => isTypeEqualityComparableTo(left2, right2) || isTypeEqualityComparableTo(right2, left2));
|
|
73979
|
+
}
|
|
73977
73980
|
}
|
|
73978
73981
|
return booleanType;
|
|
73979
73982
|
case 104 /* InstanceOfKeyword */:
|
|
@@ -79199,19 +79202,14 @@ function createTypeChecker(host) {
|
|
|
79199
79202
|
function computeConstantValue(member) {
|
|
79200
79203
|
const isConstEnum = isEnumConst(member.parent);
|
|
79201
79204
|
const initializer = member.initializer;
|
|
79202
|
-
const
|
|
79203
|
-
if (
|
|
79204
|
-
const { value } = evaluated;
|
|
79205
|
+
const value = evaluate(initializer, member);
|
|
79206
|
+
if (value !== void 0) {
|
|
79205
79207
|
if (isConstEnum && typeof value === "number" && !isFinite(value)) {
|
|
79206
79208
|
error(
|
|
79207
79209
|
initializer,
|
|
79208
79210
|
isNaN(value) ? Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN : Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value
|
|
79209
79211
|
);
|
|
79210
|
-
} else if (typeof value !== "string" && typeof value !== "number") {
|
|
79211
|
-
checkTypeAssignableTo(checkExpression(initializer), numberType, initializer, Diagnostics.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);
|
|
79212
|
-
return void 0;
|
|
79213
79212
|
}
|
|
79214
|
-
return value;
|
|
79215
79213
|
} else if (isConstEnum) {
|
|
79216
79214
|
error(initializer, Diagnostics.const_enum_member_initializers_must_be_constant_expressions);
|
|
79217
79215
|
} else if (member.parent.flags & 33554432 /* Ambient */) {
|
|
@@ -79219,113 +79217,65 @@ function createTypeChecker(host) {
|
|
|
79219
79217
|
} else {
|
|
79220
79218
|
checkTypeAssignableTo(checkExpression(initializer), numberType, initializer, Diagnostics.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);
|
|
79221
79219
|
}
|
|
79222
|
-
return
|
|
79220
|
+
return value;
|
|
79223
79221
|
}
|
|
79224
79222
|
function evaluate(expr, location) {
|
|
79225
79223
|
switch (expr.kind) {
|
|
79226
|
-
case 224 /* PrefixUnaryExpression */:
|
|
79227
|
-
const
|
|
79228
|
-
if (!evaluated) {
|
|
79229
|
-
break;
|
|
79230
|
-
}
|
|
79231
|
-
const { value } = evaluated;
|
|
79224
|
+
case 224 /* PrefixUnaryExpression */:
|
|
79225
|
+
const value = evaluate(expr.operand, location);
|
|
79232
79226
|
if (typeof value === "number") {
|
|
79233
79227
|
switch (expr.operator) {
|
|
79234
79228
|
case 40 /* PlusToken */:
|
|
79235
|
-
return
|
|
79229
|
+
return value;
|
|
79236
79230
|
case 41 /* MinusToken */:
|
|
79237
|
-
return
|
|
79231
|
+
return -value;
|
|
79238
79232
|
case 55 /* TildeToken */:
|
|
79239
|
-
return
|
|
79233
|
+
return ~value;
|
|
79240
79234
|
}
|
|
79241
79235
|
}
|
|
79242
|
-
if (typeof value === "boolean" && expr.operator === 54 /* ExclamationToken */) {
|
|
79243
|
-
return { value: !value };
|
|
79244
|
-
}
|
|
79245
79236
|
break;
|
|
79246
|
-
|
|
79247
|
-
|
|
79248
|
-
const
|
|
79249
|
-
if (!evaluatedLeft) {
|
|
79250
|
-
break;
|
|
79251
|
-
}
|
|
79252
|
-
const evaluatedRight = evaluate(expr.right, location);
|
|
79253
|
-
if (!evaluatedRight) {
|
|
79254
|
-
break;
|
|
79255
|
-
}
|
|
79256
|
-
const left = evaluatedLeft.value;
|
|
79257
|
-
const right = evaluatedRight.value;
|
|
79237
|
+
case 226 /* BinaryExpression */:
|
|
79238
|
+
const left = evaluate(expr.left, location);
|
|
79239
|
+
const right = evaluate(expr.right, location);
|
|
79258
79240
|
if (typeof left === "number" && typeof right === "number") {
|
|
79259
79241
|
switch (expr.operatorToken.kind) {
|
|
79260
79242
|
case 52 /* BarToken */:
|
|
79261
|
-
return
|
|
79243
|
+
return left | right;
|
|
79262
79244
|
case 51 /* AmpersandToken */:
|
|
79263
|
-
return
|
|
79245
|
+
return left & right;
|
|
79264
79246
|
case 49 /* GreaterThanGreaterThanToken */:
|
|
79265
|
-
return
|
|
79247
|
+
return left >> right;
|
|
79266
79248
|
case 50 /* GreaterThanGreaterThanGreaterThanToken */:
|
|
79267
|
-
return
|
|
79249
|
+
return left >>> right;
|
|
79268
79250
|
case 48 /* LessThanLessThanToken */:
|
|
79269
|
-
return
|
|
79251
|
+
return left << right;
|
|
79270
79252
|
case 53 /* CaretToken */:
|
|
79271
|
-
return
|
|
79253
|
+
return left ^ right;
|
|
79272
79254
|
case 42 /* AsteriskToken */:
|
|
79273
|
-
return
|
|
79255
|
+
return left * right;
|
|
79274
79256
|
case 44 /* SlashToken */:
|
|
79275
|
-
return
|
|
79257
|
+
return left / right;
|
|
79276
79258
|
case 40 /* PlusToken */:
|
|
79277
|
-
return
|
|
79259
|
+
return left + right;
|
|
79278
79260
|
case 41 /* MinusToken */:
|
|
79279
|
-
return
|
|
79261
|
+
return left - right;
|
|
79280
79262
|
case 45 /* PercentToken */:
|
|
79281
|
-
return
|
|
79263
|
+
return left % right;
|
|
79282
79264
|
case 43 /* AsteriskAsteriskToken */:
|
|
79283
|
-
return
|
|
79265
|
+
return left ** right;
|
|
79284
79266
|
}
|
|
79285
|
-
} else if (typeof left === "
|
|
79286
|
-
|
|
79287
|
-
case 52 /* BarToken */:
|
|
79288
|
-
return { value: left | right };
|
|
79289
|
-
case 51 /* AmpersandToken */:
|
|
79290
|
-
return { value: left & right };
|
|
79291
|
-
case 49 /* GreaterThanGreaterThanToken */:
|
|
79292
|
-
return { value: left >> right };
|
|
79293
|
-
case 48 /* LessThanLessThanToken */:
|
|
79294
|
-
return { value: left << right };
|
|
79295
|
-
case 53 /* CaretToken */:
|
|
79296
|
-
return { value: left ^ right };
|
|
79297
|
-
case 42 /* AsteriskToken */:
|
|
79298
|
-
return { value: left * right };
|
|
79299
|
-
case 44 /* SlashToken */:
|
|
79300
|
-
return { value: left / right };
|
|
79301
|
-
case 40 /* PlusToken */:
|
|
79302
|
-
return { value: left + right };
|
|
79303
|
-
case 41 /* MinusToken */:
|
|
79304
|
-
return { value: left - right };
|
|
79305
|
-
case 45 /* PercentToken */:
|
|
79306
|
-
return { value: left % right };
|
|
79307
|
-
case 43 /* AsteriskAsteriskToken */:
|
|
79308
|
-
return { value: left ** right };
|
|
79309
|
-
}
|
|
79310
|
-
} else if ((typeof left === "string" || typeof right === "string") && expr.operatorToken.kind === 40 /* PlusToken */) {
|
|
79311
|
-
return { value: "" + left + right };
|
|
79267
|
+
} else if ((typeof left === "string" || typeof left === "number") && (typeof right === "string" || typeof right === "number") && expr.operatorToken.kind === 40 /* PlusToken */) {
|
|
79268
|
+
return "" + left + right;
|
|
79312
79269
|
}
|
|
79313
79270
|
break;
|
|
79314
|
-
}
|
|
79315
79271
|
case 11 /* StringLiteral */:
|
|
79316
79272
|
case 15 /* NoSubstitutionTemplateLiteral */:
|
|
79317
|
-
return
|
|
79318
|
-
case 228 /* TemplateExpression */:
|
|
79319
|
-
|
|
79320
|
-
if (typeof value === "undefined") {
|
|
79321
|
-
break;
|
|
79322
|
-
}
|
|
79323
|
-
return { value };
|
|
79324
|
-
}
|
|
79273
|
+
return expr.text;
|
|
79274
|
+
case 228 /* TemplateExpression */:
|
|
79275
|
+
return evaluateTemplateExpression(expr, location);
|
|
79325
79276
|
case 9 /* NumericLiteral */:
|
|
79326
|
-
|
|
79327
|
-
|
|
79328
|
-
return { value: BigInt(expr.text) };
|
|
79277
|
+
checkGrammarNumericLiteral(expr);
|
|
79278
|
+
return +expr.text;
|
|
79329
79279
|
case 217 /* ParenthesizedExpression */:
|
|
79330
79280
|
return evaluate(expr.expression, location);
|
|
79331
79281
|
case 80 /* Identifier */: {
|
|
@@ -79341,7 +79291,7 @@ function createTypeChecker(host) {
|
|
|
79341
79291
|
/*diagnostic*/
|
|
79342
79292
|
void 0
|
|
79343
79293
|
)) {
|
|
79344
|
-
return
|
|
79294
|
+
return +identifier.escapedText;
|
|
79345
79295
|
}
|
|
79346
79296
|
}
|
|
79347
79297
|
case 211 /* PropertyAccessExpression */:
|
|
@@ -79354,11 +79304,7 @@ function createTypeChecker(host) {
|
|
|
79354
79304
|
);
|
|
79355
79305
|
if (symbol) {
|
|
79356
79306
|
if (symbol.flags & 8 /* EnumMember */) {
|
|
79357
|
-
|
|
79358
|
-
if (typeof value === "undefined") {
|
|
79359
|
-
break;
|
|
79360
|
-
}
|
|
79361
|
-
return { value };
|
|
79307
|
+
return location ? evaluateEnumMember(expr, symbol, location) : getEnumMemberValue(symbol.valueDeclaration);
|
|
79362
79308
|
}
|
|
79363
79309
|
if (isConstantVariable(symbol)) {
|
|
79364
79310
|
const declaration = symbol.valueDeclaration;
|
|
@@ -79382,23 +79328,11 @@ function createTypeChecker(host) {
|
|
|
79382
79328
|
const name = escapeLeadingUnderscores(expr.argumentExpression.text);
|
|
79383
79329
|
const member = rootSymbol.exports.get(name);
|
|
79384
79330
|
if (member) {
|
|
79385
|
-
|
|
79386
|
-
if (typeof value === "undefined") {
|
|
79387
|
-
break;
|
|
79388
|
-
}
|
|
79389
|
-
return { value };
|
|
79331
|
+
return location ? evaluateEnumMember(expr, member, location) : getEnumMemberValue(member.valueDeclaration);
|
|
79390
79332
|
}
|
|
79391
79333
|
}
|
|
79392
79334
|
}
|
|
79393
79335
|
break;
|
|
79394
|
-
case 112 /* TrueKeyword */:
|
|
79395
|
-
return { value: true };
|
|
79396
|
-
case 97 /* FalseKeyword */:
|
|
79397
|
-
return { value: false };
|
|
79398
|
-
case 106 /* NullKeyword */:
|
|
79399
|
-
return { value: null };
|
|
79400
|
-
case 157 /* UndefinedKeyword */:
|
|
79401
|
-
return { value: void 0 };
|
|
79402
79336
|
}
|
|
79403
79337
|
return void 0;
|
|
79404
79338
|
}
|
|
@@ -79417,11 +79351,11 @@ function createTypeChecker(host) {
|
|
|
79417
79351
|
function evaluateTemplateExpression(expr, location) {
|
|
79418
79352
|
let result = expr.head.text;
|
|
79419
79353
|
for (const span of expr.templateSpans) {
|
|
79420
|
-
const
|
|
79421
|
-
if (
|
|
79354
|
+
const value = evaluate(span.expression, location);
|
|
79355
|
+
if (value === void 0) {
|
|
79422
79356
|
return void 0;
|
|
79423
79357
|
}
|
|
79424
|
-
result +=
|
|
79358
|
+
result += value;
|
|
79425
79359
|
result += span.literal.text;
|
|
79426
79360
|
}
|
|
79427
79361
|
return result;
|
package/lib/tsserver.js
CHANGED
|
@@ -2327,7 +2327,7 @@ module.exports = __toCommonJS(server_exports);
|
|
|
2327
2327
|
|
|
2328
2328
|
// src/compiler/corePublic.ts
|
|
2329
2329
|
var versionMajorMinor = "5.3";
|
|
2330
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
2330
|
+
var version = `${versionMajorMinor}.0-insiders.20230912`;
|
|
2331
2331
|
var Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
2332
2332
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
2333
2333
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -60968,8 +60968,7 @@ function createTypeChecker(host) {
|
|
|
60968
60968
|
if (elementFlags.length === 1 && elementFlags[0] & 4 /* Rest */) {
|
|
60969
60969
|
return readonly ? globalReadonlyArrayType : globalArrayType;
|
|
60970
60970
|
}
|
|
60971
|
-
const
|
|
60972
|
-
const key = map(elementFlags, (f) => f & 1 /* Required */ ? "#" : f & 2 /* Optional */ ? "?" : f & 4 /* Rest */ ? "." : "*").join() + (readonly ? "R" : "") + (memberIds.length ? "," + memberIds.join(",") : "");
|
|
60971
|
+
const key = map(elementFlags, (f) => f & 1 /* Required */ ? "#" : f & 2 /* Optional */ ? "?" : f & 4 /* Rest */ ? "." : "*").join() + (readonly ? "R" : "") + (some(namedMemberDeclarations, (node) => !!node) ? "," + map(namedMemberDeclarations, (node) => node ? getNodeId(node) : "_").join(",") : "");
|
|
60973
60972
|
let type = tupleTypes.get(key);
|
|
60974
60973
|
if (!type) {
|
|
60975
60974
|
tupleTypes.set(key, type = createTupleTargetType(elementFlags, readonly, namedMemberDeclarations));
|
|
@@ -78675,7 +78674,11 @@ function createTypeChecker(host) {
|
|
|
78675
78674
|
error2(errorNode, Diagnostics.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value, eqType ? "false" : "true");
|
|
78676
78675
|
}
|
|
78677
78676
|
checkNaNEquality(errorNode, operator, left, right);
|
|
78678
|
-
|
|
78677
|
+
if (isUnitType(leftType) && isUnitType(rightType) && isTypeIdenticalTo(leftType, rightType)) {
|
|
78678
|
+
error2(errorNode, Diagnostics.This_condition_will_always_return_0, operator === 37 /* EqualsEqualsEqualsToken */ || operator === 35 /* EqualsEqualsToken */ ? "true" : "false");
|
|
78679
|
+
} else {
|
|
78680
|
+
reportOperatorErrorUnless((left2, right2) => isTypeEqualityComparableTo(left2, right2) || isTypeEqualityComparableTo(right2, left2));
|
|
78681
|
+
}
|
|
78679
78682
|
}
|
|
78680
78683
|
return booleanType;
|
|
78681
78684
|
case 104 /* InstanceOfKeyword */:
|
|
@@ -83901,19 +83904,14 @@ function createTypeChecker(host) {
|
|
|
83901
83904
|
function computeConstantValue(member) {
|
|
83902
83905
|
const isConstEnum = isEnumConst(member.parent);
|
|
83903
83906
|
const initializer = member.initializer;
|
|
83904
|
-
const
|
|
83905
|
-
if (
|
|
83906
|
-
const { value } = evaluated;
|
|
83907
|
+
const value = evaluate(initializer, member);
|
|
83908
|
+
if (value !== void 0) {
|
|
83907
83909
|
if (isConstEnum && typeof value === "number" && !isFinite(value)) {
|
|
83908
83910
|
error2(
|
|
83909
83911
|
initializer,
|
|
83910
83912
|
isNaN(value) ? Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN : Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value
|
|
83911
83913
|
);
|
|
83912
|
-
} else if (typeof value !== "string" && typeof value !== "number") {
|
|
83913
|
-
checkTypeAssignableTo(checkExpression(initializer), numberType, initializer, Diagnostics.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);
|
|
83914
|
-
return void 0;
|
|
83915
83914
|
}
|
|
83916
|
-
return value;
|
|
83917
83915
|
} else if (isConstEnum) {
|
|
83918
83916
|
error2(initializer, Diagnostics.const_enum_member_initializers_must_be_constant_expressions);
|
|
83919
83917
|
} else if (member.parent.flags & 33554432 /* Ambient */) {
|
|
@@ -83921,113 +83919,65 @@ function createTypeChecker(host) {
|
|
|
83921
83919
|
} else {
|
|
83922
83920
|
checkTypeAssignableTo(checkExpression(initializer), numberType, initializer, Diagnostics.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);
|
|
83923
83921
|
}
|
|
83924
|
-
return
|
|
83922
|
+
return value;
|
|
83925
83923
|
}
|
|
83926
83924
|
function evaluate(expr, location) {
|
|
83927
83925
|
switch (expr.kind) {
|
|
83928
|
-
case 224 /* PrefixUnaryExpression */:
|
|
83929
|
-
const
|
|
83930
|
-
if (!evaluated) {
|
|
83931
|
-
break;
|
|
83932
|
-
}
|
|
83933
|
-
const { value } = evaluated;
|
|
83926
|
+
case 224 /* PrefixUnaryExpression */:
|
|
83927
|
+
const value = evaluate(expr.operand, location);
|
|
83934
83928
|
if (typeof value === "number") {
|
|
83935
83929
|
switch (expr.operator) {
|
|
83936
83930
|
case 40 /* PlusToken */:
|
|
83937
|
-
return
|
|
83931
|
+
return value;
|
|
83938
83932
|
case 41 /* MinusToken */:
|
|
83939
|
-
return
|
|
83933
|
+
return -value;
|
|
83940
83934
|
case 55 /* TildeToken */:
|
|
83941
|
-
return
|
|
83935
|
+
return ~value;
|
|
83942
83936
|
}
|
|
83943
83937
|
}
|
|
83944
|
-
if (typeof value === "boolean" && expr.operator === 54 /* ExclamationToken */) {
|
|
83945
|
-
return { value: !value };
|
|
83946
|
-
}
|
|
83947
83938
|
break;
|
|
83948
|
-
|
|
83949
|
-
|
|
83950
|
-
const
|
|
83951
|
-
if (!evaluatedLeft) {
|
|
83952
|
-
break;
|
|
83953
|
-
}
|
|
83954
|
-
const evaluatedRight = evaluate(expr.right, location);
|
|
83955
|
-
if (!evaluatedRight) {
|
|
83956
|
-
break;
|
|
83957
|
-
}
|
|
83958
|
-
const left = evaluatedLeft.value;
|
|
83959
|
-
const right = evaluatedRight.value;
|
|
83939
|
+
case 226 /* BinaryExpression */:
|
|
83940
|
+
const left = evaluate(expr.left, location);
|
|
83941
|
+
const right = evaluate(expr.right, location);
|
|
83960
83942
|
if (typeof left === "number" && typeof right === "number") {
|
|
83961
83943
|
switch (expr.operatorToken.kind) {
|
|
83962
83944
|
case 52 /* BarToken */:
|
|
83963
|
-
return
|
|
83945
|
+
return left | right;
|
|
83964
83946
|
case 51 /* AmpersandToken */:
|
|
83965
|
-
return
|
|
83947
|
+
return left & right;
|
|
83966
83948
|
case 49 /* GreaterThanGreaterThanToken */:
|
|
83967
|
-
return
|
|
83949
|
+
return left >> right;
|
|
83968
83950
|
case 50 /* GreaterThanGreaterThanGreaterThanToken */:
|
|
83969
|
-
return
|
|
83951
|
+
return left >>> right;
|
|
83970
83952
|
case 48 /* LessThanLessThanToken */:
|
|
83971
|
-
return
|
|
83953
|
+
return left << right;
|
|
83972
83954
|
case 53 /* CaretToken */:
|
|
83973
|
-
return
|
|
83955
|
+
return left ^ right;
|
|
83974
83956
|
case 42 /* AsteriskToken */:
|
|
83975
|
-
return
|
|
83957
|
+
return left * right;
|
|
83976
83958
|
case 44 /* SlashToken */:
|
|
83977
|
-
return
|
|
83959
|
+
return left / right;
|
|
83978
83960
|
case 40 /* PlusToken */:
|
|
83979
|
-
return
|
|
83961
|
+
return left + right;
|
|
83980
83962
|
case 41 /* MinusToken */:
|
|
83981
|
-
return
|
|
83963
|
+
return left - right;
|
|
83982
83964
|
case 45 /* PercentToken */:
|
|
83983
|
-
return
|
|
83965
|
+
return left % right;
|
|
83984
83966
|
case 43 /* AsteriskAsteriskToken */:
|
|
83985
|
-
return
|
|
83967
|
+
return left ** right;
|
|
83986
83968
|
}
|
|
83987
|
-
} else if (typeof left === "
|
|
83988
|
-
|
|
83989
|
-
case 52 /* BarToken */:
|
|
83990
|
-
return { value: left | right };
|
|
83991
|
-
case 51 /* AmpersandToken */:
|
|
83992
|
-
return { value: left & right };
|
|
83993
|
-
case 49 /* GreaterThanGreaterThanToken */:
|
|
83994
|
-
return { value: left >> right };
|
|
83995
|
-
case 48 /* LessThanLessThanToken */:
|
|
83996
|
-
return { value: left << right };
|
|
83997
|
-
case 53 /* CaretToken */:
|
|
83998
|
-
return { value: left ^ right };
|
|
83999
|
-
case 42 /* AsteriskToken */:
|
|
84000
|
-
return { value: left * right };
|
|
84001
|
-
case 44 /* SlashToken */:
|
|
84002
|
-
return { value: left / right };
|
|
84003
|
-
case 40 /* PlusToken */:
|
|
84004
|
-
return { value: left + right };
|
|
84005
|
-
case 41 /* MinusToken */:
|
|
84006
|
-
return { value: left - right };
|
|
84007
|
-
case 45 /* PercentToken */:
|
|
84008
|
-
return { value: left % right };
|
|
84009
|
-
case 43 /* AsteriskAsteriskToken */:
|
|
84010
|
-
return { value: left ** right };
|
|
84011
|
-
}
|
|
84012
|
-
} else if ((typeof left === "string" || typeof right === "string") && expr.operatorToken.kind === 40 /* PlusToken */) {
|
|
84013
|
-
return { value: "" + left + right };
|
|
83969
|
+
} else if ((typeof left === "string" || typeof left === "number") && (typeof right === "string" || typeof right === "number") && expr.operatorToken.kind === 40 /* PlusToken */) {
|
|
83970
|
+
return "" + left + right;
|
|
84014
83971
|
}
|
|
84015
83972
|
break;
|
|
84016
|
-
}
|
|
84017
83973
|
case 11 /* StringLiteral */:
|
|
84018
83974
|
case 15 /* NoSubstitutionTemplateLiteral */:
|
|
84019
|
-
return
|
|
84020
|
-
case 228 /* TemplateExpression */:
|
|
84021
|
-
|
|
84022
|
-
if (typeof value === "undefined") {
|
|
84023
|
-
break;
|
|
84024
|
-
}
|
|
84025
|
-
return { value };
|
|
84026
|
-
}
|
|
83975
|
+
return expr.text;
|
|
83976
|
+
case 228 /* TemplateExpression */:
|
|
83977
|
+
return evaluateTemplateExpression(expr, location);
|
|
84027
83978
|
case 9 /* NumericLiteral */:
|
|
84028
|
-
|
|
84029
|
-
|
|
84030
|
-
return { value: BigInt(expr.text) };
|
|
83979
|
+
checkGrammarNumericLiteral(expr);
|
|
83980
|
+
return +expr.text;
|
|
84031
83981
|
case 217 /* ParenthesizedExpression */:
|
|
84032
83982
|
return evaluate(expr.expression, location);
|
|
84033
83983
|
case 80 /* Identifier */: {
|
|
@@ -84043,7 +83993,7 @@ function createTypeChecker(host) {
|
|
|
84043
83993
|
/*diagnostic*/
|
|
84044
83994
|
void 0
|
|
84045
83995
|
)) {
|
|
84046
|
-
return
|
|
83996
|
+
return +identifier.escapedText;
|
|
84047
83997
|
}
|
|
84048
83998
|
}
|
|
84049
83999
|
case 211 /* PropertyAccessExpression */:
|
|
@@ -84056,11 +84006,7 @@ function createTypeChecker(host) {
|
|
|
84056
84006
|
);
|
|
84057
84007
|
if (symbol) {
|
|
84058
84008
|
if (symbol.flags & 8 /* EnumMember */) {
|
|
84059
|
-
|
|
84060
|
-
if (typeof value === "undefined") {
|
|
84061
|
-
break;
|
|
84062
|
-
}
|
|
84063
|
-
return { value };
|
|
84009
|
+
return location ? evaluateEnumMember(expr, symbol, location) : getEnumMemberValue(symbol.valueDeclaration);
|
|
84064
84010
|
}
|
|
84065
84011
|
if (isConstantVariable(symbol)) {
|
|
84066
84012
|
const declaration = symbol.valueDeclaration;
|
|
@@ -84084,23 +84030,11 @@ function createTypeChecker(host) {
|
|
|
84084
84030
|
const name = escapeLeadingUnderscores(expr.argumentExpression.text);
|
|
84085
84031
|
const member = rootSymbol.exports.get(name);
|
|
84086
84032
|
if (member) {
|
|
84087
|
-
|
|
84088
|
-
if (typeof value === "undefined") {
|
|
84089
|
-
break;
|
|
84090
|
-
}
|
|
84091
|
-
return { value };
|
|
84033
|
+
return location ? evaluateEnumMember(expr, member, location) : getEnumMemberValue(member.valueDeclaration);
|
|
84092
84034
|
}
|
|
84093
84035
|
}
|
|
84094
84036
|
}
|
|
84095
84037
|
break;
|
|
84096
|
-
case 112 /* TrueKeyword */:
|
|
84097
|
-
return { value: true };
|
|
84098
|
-
case 97 /* FalseKeyword */:
|
|
84099
|
-
return { value: false };
|
|
84100
|
-
case 106 /* NullKeyword */:
|
|
84101
|
-
return { value: null };
|
|
84102
|
-
case 157 /* UndefinedKeyword */:
|
|
84103
|
-
return { value: void 0 };
|
|
84104
84038
|
}
|
|
84105
84039
|
return void 0;
|
|
84106
84040
|
}
|
|
@@ -84119,11 +84053,11 @@ function createTypeChecker(host) {
|
|
|
84119
84053
|
function evaluateTemplateExpression(expr, location) {
|
|
84120
84054
|
let result = expr.head.text;
|
|
84121
84055
|
for (const span of expr.templateSpans) {
|
|
84122
|
-
const
|
|
84123
|
-
if (
|
|
84056
|
+
const value = evaluate(span.expression, location);
|
|
84057
|
+
if (value === void 0) {
|
|
84124
84058
|
return void 0;
|
|
84125
84059
|
}
|
|
84126
|
-
result +=
|
|
84060
|
+
result += value;
|
|
84127
84061
|
result += span.literal.text;
|
|
84128
84062
|
}
|
|
84129
84063
|
return result;
|
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.3";
|
|
38
|
-
version = `${versionMajorMinor}.0-insiders.
|
|
38
|
+
version = `${versionMajorMinor}.0-insiders.20230912`;
|
|
39
39
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
40
40
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
41
41
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -58735,8 +58735,7 @@ ${lanes.join("\n")}
|
|
|
58735
58735
|
if (elementFlags.length === 1 && elementFlags[0] & 4 /* Rest */) {
|
|
58736
58736
|
return readonly ? globalReadonlyArrayType : globalArrayType;
|
|
58737
58737
|
}
|
|
58738
|
-
const
|
|
58739
|
-
const key = map(elementFlags, (f) => f & 1 /* Required */ ? "#" : f & 2 /* Optional */ ? "?" : f & 4 /* Rest */ ? "." : "*").join() + (readonly ? "R" : "") + (memberIds.length ? "," + memberIds.join(",") : "");
|
|
58738
|
+
const key = map(elementFlags, (f) => f & 1 /* Required */ ? "#" : f & 2 /* Optional */ ? "?" : f & 4 /* Rest */ ? "." : "*").join() + (readonly ? "R" : "") + (some(namedMemberDeclarations, (node) => !!node) ? "," + map(namedMemberDeclarations, (node) => node ? getNodeId(node) : "_").join(",") : "");
|
|
58740
58739
|
let type = tupleTypes.get(key);
|
|
58741
58740
|
if (!type) {
|
|
58742
58741
|
tupleTypes.set(key, type = createTupleTargetType(elementFlags, readonly, namedMemberDeclarations));
|
|
@@ -76442,7 +76441,11 @@ ${lanes.join("\n")}
|
|
|
76442
76441
|
error2(errorNode, Diagnostics.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value, eqType ? "false" : "true");
|
|
76443
76442
|
}
|
|
76444
76443
|
checkNaNEquality(errorNode, operator, left, right);
|
|
76445
|
-
|
|
76444
|
+
if (isUnitType(leftType) && isUnitType(rightType) && isTypeIdenticalTo(leftType, rightType)) {
|
|
76445
|
+
error2(errorNode, Diagnostics.This_condition_will_always_return_0, operator === 37 /* EqualsEqualsEqualsToken */ || operator === 35 /* EqualsEqualsToken */ ? "true" : "false");
|
|
76446
|
+
} else {
|
|
76447
|
+
reportOperatorErrorUnless((left2, right2) => isTypeEqualityComparableTo(left2, right2) || isTypeEqualityComparableTo(right2, left2));
|
|
76448
|
+
}
|
|
76446
76449
|
}
|
|
76447
76450
|
return booleanType;
|
|
76448
76451
|
case 104 /* InstanceOfKeyword */:
|
|
@@ -81668,19 +81671,14 @@ ${lanes.join("\n")}
|
|
|
81668
81671
|
function computeConstantValue(member) {
|
|
81669
81672
|
const isConstEnum = isEnumConst(member.parent);
|
|
81670
81673
|
const initializer = member.initializer;
|
|
81671
|
-
const
|
|
81672
|
-
if (
|
|
81673
|
-
const { value } = evaluated;
|
|
81674
|
+
const value = evaluate(initializer, member);
|
|
81675
|
+
if (value !== void 0) {
|
|
81674
81676
|
if (isConstEnum && typeof value === "number" && !isFinite(value)) {
|
|
81675
81677
|
error2(
|
|
81676
81678
|
initializer,
|
|
81677
81679
|
isNaN(value) ? Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN : Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value
|
|
81678
81680
|
);
|
|
81679
|
-
} else if (typeof value !== "string" && typeof value !== "number") {
|
|
81680
|
-
checkTypeAssignableTo(checkExpression(initializer), numberType, initializer, Diagnostics.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);
|
|
81681
|
-
return void 0;
|
|
81682
81681
|
}
|
|
81683
|
-
return value;
|
|
81684
81682
|
} else if (isConstEnum) {
|
|
81685
81683
|
error2(initializer, Diagnostics.const_enum_member_initializers_must_be_constant_expressions);
|
|
81686
81684
|
} else if (member.parent.flags & 33554432 /* Ambient */) {
|
|
@@ -81688,113 +81686,65 @@ ${lanes.join("\n")}
|
|
|
81688
81686
|
} else {
|
|
81689
81687
|
checkTypeAssignableTo(checkExpression(initializer), numberType, initializer, Diagnostics.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);
|
|
81690
81688
|
}
|
|
81691
|
-
return
|
|
81689
|
+
return value;
|
|
81692
81690
|
}
|
|
81693
81691
|
function evaluate(expr, location) {
|
|
81694
81692
|
switch (expr.kind) {
|
|
81695
|
-
case 224 /* PrefixUnaryExpression */:
|
|
81696
|
-
const
|
|
81697
|
-
if (!evaluated) {
|
|
81698
|
-
break;
|
|
81699
|
-
}
|
|
81700
|
-
const { value } = evaluated;
|
|
81693
|
+
case 224 /* PrefixUnaryExpression */:
|
|
81694
|
+
const value = evaluate(expr.operand, location);
|
|
81701
81695
|
if (typeof value === "number") {
|
|
81702
81696
|
switch (expr.operator) {
|
|
81703
81697
|
case 40 /* PlusToken */:
|
|
81704
|
-
return
|
|
81698
|
+
return value;
|
|
81705
81699
|
case 41 /* MinusToken */:
|
|
81706
|
-
return
|
|
81700
|
+
return -value;
|
|
81707
81701
|
case 55 /* TildeToken */:
|
|
81708
|
-
return
|
|
81702
|
+
return ~value;
|
|
81709
81703
|
}
|
|
81710
81704
|
}
|
|
81711
|
-
if (typeof value === "boolean" && expr.operator === 54 /* ExclamationToken */) {
|
|
81712
|
-
return { value: !value };
|
|
81713
|
-
}
|
|
81714
81705
|
break;
|
|
81715
|
-
|
|
81716
|
-
|
|
81717
|
-
const
|
|
81718
|
-
if (!evaluatedLeft) {
|
|
81719
|
-
break;
|
|
81720
|
-
}
|
|
81721
|
-
const evaluatedRight = evaluate(expr.right, location);
|
|
81722
|
-
if (!evaluatedRight) {
|
|
81723
|
-
break;
|
|
81724
|
-
}
|
|
81725
|
-
const left = evaluatedLeft.value;
|
|
81726
|
-
const right = evaluatedRight.value;
|
|
81706
|
+
case 226 /* BinaryExpression */:
|
|
81707
|
+
const left = evaluate(expr.left, location);
|
|
81708
|
+
const right = evaluate(expr.right, location);
|
|
81727
81709
|
if (typeof left === "number" && typeof right === "number") {
|
|
81728
81710
|
switch (expr.operatorToken.kind) {
|
|
81729
81711
|
case 52 /* BarToken */:
|
|
81730
|
-
return
|
|
81712
|
+
return left | right;
|
|
81731
81713
|
case 51 /* AmpersandToken */:
|
|
81732
|
-
return
|
|
81714
|
+
return left & right;
|
|
81733
81715
|
case 49 /* GreaterThanGreaterThanToken */:
|
|
81734
|
-
return
|
|
81716
|
+
return left >> right;
|
|
81735
81717
|
case 50 /* GreaterThanGreaterThanGreaterThanToken */:
|
|
81736
|
-
return
|
|
81718
|
+
return left >>> right;
|
|
81737
81719
|
case 48 /* LessThanLessThanToken */:
|
|
81738
|
-
return
|
|
81720
|
+
return left << right;
|
|
81739
81721
|
case 53 /* CaretToken */:
|
|
81740
|
-
return
|
|
81722
|
+
return left ^ right;
|
|
81741
81723
|
case 42 /* AsteriskToken */:
|
|
81742
|
-
return
|
|
81724
|
+
return left * right;
|
|
81743
81725
|
case 44 /* SlashToken */:
|
|
81744
|
-
return
|
|
81726
|
+
return left / right;
|
|
81745
81727
|
case 40 /* PlusToken */:
|
|
81746
|
-
return
|
|
81728
|
+
return left + right;
|
|
81747
81729
|
case 41 /* MinusToken */:
|
|
81748
|
-
return
|
|
81730
|
+
return left - right;
|
|
81749
81731
|
case 45 /* PercentToken */:
|
|
81750
|
-
return
|
|
81732
|
+
return left % right;
|
|
81751
81733
|
case 43 /* AsteriskAsteriskToken */:
|
|
81752
|
-
return
|
|
81734
|
+
return left ** right;
|
|
81753
81735
|
}
|
|
81754
|
-
} else if (typeof left === "
|
|
81755
|
-
|
|
81756
|
-
case 52 /* BarToken */:
|
|
81757
|
-
return { value: left | right };
|
|
81758
|
-
case 51 /* AmpersandToken */:
|
|
81759
|
-
return { value: left & right };
|
|
81760
|
-
case 49 /* GreaterThanGreaterThanToken */:
|
|
81761
|
-
return { value: left >> right };
|
|
81762
|
-
case 48 /* LessThanLessThanToken */:
|
|
81763
|
-
return { value: left << right };
|
|
81764
|
-
case 53 /* CaretToken */:
|
|
81765
|
-
return { value: left ^ right };
|
|
81766
|
-
case 42 /* AsteriskToken */:
|
|
81767
|
-
return { value: left * right };
|
|
81768
|
-
case 44 /* SlashToken */:
|
|
81769
|
-
return { value: left / right };
|
|
81770
|
-
case 40 /* PlusToken */:
|
|
81771
|
-
return { value: left + right };
|
|
81772
|
-
case 41 /* MinusToken */:
|
|
81773
|
-
return { value: left - right };
|
|
81774
|
-
case 45 /* PercentToken */:
|
|
81775
|
-
return { value: left % right };
|
|
81776
|
-
case 43 /* AsteriskAsteriskToken */:
|
|
81777
|
-
return { value: left ** right };
|
|
81778
|
-
}
|
|
81779
|
-
} else if ((typeof left === "string" || typeof right === "string") && expr.operatorToken.kind === 40 /* PlusToken */) {
|
|
81780
|
-
return { value: "" + left + right };
|
|
81736
|
+
} else if ((typeof left === "string" || typeof left === "number") && (typeof right === "string" || typeof right === "number") && expr.operatorToken.kind === 40 /* PlusToken */) {
|
|
81737
|
+
return "" + left + right;
|
|
81781
81738
|
}
|
|
81782
81739
|
break;
|
|
81783
|
-
}
|
|
81784
81740
|
case 11 /* StringLiteral */:
|
|
81785
81741
|
case 15 /* NoSubstitutionTemplateLiteral */:
|
|
81786
|
-
return
|
|
81787
|
-
case 228 /* TemplateExpression */:
|
|
81788
|
-
|
|
81789
|
-
if (typeof value === "undefined") {
|
|
81790
|
-
break;
|
|
81791
|
-
}
|
|
81792
|
-
return { value };
|
|
81793
|
-
}
|
|
81742
|
+
return expr.text;
|
|
81743
|
+
case 228 /* TemplateExpression */:
|
|
81744
|
+
return evaluateTemplateExpression(expr, location);
|
|
81794
81745
|
case 9 /* NumericLiteral */:
|
|
81795
|
-
|
|
81796
|
-
|
|
81797
|
-
return { value: BigInt(expr.text) };
|
|
81746
|
+
checkGrammarNumericLiteral(expr);
|
|
81747
|
+
return +expr.text;
|
|
81798
81748
|
case 217 /* ParenthesizedExpression */:
|
|
81799
81749
|
return evaluate(expr.expression, location);
|
|
81800
81750
|
case 80 /* Identifier */: {
|
|
@@ -81810,7 +81760,7 @@ ${lanes.join("\n")}
|
|
|
81810
81760
|
/*diagnostic*/
|
|
81811
81761
|
void 0
|
|
81812
81762
|
)) {
|
|
81813
|
-
return
|
|
81763
|
+
return +identifier.escapedText;
|
|
81814
81764
|
}
|
|
81815
81765
|
}
|
|
81816
81766
|
case 211 /* PropertyAccessExpression */:
|
|
@@ -81823,11 +81773,7 @@ ${lanes.join("\n")}
|
|
|
81823
81773
|
);
|
|
81824
81774
|
if (symbol) {
|
|
81825
81775
|
if (symbol.flags & 8 /* EnumMember */) {
|
|
81826
|
-
|
|
81827
|
-
if (typeof value === "undefined") {
|
|
81828
|
-
break;
|
|
81829
|
-
}
|
|
81830
|
-
return { value };
|
|
81776
|
+
return location ? evaluateEnumMember(expr, symbol, location) : getEnumMemberValue(symbol.valueDeclaration);
|
|
81831
81777
|
}
|
|
81832
81778
|
if (isConstantVariable(symbol)) {
|
|
81833
81779
|
const declaration = symbol.valueDeclaration;
|
|
@@ -81851,23 +81797,11 @@ ${lanes.join("\n")}
|
|
|
81851
81797
|
const name = escapeLeadingUnderscores(expr.argumentExpression.text);
|
|
81852
81798
|
const member = rootSymbol.exports.get(name);
|
|
81853
81799
|
if (member) {
|
|
81854
|
-
|
|
81855
|
-
if (typeof value === "undefined") {
|
|
81856
|
-
break;
|
|
81857
|
-
}
|
|
81858
|
-
return { value };
|
|
81800
|
+
return location ? evaluateEnumMember(expr, member, location) : getEnumMemberValue(member.valueDeclaration);
|
|
81859
81801
|
}
|
|
81860
81802
|
}
|
|
81861
81803
|
}
|
|
81862
81804
|
break;
|
|
81863
|
-
case 112 /* TrueKeyword */:
|
|
81864
|
-
return { value: true };
|
|
81865
|
-
case 97 /* FalseKeyword */:
|
|
81866
|
-
return { value: false };
|
|
81867
|
-
case 106 /* NullKeyword */:
|
|
81868
|
-
return { value: null };
|
|
81869
|
-
case 157 /* UndefinedKeyword */:
|
|
81870
|
-
return { value: void 0 };
|
|
81871
81805
|
}
|
|
81872
81806
|
return void 0;
|
|
81873
81807
|
}
|
|
@@ -81886,11 +81820,11 @@ ${lanes.join("\n")}
|
|
|
81886
81820
|
function evaluateTemplateExpression(expr, location) {
|
|
81887
81821
|
let result = expr.head.text;
|
|
81888
81822
|
for (const span of expr.templateSpans) {
|
|
81889
|
-
const
|
|
81890
|
-
if (
|
|
81823
|
+
const value = evaluate(span.expression, location);
|
|
81824
|
+
if (value === void 0) {
|
|
81891
81825
|
return void 0;
|
|
81892
81826
|
}
|
|
81893
|
-
result +=
|
|
81827
|
+
result += value;
|
|
81894
81828
|
result += span.literal.text;
|
|
81895
81829
|
}
|
|
81896
81830
|
return result;
|
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.3";
|
|
57
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
57
|
+
var version = `${versionMajorMinor}.0-insiders.20230912`;
|
|
58
58
|
|
|
59
59
|
// src/compiler/core.ts
|
|
60
60
|
var emptyArray = [];
|
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.3.0-pr-
|
|
5
|
+
"version": "5.3.0-pr-55718-6",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"description": "TypeScript is a language for application scale JavaScript development",
|
|
8
8
|
"keywords": [
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"chalk": "^4.1.2",
|
|
60
60
|
"chokidar": "^3.5.3",
|
|
61
61
|
"diff": "^5.1.0",
|
|
62
|
-
"dprint": "^0.
|
|
62
|
+
"dprint": "^0.41.0",
|
|
63
63
|
"esbuild": "^0.19.0",
|
|
64
64
|
"eslint": "^8.22.0",
|
|
65
65
|
"eslint-formatter-autolinkable-stylish": "^1.2.0",
|
|
@@ -113,5 +113,5 @@
|
|
|
113
113
|
"node": "20.1.0",
|
|
114
114
|
"npm": "8.19.4"
|
|
115
115
|
},
|
|
116
|
-
"gitHead": "
|
|
116
|
+
"gitHead": "3746c7e4e22e0b0b56c18c3463f73aef5e0faa52"
|
|
117
117
|
}
|