typescript 4.7.0-dev.20220313 → 4.7.0-dev.20220316
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/lib.es5.d.ts +1 -1
- package/lib/tsc.js +52 -40
- package/lib/tsserver.js +87 -40
- package/lib/tsserverlibrary.js +87 -40
- package/lib/typescript.js +87 -40
- package/lib/typescriptServices.js +87 -40
- package/lib/typingsInstaller.js +52 -40
- package/package.json +1 -1
package/lib/lib.es5.d.ts
CHANGED
|
@@ -230,7 +230,7 @@ interface ObjectConstructor {
|
|
|
230
230
|
* Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
|
|
231
231
|
* @param o Object on which to lock the attributes.
|
|
232
232
|
*/
|
|
233
|
-
freeze<T extends {[idx: string]: U | null | undefined | object}, U extends string | bigint | number | symbol>(o: T): Readonly<T>;
|
|
233
|
+
freeze<T extends {[idx: string]: U | null | undefined | object}, U extends string | bigint | number | boolean | symbol>(o: T): Readonly<T>;
|
|
234
234
|
|
|
235
235
|
/**
|
|
236
236
|
* Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
|
package/lib/tsc.js
CHANGED
|
@@ -69,7 +69,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
69
69
|
var ts;
|
|
70
70
|
(function (ts) {
|
|
71
71
|
ts.versionMajorMinor = "4.7";
|
|
72
|
-
ts.version = ts.versionMajorMinor + ".0-dev.
|
|
72
|
+
ts.version = ts.versionMajorMinor + ".0-dev.20220316";
|
|
73
73
|
var NativeCollections;
|
|
74
74
|
(function (NativeCollections) {
|
|
75
75
|
var globals = typeof globalThis !== "undefined" ? globalThis :
|
|
@@ -5221,7 +5221,7 @@ var ts;
|
|
|
5221
5221
|
Identifier_expected: diag(1003, ts.DiagnosticCategory.Error, "Identifier_expected_1003", "Identifier expected."),
|
|
5222
5222
|
_0_expected: diag(1005, ts.DiagnosticCategory.Error, "_0_expected_1005", "'{0}' expected."),
|
|
5223
5223
|
A_file_cannot_have_a_reference_to_itself: diag(1006, ts.DiagnosticCategory.Error, "A_file_cannot_have_a_reference_to_itself_1006", "A file cannot have a reference to itself."),
|
|
5224
|
-
|
|
5224
|
+
The_parser_expected_to_find_a_1_to_match_the_0_token_here: diag(1007, ts.DiagnosticCategory.Error, "The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007", "The parser expected to find a '{1}' to match the '{0}' token here."),
|
|
5225
5225
|
Trailing_comma_not_allowed: diag(1009, ts.DiagnosticCategory.Error, "Trailing_comma_not_allowed_1009", "Trailing comma not allowed."),
|
|
5226
5226
|
Asterisk_Slash_expected: diag(1010, ts.DiagnosticCategory.Error, "Asterisk_Slash_expected_1010", "'*/' expected."),
|
|
5227
5227
|
An_element_access_expression_should_take_an_argument: diag(1011, ts.DiagnosticCategory.Error, "An_element_access_expression_should_take_an_argument_1011", "An element access expression should take an argument."),
|
|
@@ -25342,17 +25342,20 @@ var ts;
|
|
|
25342
25342
|
return inContext(32768);
|
|
25343
25343
|
}
|
|
25344
25344
|
function parseErrorAtCurrentToken(message, arg0) {
|
|
25345
|
-
parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
25345
|
+
return parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
25346
25346
|
}
|
|
25347
25347
|
function parseErrorAtPosition(start, length, message, arg0) {
|
|
25348
25348
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
25349
|
+
var result;
|
|
25349
25350
|
if (!lastError || start !== lastError.start) {
|
|
25350
|
-
|
|
25351
|
+
result = ts.createDetachedDiagnostic(fileName, start, length, message, arg0);
|
|
25352
|
+
parseDiagnostics.push(result);
|
|
25351
25353
|
}
|
|
25352
25354
|
parseErrorBeforeNextFinishedNode = true;
|
|
25355
|
+
return result;
|
|
25353
25356
|
}
|
|
25354
25357
|
function parseErrorAt(start, end, message, arg0) {
|
|
25355
|
-
parseErrorAtPosition(start, end - start, message, arg0);
|
|
25358
|
+
return parseErrorAtPosition(start, end - start, message, arg0);
|
|
25356
25359
|
}
|
|
25357
25360
|
function parseErrorAtRange(range, message, arg0) {
|
|
25358
25361
|
parseErrorAt(range.pos, range.end, message, arg0);
|
|
@@ -25568,6 +25571,19 @@ var ts;
|
|
|
25568
25571
|
parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(kind));
|
|
25569
25572
|
return false;
|
|
25570
25573
|
}
|
|
25574
|
+
function parseExpectedMatchingBrackets(openKind, closeKind, openParsed, openPosition) {
|
|
25575
|
+
if (token() === closeKind) {
|
|
25576
|
+
nextToken();
|
|
25577
|
+
return;
|
|
25578
|
+
}
|
|
25579
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(closeKind));
|
|
25580
|
+
if (!openParsed) {
|
|
25581
|
+
return;
|
|
25582
|
+
}
|
|
25583
|
+
if (lastError) {
|
|
25584
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openPosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, ts.tokenToString(openKind), ts.tokenToString(closeKind)));
|
|
25585
|
+
}
|
|
25586
|
+
}
|
|
25571
25587
|
function parseOptional(t) {
|
|
25572
25588
|
if (token() === t) {
|
|
25573
25589
|
nextToken();
|
|
@@ -26906,7 +26922,7 @@ var ts;
|
|
|
26906
26922
|
if (!parseExpected(19)) {
|
|
26907
26923
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
26908
26924
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
26909
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
26925
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
26910
26926
|
}
|
|
26911
26927
|
}
|
|
26912
26928
|
return finishNode(factory.createImportTypeAssertionContainer(clause, multiLine), pos);
|
|
@@ -28263,10 +28279,11 @@ var ts;
|
|
|
28263
28279
|
}
|
|
28264
28280
|
function parseArrayLiteralExpression() {
|
|
28265
28281
|
var pos = getNodePos();
|
|
28266
|
-
|
|
28282
|
+
var openBracketPosition = scanner.getTokenPos();
|
|
28283
|
+
var openBracketParsed = parseExpected(22);
|
|
28267
28284
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
28268
28285
|
var elements = parseDelimitedList(15, parseArgumentOrArrayLiteralElement);
|
|
28269
|
-
|
|
28286
|
+
parseExpectedMatchingBrackets(22, 23, openBracketParsed, openBracketPosition);
|
|
28270
28287
|
return finishNode(factory.createArrayLiteralExpression(elements, multiLine), pos);
|
|
28271
28288
|
}
|
|
28272
28289
|
function parseObjectLiteralElement() {
|
|
@@ -28314,15 +28331,10 @@ var ts;
|
|
|
28314
28331
|
function parseObjectLiteralExpression() {
|
|
28315
28332
|
var pos = getNodePos();
|
|
28316
28333
|
var openBracePosition = scanner.getTokenPos();
|
|
28317
|
-
parseExpected(18);
|
|
28334
|
+
var openBraceParsed = parseExpected(18);
|
|
28318
28335
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
28319
28336
|
var properties = parseDelimitedList(12, parseObjectLiteralElement, true);
|
|
28320
|
-
|
|
28321
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
28322
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
28323
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
28324
|
-
}
|
|
28325
|
-
}
|
|
28337
|
+
parseExpectedMatchingBrackets(18, 19, openBraceParsed, openBracePosition);
|
|
28326
28338
|
return finishNode(factory.createObjectLiteralExpression(properties, multiLine), pos);
|
|
28327
28339
|
}
|
|
28328
28340
|
function parseFunctionExpression() {
|
|
@@ -28371,15 +28383,11 @@ var ts;
|
|
|
28371
28383
|
var pos = getNodePos();
|
|
28372
28384
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
28373
28385
|
var openBracePosition = scanner.getTokenPos();
|
|
28374
|
-
|
|
28386
|
+
var openBraceParsed = parseExpected(18, diagnosticMessage);
|
|
28387
|
+
if (openBraceParsed || ignoreMissingOpenBrace) {
|
|
28375
28388
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
28376
28389
|
var statements = parseList(1, parseStatement);
|
|
28377
|
-
|
|
28378
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
28379
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
28380
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
28381
|
-
}
|
|
28382
|
-
}
|
|
28390
|
+
parseExpectedMatchingBrackets(18, 19, openBraceParsed, openBracePosition);
|
|
28383
28391
|
var result = withJSDoc(finishNode(factory.createBlock(statements, multiLine), pos), hasJSDoc);
|
|
28384
28392
|
if (token() === 63) {
|
|
28385
28393
|
parseErrorAtCurrentToken(ts.Diagnostics.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_the_whole_assignment_in_parentheses);
|
|
@@ -28422,9 +28430,10 @@ var ts;
|
|
|
28422
28430
|
var pos = getNodePos();
|
|
28423
28431
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
28424
28432
|
parseExpected(99);
|
|
28425
|
-
|
|
28433
|
+
var openParenPosition = scanner.getTokenPos();
|
|
28434
|
+
var openParenParsed = parseExpected(20);
|
|
28426
28435
|
var expression = allowInAnd(parseExpression);
|
|
28427
|
-
|
|
28436
|
+
parseExpectedMatchingBrackets(20, 21, openParenParsed, openParenPosition);
|
|
28428
28437
|
var thenStatement = parseStatement();
|
|
28429
28438
|
var elseStatement = parseOptional(91) ? parseStatement() : undefined;
|
|
28430
28439
|
return withJSDoc(finishNode(factory.createIfStatement(expression, thenStatement, elseStatement), pos), hasJSDoc);
|
|
@@ -28435,9 +28444,10 @@ var ts;
|
|
|
28435
28444
|
parseExpected(90);
|
|
28436
28445
|
var statement = parseStatement();
|
|
28437
28446
|
parseExpected(115);
|
|
28438
|
-
|
|
28447
|
+
var openParenPosition = scanner.getTokenPos();
|
|
28448
|
+
var openParenParsed = parseExpected(20);
|
|
28439
28449
|
var expression = allowInAnd(parseExpression);
|
|
28440
|
-
|
|
28450
|
+
parseExpectedMatchingBrackets(20, 21, openParenParsed, openParenPosition);
|
|
28441
28451
|
parseOptional(26);
|
|
28442
28452
|
return withJSDoc(finishNode(factory.createDoStatement(statement, expression), pos), hasJSDoc);
|
|
28443
28453
|
}
|
|
@@ -28445,9 +28455,10 @@ var ts;
|
|
|
28445
28455
|
var pos = getNodePos();
|
|
28446
28456
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
28447
28457
|
parseExpected(115);
|
|
28448
|
-
|
|
28458
|
+
var openParenPosition = scanner.getTokenPos();
|
|
28459
|
+
var openParenParsed = parseExpected(20);
|
|
28449
28460
|
var expression = allowInAnd(parseExpression);
|
|
28450
|
-
|
|
28461
|
+
parseExpectedMatchingBrackets(20, 21, openParenParsed, openParenPosition);
|
|
28451
28462
|
var statement = parseStatement();
|
|
28452
28463
|
return withJSDoc(finishNode(factory.createWhileStatement(expression, statement), pos), hasJSDoc);
|
|
28453
28464
|
}
|
|
@@ -28514,9 +28525,10 @@ var ts;
|
|
|
28514
28525
|
var pos = getNodePos();
|
|
28515
28526
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
28516
28527
|
parseExpected(116);
|
|
28517
|
-
|
|
28528
|
+
var openParenPosition = scanner.getTokenPos();
|
|
28529
|
+
var openParenParsed = parseExpected(20);
|
|
28518
28530
|
var expression = allowInAnd(parseExpression);
|
|
28519
|
-
|
|
28531
|
+
parseExpectedMatchingBrackets(20, 21, openParenParsed, openParenPosition);
|
|
28520
28532
|
var statement = doInsideOfContext(16777216, parseStatement);
|
|
28521
28533
|
return withJSDoc(finishNode(factory.createWithStatement(expression, statement), pos), hasJSDoc);
|
|
28522
28534
|
}
|
|
@@ -29520,7 +29532,7 @@ var ts;
|
|
|
29520
29532
|
if (!parseExpected(19)) {
|
|
29521
29533
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
29522
29534
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
29523
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
29535
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
29524
29536
|
}
|
|
29525
29537
|
}
|
|
29526
29538
|
return finishNode(factory.createAssertClause(elements, multiLine), pos);
|
|
@@ -30371,8 +30383,7 @@ var ts;
|
|
|
30371
30383
|
hasChildren = true;
|
|
30372
30384
|
if (child.kind === 342) {
|
|
30373
30385
|
if (childTypeTag) {
|
|
30374
|
-
parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
30375
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
30386
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
30376
30387
|
if (lastError) {
|
|
30377
30388
|
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, 0, 0, ts.Diagnostics.The_tag_was_first_specified_here));
|
|
30378
30389
|
}
|
|
@@ -36628,7 +36639,6 @@ var ts;
|
|
|
36628
36639
|
node = node.parent;
|
|
36629
36640
|
}
|
|
36630
36641
|
return !isStatementCondition(node) &&
|
|
36631
|
-
!isLogicalAssignmentExpression(node.parent) &&
|
|
36632
36642
|
!isLogicalExpression(node.parent) &&
|
|
36633
36643
|
!(ts.isOptionalChain(node.parent) && node.parent.expression === node);
|
|
36634
36644
|
}
|
|
@@ -38389,7 +38399,7 @@ var ts;
|
|
|
38389
38399
|
checkStrictModeEvalOrArguments(node, node.name);
|
|
38390
38400
|
}
|
|
38391
38401
|
if (!ts.isBindingPattern(node.name)) {
|
|
38392
|
-
if (ts.isInJSFile(node) && ts.isVariableDeclarationInitializedToBareOrAccessedRequire(node) && !ts.getJSDocTypeTag(node)) {
|
|
38402
|
+
if (ts.isInJSFile(node) && ts.isVariableDeclarationInitializedToBareOrAccessedRequire(node) && !ts.getJSDocTypeTag(node) && !(ts.getCombinedModifierFlags(node) & 1)) {
|
|
38393
38403
|
declareSymbolAndAddToSymbolTable(node, 2097152, 2097152);
|
|
38394
38404
|
}
|
|
38395
38405
|
else if (ts.isBlockOrCatchScoped(node)) {
|
|
@@ -48236,8 +48246,10 @@ var ts;
|
|
|
48236
48246
|
return type;
|
|
48237
48247
|
}
|
|
48238
48248
|
function isMappedTypeGenericIndexedAccess(type) {
|
|
48239
|
-
|
|
48240
|
-
|
|
48249
|
+
var objectType;
|
|
48250
|
+
return !!(type.flags & 8388608 && ts.getObjectFlags(objectType = type.objectType) & 32 &&
|
|
48251
|
+
!isGenericMappedType(objectType) && isGenericIndexType(type.indexType) &&
|
|
48252
|
+
!objectType.declaration.questionToken && !objectType.declaration.nameType);
|
|
48241
48253
|
}
|
|
48242
48254
|
function getApparentType(type) {
|
|
48243
48255
|
var t = !(type.flags & 465829888) ? type : getBaseConstraintOfType(type) || unknownType;
|
|
@@ -51069,7 +51081,7 @@ var ts;
|
|
|
51069
51081
|
return type[cache] = elementType;
|
|
51070
51082
|
}
|
|
51071
51083
|
}
|
|
51072
|
-
if (isGenericMappedType(objectType)) {
|
|
51084
|
+
if (isGenericMappedType(objectType) && !objectType.declaration.nameType) {
|
|
51073
51085
|
return type[cache] = mapType(substituteIndexedMappedType(objectType, type.indexType), function (t) { return getSimplifiedType(t, writing); });
|
|
51074
51086
|
}
|
|
51075
51087
|
return type[cache] = type;
|
|
@@ -52906,7 +52918,7 @@ var ts;
|
|
|
52906
52918
|
var targetReturnType = isResolvingReturnTypeOfSignature(target) ? anyType
|
|
52907
52919
|
: target.declaration && isJSConstructor(target.declaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(target.declaration.symbol))
|
|
52908
52920
|
: getReturnTypeOfSignature(target);
|
|
52909
|
-
if (targetReturnType === voidType) {
|
|
52921
|
+
if (targetReturnType === voidType || targetReturnType === anyType) {
|
|
52910
52922
|
return result;
|
|
52911
52923
|
}
|
|
52912
52924
|
var sourceReturnType = isResolvingReturnTypeOfSignature(source) ? anyType
|
|
@@ -59993,7 +60005,7 @@ var ts;
|
|
|
59993
60005
|
function getTypeOfPropertyOfContextualType(type, name, nameType) {
|
|
59994
60006
|
return mapType(type, function (t) {
|
|
59995
60007
|
var _a;
|
|
59996
|
-
if (isGenericMappedType(t)) {
|
|
60008
|
+
if (isGenericMappedType(t) && !t.declaration.nameType) {
|
|
59997
60009
|
var constraint = getConstraintTypeFromMappedType(t);
|
|
59998
60010
|
var constraintOfConstraint = getBaseConstraintOfType(constraint) || constraint;
|
|
59999
60011
|
var propertyNameType = nameType || getStringLiteralType(ts.unescapeLeadingUnderscores(name));
|
package/lib/tsserver.js
CHANGED
|
@@ -100,7 +100,7 @@ var ts;
|
|
|
100
100
|
// The following is baselined as a literal template type without intervention
|
|
101
101
|
/** The version of the TypeScript compiler release */
|
|
102
102
|
// eslint-disable-next-line @typescript-eslint/no-inferrable-types
|
|
103
|
-
ts.version = ts.versionMajorMinor + ".0-dev.
|
|
103
|
+
ts.version = ts.versionMajorMinor + ".0-dev.20220316";
|
|
104
104
|
/* @internal */
|
|
105
105
|
var Comparison;
|
|
106
106
|
(function (Comparison) {
|
|
@@ -8034,7 +8034,7 @@ var ts;
|
|
|
8034
8034
|
Identifier_expected: diag(1003, ts.DiagnosticCategory.Error, "Identifier_expected_1003", "Identifier expected."),
|
|
8035
8035
|
_0_expected: diag(1005, ts.DiagnosticCategory.Error, "_0_expected_1005", "'{0}' expected."),
|
|
8036
8036
|
A_file_cannot_have_a_reference_to_itself: diag(1006, ts.DiagnosticCategory.Error, "A_file_cannot_have_a_reference_to_itself_1006", "A file cannot have a reference to itself."),
|
|
8037
|
-
|
|
8037
|
+
The_parser_expected_to_find_a_1_to_match_the_0_token_here: diag(1007, ts.DiagnosticCategory.Error, "The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007", "The parser expected to find a '{1}' to match the '{0}' token here."),
|
|
8038
8038
|
Trailing_comma_not_allowed: diag(1009, ts.DiagnosticCategory.Error, "Trailing_comma_not_allowed_1009", "Trailing comma not allowed."),
|
|
8039
8039
|
Asterisk_Slash_expected: diag(1010, ts.DiagnosticCategory.Error, "Asterisk_Slash_expected_1010", "'*/' expected."),
|
|
8040
8040
|
An_element_access_expression_should_take_an_argument: diag(1011, ts.DiagnosticCategory.Error, "An_element_access_expression_should_take_an_argument_1011", "An element access expression should take an argument."),
|
|
@@ -31426,20 +31426,23 @@ var ts;
|
|
|
31426
31426
|
return inContext(32768 /* AwaitContext */);
|
|
31427
31427
|
}
|
|
31428
31428
|
function parseErrorAtCurrentToken(message, arg0) {
|
|
31429
|
-
parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
31429
|
+
return parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
31430
31430
|
}
|
|
31431
31431
|
function parseErrorAtPosition(start, length, message, arg0) {
|
|
31432
31432
|
// Don't report another error if it would just be at the same position as the last error.
|
|
31433
31433
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
31434
|
+
var result;
|
|
31434
31435
|
if (!lastError || start !== lastError.start) {
|
|
31435
|
-
|
|
31436
|
+
result = ts.createDetachedDiagnostic(fileName, start, length, message, arg0);
|
|
31437
|
+
parseDiagnostics.push(result);
|
|
31436
31438
|
}
|
|
31437
31439
|
// Mark that we've encountered an error. We'll set an appropriate bit on the next
|
|
31438
31440
|
// node we finish so that it can't be reused incrementally.
|
|
31439
31441
|
parseErrorBeforeNextFinishedNode = true;
|
|
31442
|
+
return result;
|
|
31440
31443
|
}
|
|
31441
31444
|
function parseErrorAt(start, end, message, arg0) {
|
|
31442
|
-
parseErrorAtPosition(start, end - start, message, arg0);
|
|
31445
|
+
return parseErrorAtPosition(start, end - start, message, arg0);
|
|
31443
31446
|
}
|
|
31444
31447
|
function parseErrorAtRange(range, message, arg0) {
|
|
31445
31448
|
parseErrorAt(range.pos, range.end, message, arg0);
|
|
@@ -31712,6 +31715,19 @@ var ts;
|
|
|
31712
31715
|
parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(kind));
|
|
31713
31716
|
return false;
|
|
31714
31717
|
}
|
|
31718
|
+
function parseExpectedMatchingBrackets(openKind, closeKind, openParsed, openPosition) {
|
|
31719
|
+
if (token() === closeKind) {
|
|
31720
|
+
nextToken();
|
|
31721
|
+
return;
|
|
31722
|
+
}
|
|
31723
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(closeKind));
|
|
31724
|
+
if (!openParsed) {
|
|
31725
|
+
return;
|
|
31726
|
+
}
|
|
31727
|
+
if (lastError) {
|
|
31728
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openPosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, ts.tokenToString(openKind), ts.tokenToString(closeKind)));
|
|
31729
|
+
}
|
|
31730
|
+
}
|
|
31715
31731
|
function parseOptional(t) {
|
|
31716
31732
|
if (token() === t) {
|
|
31717
31733
|
nextToken();
|
|
@@ -33360,7 +33376,7 @@ var ts;
|
|
|
33360
33376
|
if (!parseExpected(19 /* CloseBraceToken */)) {
|
|
33361
33377
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
33362
33378
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
33363
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
33379
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
33364
33380
|
}
|
|
33365
33381
|
}
|
|
33366
33382
|
return finishNode(factory.createImportTypeAssertionContainer(clause, multiLine), pos);
|
|
@@ -35170,10 +35186,11 @@ var ts;
|
|
|
35170
35186
|
}
|
|
35171
35187
|
function parseArrayLiteralExpression() {
|
|
35172
35188
|
var pos = getNodePos();
|
|
35173
|
-
|
|
35189
|
+
var openBracketPosition = scanner.getTokenPos();
|
|
35190
|
+
var openBracketParsed = parseExpected(22 /* OpenBracketToken */);
|
|
35174
35191
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35175
35192
|
var elements = parseDelimitedList(15 /* ArrayLiteralMembers */, parseArgumentOrArrayLiteralElement);
|
|
35176
|
-
|
|
35193
|
+
parseExpectedMatchingBrackets(22 /* OpenBracketToken */, 23 /* CloseBracketToken */, openBracketParsed, openBracketPosition);
|
|
35177
35194
|
return finishNode(factory.createArrayLiteralExpression(elements, multiLine), pos);
|
|
35178
35195
|
}
|
|
35179
35196
|
function parseObjectLiteralElement() {
|
|
@@ -35230,15 +35247,10 @@ var ts;
|
|
|
35230
35247
|
function parseObjectLiteralExpression() {
|
|
35231
35248
|
var pos = getNodePos();
|
|
35232
35249
|
var openBracePosition = scanner.getTokenPos();
|
|
35233
|
-
parseExpected(18 /* OpenBraceToken */);
|
|
35250
|
+
var openBraceParsed = parseExpected(18 /* OpenBraceToken */);
|
|
35234
35251
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35235
35252
|
var properties = parseDelimitedList(12 /* ObjectLiteralMembers */, parseObjectLiteralElement, /*considerSemicolonAsDelimiter*/ true);
|
|
35236
|
-
|
|
35237
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
35238
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
35239
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
35240
|
-
}
|
|
35241
|
-
}
|
|
35253
|
+
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
35242
35254
|
return finishNode(factory.createObjectLiteralExpression(properties, multiLine), pos);
|
|
35243
35255
|
}
|
|
35244
35256
|
function parseFunctionExpression() {
|
|
@@ -35294,15 +35306,11 @@ var ts;
|
|
|
35294
35306
|
var pos = getNodePos();
|
|
35295
35307
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35296
35308
|
var openBracePosition = scanner.getTokenPos();
|
|
35297
|
-
|
|
35309
|
+
var openBraceParsed = parseExpected(18 /* OpenBraceToken */, diagnosticMessage);
|
|
35310
|
+
if (openBraceParsed || ignoreMissingOpenBrace) {
|
|
35298
35311
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35299
35312
|
var statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
35300
|
-
|
|
35301
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
35302
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
35303
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
35304
|
-
}
|
|
35305
|
-
}
|
|
35313
|
+
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
35306
35314
|
var result = withJSDoc(finishNode(factory.createBlock(statements, multiLine), pos), hasJSDoc);
|
|
35307
35315
|
if (token() === 63 /* EqualsToken */) {
|
|
35308
35316
|
parseErrorAtCurrentToken(ts.Diagnostics.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_the_whole_assignment_in_parentheses);
|
|
@@ -35347,9 +35355,10 @@ var ts;
|
|
|
35347
35355
|
var pos = getNodePos();
|
|
35348
35356
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35349
35357
|
parseExpected(99 /* IfKeyword */);
|
|
35350
|
-
|
|
35358
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35359
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35351
35360
|
var expression = allowInAnd(parseExpression);
|
|
35352
|
-
|
|
35361
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35353
35362
|
var thenStatement = parseStatement();
|
|
35354
35363
|
var elseStatement = parseOptional(91 /* ElseKeyword */) ? parseStatement() : undefined;
|
|
35355
35364
|
return withJSDoc(finishNode(factory.createIfStatement(expression, thenStatement, elseStatement), pos), hasJSDoc);
|
|
@@ -35360,9 +35369,10 @@ var ts;
|
|
|
35360
35369
|
parseExpected(90 /* DoKeyword */);
|
|
35361
35370
|
var statement = parseStatement();
|
|
35362
35371
|
parseExpected(115 /* WhileKeyword */);
|
|
35363
|
-
|
|
35372
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35373
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35364
35374
|
var expression = allowInAnd(parseExpression);
|
|
35365
|
-
|
|
35375
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35366
35376
|
// From: https://mail.mozilla.org/pipermail/es-discuss/2011-August/016188.html
|
|
35367
35377
|
// 157 min --- All allen at wirfs-brock.com CONF --- "do{;}while(false)false" prohibited in
|
|
35368
35378
|
// spec but allowed in consensus reality. Approved -- this is the de-facto standard whereby
|
|
@@ -35374,9 +35384,10 @@ var ts;
|
|
|
35374
35384
|
var pos = getNodePos();
|
|
35375
35385
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35376
35386
|
parseExpected(115 /* WhileKeyword */);
|
|
35377
|
-
|
|
35387
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35388
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35378
35389
|
var expression = allowInAnd(parseExpression);
|
|
35379
|
-
|
|
35390
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35380
35391
|
var statement = parseStatement();
|
|
35381
35392
|
return withJSDoc(finishNode(factory.createWhileStatement(expression, statement), pos), hasJSDoc);
|
|
35382
35393
|
}
|
|
@@ -35443,9 +35454,10 @@ var ts;
|
|
|
35443
35454
|
var pos = getNodePos();
|
|
35444
35455
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35445
35456
|
parseExpected(116 /* WithKeyword */);
|
|
35446
|
-
|
|
35457
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35458
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35447
35459
|
var expression = allowInAnd(parseExpression);
|
|
35448
|
-
|
|
35460
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35449
35461
|
var statement = doInsideOfContext(16777216 /* InWithStatement */, parseStatement);
|
|
35450
35462
|
return withJSDoc(finishNode(factory.createWithStatement(expression, statement), pos), hasJSDoc);
|
|
35451
35463
|
}
|
|
@@ -36579,7 +36591,7 @@ var ts;
|
|
|
36579
36591
|
if (!parseExpected(19 /* CloseBraceToken */)) {
|
|
36580
36592
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
36581
36593
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
36582
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
36594
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
36583
36595
|
}
|
|
36584
36596
|
}
|
|
36585
36597
|
return finishNode(factory.createAssertClause(elements, multiLine), pos);
|
|
@@ -37555,8 +37567,7 @@ var ts;
|
|
|
37555
37567
|
hasChildren = true;
|
|
37556
37568
|
if (child.kind === 342 /* JSDocTypeTag */) {
|
|
37557
37569
|
if (childTypeTag) {
|
|
37558
|
-
parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
37559
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
37570
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
37560
37571
|
if (lastError) {
|
|
37561
37572
|
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, 0, 0, ts.Diagnostics.The_tag_was_first_specified_here));
|
|
37562
37573
|
}
|
|
@@ -44760,7 +44771,6 @@ var ts;
|
|
|
44760
44771
|
node = node.parent;
|
|
44761
44772
|
}
|
|
44762
44773
|
return !isStatementCondition(node) &&
|
|
44763
|
-
!isLogicalAssignmentExpression(node.parent) &&
|
|
44764
44774
|
!isLogicalExpression(node.parent) &&
|
|
44765
44775
|
!(ts.isOptionalChain(node.parent) && node.parent.expression === node);
|
|
44766
44776
|
}
|
|
@@ -46790,7 +46800,7 @@ var ts;
|
|
|
46790
46800
|
checkStrictModeEvalOrArguments(node, node.name);
|
|
46791
46801
|
}
|
|
46792
46802
|
if (!ts.isBindingPattern(node.name)) {
|
|
46793
|
-
if (ts.isInJSFile(node) && ts.isVariableDeclarationInitializedToBareOrAccessedRequire(node) && !ts.getJSDocTypeTag(node)) {
|
|
46803
|
+
if (ts.isInJSFile(node) && ts.isVariableDeclarationInitializedToBareOrAccessedRequire(node) && !ts.getJSDocTypeTag(node) && !(ts.getCombinedModifierFlags(node) & 1 /* Export */)) {
|
|
46794
46804
|
declareSymbolAndAddToSymbolTable(node, 2097152 /* Alias */, 2097152 /* AliasExcludes */);
|
|
46795
46805
|
}
|
|
46796
46806
|
else if (ts.isBlockOrCatchScoped(node)) {
|
|
@@ -58295,8 +58305,10 @@ var ts;
|
|
|
58295
58305
|
return type;
|
|
58296
58306
|
}
|
|
58297
58307
|
function isMappedTypeGenericIndexedAccess(type) {
|
|
58298
|
-
|
|
58299
|
-
|
|
58308
|
+
var objectType;
|
|
58309
|
+
return !!(type.flags & 8388608 /* IndexedAccess */ && ts.getObjectFlags(objectType = type.objectType) & 32 /* Mapped */ &&
|
|
58310
|
+
!isGenericMappedType(objectType) && isGenericIndexType(type.indexType) &&
|
|
58311
|
+
!objectType.declaration.questionToken && !objectType.declaration.nameType);
|
|
58300
58312
|
}
|
|
58301
58313
|
/**
|
|
58302
58314
|
* For a type parameter, return the base constraint of the type parameter. For the string, number,
|
|
@@ -61481,7 +61493,7 @@ var ts;
|
|
|
61481
61493
|
// If the object type is a mapped type { [P in K]: E }, where K is generic, instantiate E using a mapper
|
|
61482
61494
|
// that substitutes the index type for P. For example, for an index access { [P in K]: Box<T[P]> }[X], we
|
|
61483
61495
|
// construct the type Box<T[X]>.
|
|
61484
|
-
if (isGenericMappedType(objectType)) {
|
|
61496
|
+
if (isGenericMappedType(objectType) && !objectType.declaration.nameType) {
|
|
61485
61497
|
return type[cache] = mapType(substituteIndexedMappedType(objectType, type.indexType), function (t) { return getSimplifiedType(t, writing); });
|
|
61486
61498
|
}
|
|
61487
61499
|
return type[cache] = type;
|
|
@@ -63554,7 +63566,7 @@ var ts;
|
|
|
63554
63566
|
var targetReturnType = isResolvingReturnTypeOfSignature(target) ? anyType
|
|
63555
63567
|
: target.declaration && isJSConstructor(target.declaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(target.declaration.symbol))
|
|
63556
63568
|
: getReturnTypeOfSignature(target);
|
|
63557
|
-
if (targetReturnType === voidType) {
|
|
63569
|
+
if (targetReturnType === voidType || targetReturnType === anyType) {
|
|
63558
63570
|
return result;
|
|
63559
63571
|
}
|
|
63560
63572
|
var sourceReturnType = isResolvingReturnTypeOfSignature(source) ? anyType
|
|
@@ -71843,7 +71855,7 @@ var ts;
|
|
|
71843
71855
|
function getTypeOfPropertyOfContextualType(type, name, nameType) {
|
|
71844
71856
|
return mapType(type, function (t) {
|
|
71845
71857
|
var _a;
|
|
71846
|
-
if (isGenericMappedType(t)) {
|
|
71858
|
+
if (isGenericMappedType(t) && !t.declaration.nameType) {
|
|
71847
71859
|
var constraint = getConstraintTypeFromMappedType(t);
|
|
71848
71860
|
var constraintOfConstraint = getBaseConstraintOfType(constraint) || constraint;
|
|
71849
71861
|
var propertyNameType = nameType || getStringLiteralType(ts.unescapeLeadingUnderscores(name));
|
|
@@ -141058,6 +141070,41 @@ var ts;
|
|
|
141058
141070
|
if (ts.scanner.getToken() === 1 /* EndOfFileToken */) {
|
|
141059
141071
|
break;
|
|
141060
141072
|
}
|
|
141073
|
+
if (ts.scanner.getToken() === 15 /* TemplateHead */) {
|
|
141074
|
+
var stack = [ts.scanner.getToken()];
|
|
141075
|
+
var token = ts.scanner.scan();
|
|
141076
|
+
loop: while (ts.length(stack)) {
|
|
141077
|
+
switch (token) {
|
|
141078
|
+
case 1 /* EndOfFileToken */:
|
|
141079
|
+
break loop;
|
|
141080
|
+
case 100 /* ImportKeyword */:
|
|
141081
|
+
tryConsumeImport();
|
|
141082
|
+
break;
|
|
141083
|
+
case 15 /* TemplateHead */:
|
|
141084
|
+
stack.push(token);
|
|
141085
|
+
break;
|
|
141086
|
+
case 18 /* OpenBraceToken */:
|
|
141087
|
+
if (ts.length(stack)) {
|
|
141088
|
+
stack.push(token);
|
|
141089
|
+
}
|
|
141090
|
+
break;
|
|
141091
|
+
case 19 /* CloseBraceToken */:
|
|
141092
|
+
if (ts.length(stack)) {
|
|
141093
|
+
if (ts.lastOrUndefined(stack) === 15 /* TemplateHead */) {
|
|
141094
|
+
if (ts.scanner.reScanTemplateToken(/* isTaggedTemplate */ false) === 17 /* TemplateTail */) {
|
|
141095
|
+
stack.pop();
|
|
141096
|
+
}
|
|
141097
|
+
}
|
|
141098
|
+
else {
|
|
141099
|
+
stack.pop();
|
|
141100
|
+
}
|
|
141101
|
+
}
|
|
141102
|
+
break;
|
|
141103
|
+
}
|
|
141104
|
+
token = ts.scanner.scan();
|
|
141105
|
+
}
|
|
141106
|
+
nextToken();
|
|
141107
|
+
}
|
|
141061
141108
|
// check if at least one of alternative have moved scanner forward
|
|
141062
141109
|
if (tryConsumeDeclare() ||
|
|
141063
141110
|
tryConsumeImport() ||
|