typescript 4.7.0-dev.20220315 → 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/tsc.js +51 -38
- package/lib/tsserver.js +86 -38
- package/lib/tsserverlibrary.js +86 -38
- package/lib/typescript.js +86 -38
- package/lib/typescriptServices.js +86 -38
- package/lib/typingsInstaller.js +51 -38
- package/package.json +1 -1
|
@@ -294,7 +294,7 @@ var ts;
|
|
|
294
294
|
// The following is baselined as a literal template type without intervention
|
|
295
295
|
/** The version of the TypeScript compiler release */
|
|
296
296
|
// eslint-disable-next-line @typescript-eslint/no-inferrable-types
|
|
297
|
-
ts.version = ts.versionMajorMinor + ".0-dev.
|
|
297
|
+
ts.version = ts.versionMajorMinor + ".0-dev.20220316";
|
|
298
298
|
/* @internal */
|
|
299
299
|
var Comparison;
|
|
300
300
|
(function (Comparison) {
|
|
@@ -8228,7 +8228,7 @@ var ts;
|
|
|
8228
8228
|
Identifier_expected: diag(1003, ts.DiagnosticCategory.Error, "Identifier_expected_1003", "Identifier expected."),
|
|
8229
8229
|
_0_expected: diag(1005, ts.DiagnosticCategory.Error, "_0_expected_1005", "'{0}' expected."),
|
|
8230
8230
|
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."),
|
|
8231
|
-
|
|
8231
|
+
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."),
|
|
8232
8232
|
Trailing_comma_not_allowed: diag(1009, ts.DiagnosticCategory.Error, "Trailing_comma_not_allowed_1009", "Trailing comma not allowed."),
|
|
8233
8233
|
Asterisk_Slash_expected: diag(1010, ts.DiagnosticCategory.Error, "Asterisk_Slash_expected_1010", "'*/' expected."),
|
|
8234
8234
|
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."),
|
|
@@ -31620,20 +31620,23 @@ var ts;
|
|
|
31620
31620
|
return inContext(32768 /* AwaitContext */);
|
|
31621
31621
|
}
|
|
31622
31622
|
function parseErrorAtCurrentToken(message, arg0) {
|
|
31623
|
-
parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
31623
|
+
return parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
31624
31624
|
}
|
|
31625
31625
|
function parseErrorAtPosition(start, length, message, arg0) {
|
|
31626
31626
|
// Don't report another error if it would just be at the same position as the last error.
|
|
31627
31627
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
31628
|
+
var result;
|
|
31628
31629
|
if (!lastError || start !== lastError.start) {
|
|
31629
|
-
|
|
31630
|
+
result = ts.createDetachedDiagnostic(fileName, start, length, message, arg0);
|
|
31631
|
+
parseDiagnostics.push(result);
|
|
31630
31632
|
}
|
|
31631
31633
|
// Mark that we've encountered an error. We'll set an appropriate bit on the next
|
|
31632
31634
|
// node we finish so that it can't be reused incrementally.
|
|
31633
31635
|
parseErrorBeforeNextFinishedNode = true;
|
|
31636
|
+
return result;
|
|
31634
31637
|
}
|
|
31635
31638
|
function parseErrorAt(start, end, message, arg0) {
|
|
31636
|
-
parseErrorAtPosition(start, end - start, message, arg0);
|
|
31639
|
+
return parseErrorAtPosition(start, end - start, message, arg0);
|
|
31637
31640
|
}
|
|
31638
31641
|
function parseErrorAtRange(range, message, arg0) {
|
|
31639
31642
|
parseErrorAt(range.pos, range.end, message, arg0);
|
|
@@ -31906,6 +31909,19 @@ var ts;
|
|
|
31906
31909
|
parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(kind));
|
|
31907
31910
|
return false;
|
|
31908
31911
|
}
|
|
31912
|
+
function parseExpectedMatchingBrackets(openKind, closeKind, openParsed, openPosition) {
|
|
31913
|
+
if (token() === closeKind) {
|
|
31914
|
+
nextToken();
|
|
31915
|
+
return;
|
|
31916
|
+
}
|
|
31917
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(closeKind));
|
|
31918
|
+
if (!openParsed) {
|
|
31919
|
+
return;
|
|
31920
|
+
}
|
|
31921
|
+
if (lastError) {
|
|
31922
|
+
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)));
|
|
31923
|
+
}
|
|
31924
|
+
}
|
|
31909
31925
|
function parseOptional(t) {
|
|
31910
31926
|
if (token() === t) {
|
|
31911
31927
|
nextToken();
|
|
@@ -33554,7 +33570,7 @@ var ts;
|
|
|
33554
33570
|
if (!parseExpected(19 /* CloseBraceToken */)) {
|
|
33555
33571
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
33556
33572
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
33557
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
33573
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
33558
33574
|
}
|
|
33559
33575
|
}
|
|
33560
33576
|
return finishNode(factory.createImportTypeAssertionContainer(clause, multiLine), pos);
|
|
@@ -35364,10 +35380,11 @@ var ts;
|
|
|
35364
35380
|
}
|
|
35365
35381
|
function parseArrayLiteralExpression() {
|
|
35366
35382
|
var pos = getNodePos();
|
|
35367
|
-
|
|
35383
|
+
var openBracketPosition = scanner.getTokenPos();
|
|
35384
|
+
var openBracketParsed = parseExpected(22 /* OpenBracketToken */);
|
|
35368
35385
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35369
35386
|
var elements = parseDelimitedList(15 /* ArrayLiteralMembers */, parseArgumentOrArrayLiteralElement);
|
|
35370
|
-
|
|
35387
|
+
parseExpectedMatchingBrackets(22 /* OpenBracketToken */, 23 /* CloseBracketToken */, openBracketParsed, openBracketPosition);
|
|
35371
35388
|
return finishNode(factory.createArrayLiteralExpression(elements, multiLine), pos);
|
|
35372
35389
|
}
|
|
35373
35390
|
function parseObjectLiteralElement() {
|
|
@@ -35424,15 +35441,10 @@ var ts;
|
|
|
35424
35441
|
function parseObjectLiteralExpression() {
|
|
35425
35442
|
var pos = getNodePos();
|
|
35426
35443
|
var openBracePosition = scanner.getTokenPos();
|
|
35427
|
-
parseExpected(18 /* OpenBraceToken */);
|
|
35444
|
+
var openBraceParsed = parseExpected(18 /* OpenBraceToken */);
|
|
35428
35445
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35429
35446
|
var properties = parseDelimitedList(12 /* ObjectLiteralMembers */, parseObjectLiteralElement, /*considerSemicolonAsDelimiter*/ true);
|
|
35430
|
-
|
|
35431
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
35432
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
35433
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
35434
|
-
}
|
|
35435
|
-
}
|
|
35447
|
+
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
35436
35448
|
return finishNode(factory.createObjectLiteralExpression(properties, multiLine), pos);
|
|
35437
35449
|
}
|
|
35438
35450
|
function parseFunctionExpression() {
|
|
@@ -35488,15 +35500,11 @@ var ts;
|
|
|
35488
35500
|
var pos = getNodePos();
|
|
35489
35501
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35490
35502
|
var openBracePosition = scanner.getTokenPos();
|
|
35491
|
-
|
|
35503
|
+
var openBraceParsed = parseExpected(18 /* OpenBraceToken */, diagnosticMessage);
|
|
35504
|
+
if (openBraceParsed || ignoreMissingOpenBrace) {
|
|
35492
35505
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35493
35506
|
var statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
35494
|
-
|
|
35495
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
35496
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
35497
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
35498
|
-
}
|
|
35499
|
-
}
|
|
35507
|
+
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
35500
35508
|
var result = withJSDoc(finishNode(factory.createBlock(statements, multiLine), pos), hasJSDoc);
|
|
35501
35509
|
if (token() === 63 /* EqualsToken */) {
|
|
35502
35510
|
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);
|
|
@@ -35541,9 +35549,10 @@ var ts;
|
|
|
35541
35549
|
var pos = getNodePos();
|
|
35542
35550
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35543
35551
|
parseExpected(99 /* IfKeyword */);
|
|
35544
|
-
|
|
35552
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35553
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35545
35554
|
var expression = allowInAnd(parseExpression);
|
|
35546
|
-
|
|
35555
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35547
35556
|
var thenStatement = parseStatement();
|
|
35548
35557
|
var elseStatement = parseOptional(91 /* ElseKeyword */) ? parseStatement() : undefined;
|
|
35549
35558
|
return withJSDoc(finishNode(factory.createIfStatement(expression, thenStatement, elseStatement), pos), hasJSDoc);
|
|
@@ -35554,9 +35563,10 @@ var ts;
|
|
|
35554
35563
|
parseExpected(90 /* DoKeyword */);
|
|
35555
35564
|
var statement = parseStatement();
|
|
35556
35565
|
parseExpected(115 /* WhileKeyword */);
|
|
35557
|
-
|
|
35566
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35567
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35558
35568
|
var expression = allowInAnd(parseExpression);
|
|
35559
|
-
|
|
35569
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35560
35570
|
// From: https://mail.mozilla.org/pipermail/es-discuss/2011-August/016188.html
|
|
35561
35571
|
// 157 min --- All allen at wirfs-brock.com CONF --- "do{;}while(false)false" prohibited in
|
|
35562
35572
|
// spec but allowed in consensus reality. Approved -- this is the de-facto standard whereby
|
|
@@ -35568,9 +35578,10 @@ var ts;
|
|
|
35568
35578
|
var pos = getNodePos();
|
|
35569
35579
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35570
35580
|
parseExpected(115 /* WhileKeyword */);
|
|
35571
|
-
|
|
35581
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35582
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35572
35583
|
var expression = allowInAnd(parseExpression);
|
|
35573
|
-
|
|
35584
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35574
35585
|
var statement = parseStatement();
|
|
35575
35586
|
return withJSDoc(finishNode(factory.createWhileStatement(expression, statement), pos), hasJSDoc);
|
|
35576
35587
|
}
|
|
@@ -35637,9 +35648,10 @@ var ts;
|
|
|
35637
35648
|
var pos = getNodePos();
|
|
35638
35649
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35639
35650
|
parseExpected(116 /* WithKeyword */);
|
|
35640
|
-
|
|
35651
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35652
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35641
35653
|
var expression = allowInAnd(parseExpression);
|
|
35642
|
-
|
|
35654
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35643
35655
|
var statement = doInsideOfContext(16777216 /* InWithStatement */, parseStatement);
|
|
35644
35656
|
return withJSDoc(finishNode(factory.createWithStatement(expression, statement), pos), hasJSDoc);
|
|
35645
35657
|
}
|
|
@@ -36773,7 +36785,7 @@ var ts;
|
|
|
36773
36785
|
if (!parseExpected(19 /* CloseBraceToken */)) {
|
|
36774
36786
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
36775
36787
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
36776
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
36788
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
36777
36789
|
}
|
|
36778
36790
|
}
|
|
36779
36791
|
return finishNode(factory.createAssertClause(elements, multiLine), pos);
|
|
@@ -37749,8 +37761,7 @@ var ts;
|
|
|
37749
37761
|
hasChildren = true;
|
|
37750
37762
|
if (child.kind === 342 /* JSDocTypeTag */) {
|
|
37751
37763
|
if (childTypeTag) {
|
|
37752
|
-
parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
37753
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
37764
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
37754
37765
|
if (lastError) {
|
|
37755
37766
|
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, 0, 0, ts.Diagnostics.The_tag_was_first_specified_here));
|
|
37756
37767
|
}
|
|
@@ -58488,8 +58499,10 @@ var ts;
|
|
|
58488
58499
|
return type;
|
|
58489
58500
|
}
|
|
58490
58501
|
function isMappedTypeGenericIndexedAccess(type) {
|
|
58491
|
-
|
|
58492
|
-
|
|
58502
|
+
var objectType;
|
|
58503
|
+
return !!(type.flags & 8388608 /* IndexedAccess */ && ts.getObjectFlags(objectType = type.objectType) & 32 /* Mapped */ &&
|
|
58504
|
+
!isGenericMappedType(objectType) && isGenericIndexType(type.indexType) &&
|
|
58505
|
+
!objectType.declaration.questionToken && !objectType.declaration.nameType);
|
|
58493
58506
|
}
|
|
58494
58507
|
/**
|
|
58495
58508
|
* For a type parameter, return the base constraint of the type parameter. For the string, number,
|
|
@@ -61674,7 +61687,7 @@ var ts;
|
|
|
61674
61687
|
// If the object type is a mapped type { [P in K]: E }, where K is generic, instantiate E using a mapper
|
|
61675
61688
|
// that substitutes the index type for P. For example, for an index access { [P in K]: Box<T[P]> }[X], we
|
|
61676
61689
|
// construct the type Box<T[X]>.
|
|
61677
|
-
if (isGenericMappedType(objectType)) {
|
|
61690
|
+
if (isGenericMappedType(objectType) && !objectType.declaration.nameType) {
|
|
61678
61691
|
return type[cache] = mapType(substituteIndexedMappedType(objectType, type.indexType), function (t) { return getSimplifiedType(t, writing); });
|
|
61679
61692
|
}
|
|
61680
61693
|
return type[cache] = type;
|
|
@@ -63747,7 +63760,7 @@ var ts;
|
|
|
63747
63760
|
var targetReturnType = isResolvingReturnTypeOfSignature(target) ? anyType
|
|
63748
63761
|
: target.declaration && isJSConstructor(target.declaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(target.declaration.symbol))
|
|
63749
63762
|
: getReturnTypeOfSignature(target);
|
|
63750
|
-
if (targetReturnType === voidType) {
|
|
63763
|
+
if (targetReturnType === voidType || targetReturnType === anyType) {
|
|
63751
63764
|
return result;
|
|
63752
63765
|
}
|
|
63753
63766
|
var sourceReturnType = isResolvingReturnTypeOfSignature(source) ? anyType
|
|
@@ -72036,7 +72049,7 @@ var ts;
|
|
|
72036
72049
|
function getTypeOfPropertyOfContextualType(type, name, nameType) {
|
|
72037
72050
|
return mapType(type, function (t) {
|
|
72038
72051
|
var _a;
|
|
72039
|
-
if (isGenericMappedType(t)) {
|
|
72052
|
+
if (isGenericMappedType(t) && !t.declaration.nameType) {
|
|
72040
72053
|
var constraint = getConstraintTypeFromMappedType(t);
|
|
72041
72054
|
var constraintOfConstraint = getBaseConstraintOfType(constraint) || constraint;
|
|
72042
72055
|
var propertyNameType = nameType || getStringLiteralType(ts.unescapeLeadingUnderscores(name));
|
|
@@ -141668,6 +141681,41 @@ var ts;
|
|
|
141668
141681
|
if (ts.scanner.getToken() === 1 /* EndOfFileToken */) {
|
|
141669
141682
|
break;
|
|
141670
141683
|
}
|
|
141684
|
+
if (ts.scanner.getToken() === 15 /* TemplateHead */) {
|
|
141685
|
+
var stack = [ts.scanner.getToken()];
|
|
141686
|
+
var token = ts.scanner.scan();
|
|
141687
|
+
loop: while (ts.length(stack)) {
|
|
141688
|
+
switch (token) {
|
|
141689
|
+
case 1 /* EndOfFileToken */:
|
|
141690
|
+
break loop;
|
|
141691
|
+
case 100 /* ImportKeyword */:
|
|
141692
|
+
tryConsumeImport();
|
|
141693
|
+
break;
|
|
141694
|
+
case 15 /* TemplateHead */:
|
|
141695
|
+
stack.push(token);
|
|
141696
|
+
break;
|
|
141697
|
+
case 18 /* OpenBraceToken */:
|
|
141698
|
+
if (ts.length(stack)) {
|
|
141699
|
+
stack.push(token);
|
|
141700
|
+
}
|
|
141701
|
+
break;
|
|
141702
|
+
case 19 /* CloseBraceToken */:
|
|
141703
|
+
if (ts.length(stack)) {
|
|
141704
|
+
if (ts.lastOrUndefined(stack) === 15 /* TemplateHead */) {
|
|
141705
|
+
if (ts.scanner.reScanTemplateToken(/* isTaggedTemplate */ false) === 17 /* TemplateTail */) {
|
|
141706
|
+
stack.pop();
|
|
141707
|
+
}
|
|
141708
|
+
}
|
|
141709
|
+
else {
|
|
141710
|
+
stack.pop();
|
|
141711
|
+
}
|
|
141712
|
+
}
|
|
141713
|
+
break;
|
|
141714
|
+
}
|
|
141715
|
+
token = ts.scanner.scan();
|
|
141716
|
+
}
|
|
141717
|
+
nextToken();
|
|
141718
|
+
}
|
|
141671
141719
|
// check if at least one of alternative have moved scanner forward
|
|
141672
141720
|
if (tryConsumeDeclare() ||
|
|
141673
141721
|
tryConsumeImport() ||
|
package/lib/typingsInstaller.js
CHANGED
|
@@ -89,7 +89,7 @@ var ts;
|
|
|
89
89
|
// The following is baselined as a literal template type without intervention
|
|
90
90
|
/** The version of the TypeScript compiler release */
|
|
91
91
|
// eslint-disable-next-line @typescript-eslint/no-inferrable-types
|
|
92
|
-
ts.version = ts.versionMajorMinor + ".0-dev.
|
|
92
|
+
ts.version = ts.versionMajorMinor + ".0-dev.20220316";
|
|
93
93
|
/* @internal */
|
|
94
94
|
var Comparison;
|
|
95
95
|
(function (Comparison) {
|
|
@@ -8023,7 +8023,7 @@ var ts;
|
|
|
8023
8023
|
Identifier_expected: diag(1003, ts.DiagnosticCategory.Error, "Identifier_expected_1003", "Identifier expected."),
|
|
8024
8024
|
_0_expected: diag(1005, ts.DiagnosticCategory.Error, "_0_expected_1005", "'{0}' expected."),
|
|
8025
8025
|
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."),
|
|
8026
|
-
|
|
8026
|
+
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."),
|
|
8027
8027
|
Trailing_comma_not_allowed: diag(1009, ts.DiagnosticCategory.Error, "Trailing_comma_not_allowed_1009", "Trailing comma not allowed."),
|
|
8028
8028
|
Asterisk_Slash_expected: diag(1010, ts.DiagnosticCategory.Error, "Asterisk_Slash_expected_1010", "'*/' expected."),
|
|
8029
8029
|
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."),
|
|
@@ -31415,20 +31415,23 @@ var ts;
|
|
|
31415
31415
|
return inContext(32768 /* AwaitContext */);
|
|
31416
31416
|
}
|
|
31417
31417
|
function parseErrorAtCurrentToken(message, arg0) {
|
|
31418
|
-
parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
31418
|
+
return parseErrorAt(scanner.getTokenPos(), scanner.getTextPos(), message, arg0);
|
|
31419
31419
|
}
|
|
31420
31420
|
function parseErrorAtPosition(start, length, message, arg0) {
|
|
31421
31421
|
// Don't report another error if it would just be at the same position as the last error.
|
|
31422
31422
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
31423
|
+
var result;
|
|
31423
31424
|
if (!lastError || start !== lastError.start) {
|
|
31424
|
-
|
|
31425
|
+
result = ts.createDetachedDiagnostic(fileName, start, length, message, arg0);
|
|
31426
|
+
parseDiagnostics.push(result);
|
|
31425
31427
|
}
|
|
31426
31428
|
// Mark that we've encountered an error. We'll set an appropriate bit on the next
|
|
31427
31429
|
// node we finish so that it can't be reused incrementally.
|
|
31428
31430
|
parseErrorBeforeNextFinishedNode = true;
|
|
31431
|
+
return result;
|
|
31429
31432
|
}
|
|
31430
31433
|
function parseErrorAt(start, end, message, arg0) {
|
|
31431
|
-
parseErrorAtPosition(start, end - start, message, arg0);
|
|
31434
|
+
return parseErrorAtPosition(start, end - start, message, arg0);
|
|
31432
31435
|
}
|
|
31433
31436
|
function parseErrorAtRange(range, message, arg0) {
|
|
31434
31437
|
parseErrorAt(range.pos, range.end, message, arg0);
|
|
@@ -31701,6 +31704,19 @@ var ts;
|
|
|
31701
31704
|
parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(kind));
|
|
31702
31705
|
return false;
|
|
31703
31706
|
}
|
|
31707
|
+
function parseExpectedMatchingBrackets(openKind, closeKind, openParsed, openPosition) {
|
|
31708
|
+
if (token() === closeKind) {
|
|
31709
|
+
nextToken();
|
|
31710
|
+
return;
|
|
31711
|
+
}
|
|
31712
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics._0_expected, ts.tokenToString(closeKind));
|
|
31713
|
+
if (!openParsed) {
|
|
31714
|
+
return;
|
|
31715
|
+
}
|
|
31716
|
+
if (lastError) {
|
|
31717
|
+
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)));
|
|
31718
|
+
}
|
|
31719
|
+
}
|
|
31704
31720
|
function parseOptional(t) {
|
|
31705
31721
|
if (token() === t) {
|
|
31706
31722
|
nextToken();
|
|
@@ -33349,7 +33365,7 @@ var ts;
|
|
|
33349
33365
|
if (!parseExpected(19 /* CloseBraceToken */)) {
|
|
33350
33366
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
33351
33367
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
33352
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
33368
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
33353
33369
|
}
|
|
33354
33370
|
}
|
|
33355
33371
|
return finishNode(factory.createImportTypeAssertionContainer(clause, multiLine), pos);
|
|
@@ -35159,10 +35175,11 @@ var ts;
|
|
|
35159
35175
|
}
|
|
35160
35176
|
function parseArrayLiteralExpression() {
|
|
35161
35177
|
var pos = getNodePos();
|
|
35162
|
-
|
|
35178
|
+
var openBracketPosition = scanner.getTokenPos();
|
|
35179
|
+
var openBracketParsed = parseExpected(22 /* OpenBracketToken */);
|
|
35163
35180
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35164
35181
|
var elements = parseDelimitedList(15 /* ArrayLiteralMembers */, parseArgumentOrArrayLiteralElement);
|
|
35165
|
-
|
|
35182
|
+
parseExpectedMatchingBrackets(22 /* OpenBracketToken */, 23 /* CloseBracketToken */, openBracketParsed, openBracketPosition);
|
|
35166
35183
|
return finishNode(factory.createArrayLiteralExpression(elements, multiLine), pos);
|
|
35167
35184
|
}
|
|
35168
35185
|
function parseObjectLiteralElement() {
|
|
@@ -35219,15 +35236,10 @@ var ts;
|
|
|
35219
35236
|
function parseObjectLiteralExpression() {
|
|
35220
35237
|
var pos = getNodePos();
|
|
35221
35238
|
var openBracePosition = scanner.getTokenPos();
|
|
35222
|
-
parseExpected(18 /* OpenBraceToken */);
|
|
35239
|
+
var openBraceParsed = parseExpected(18 /* OpenBraceToken */);
|
|
35223
35240
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35224
35241
|
var properties = parseDelimitedList(12 /* ObjectLiteralMembers */, parseObjectLiteralElement, /*considerSemicolonAsDelimiter*/ true);
|
|
35225
|
-
|
|
35226
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
35227
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
35228
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
35229
|
-
}
|
|
35230
|
-
}
|
|
35242
|
+
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
35231
35243
|
return finishNode(factory.createObjectLiteralExpression(properties, multiLine), pos);
|
|
35232
35244
|
}
|
|
35233
35245
|
function parseFunctionExpression() {
|
|
@@ -35283,15 +35295,11 @@ var ts;
|
|
|
35283
35295
|
var pos = getNodePos();
|
|
35284
35296
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35285
35297
|
var openBracePosition = scanner.getTokenPos();
|
|
35286
|
-
|
|
35298
|
+
var openBraceParsed = parseExpected(18 /* OpenBraceToken */, diagnosticMessage);
|
|
35299
|
+
if (openBraceParsed || ignoreMissingOpenBrace) {
|
|
35287
35300
|
var multiLine = scanner.hasPrecedingLineBreak();
|
|
35288
35301
|
var statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
35289
|
-
|
|
35290
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
35291
|
-
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
35292
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here));
|
|
35293
|
-
}
|
|
35294
|
-
}
|
|
35302
|
+
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
35295
35303
|
var result = withJSDoc(finishNode(factory.createBlock(statements, multiLine), pos), hasJSDoc);
|
|
35296
35304
|
if (token() === 63 /* EqualsToken */) {
|
|
35297
35305
|
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);
|
|
@@ -35336,9 +35344,10 @@ var ts;
|
|
|
35336
35344
|
var pos = getNodePos();
|
|
35337
35345
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35338
35346
|
parseExpected(99 /* IfKeyword */);
|
|
35339
|
-
|
|
35347
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35348
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35340
35349
|
var expression = allowInAnd(parseExpression);
|
|
35341
|
-
|
|
35350
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35342
35351
|
var thenStatement = parseStatement();
|
|
35343
35352
|
var elseStatement = parseOptional(91 /* ElseKeyword */) ? parseStatement() : undefined;
|
|
35344
35353
|
return withJSDoc(finishNode(factory.createIfStatement(expression, thenStatement, elseStatement), pos), hasJSDoc);
|
|
@@ -35349,9 +35358,10 @@ var ts;
|
|
|
35349
35358
|
parseExpected(90 /* DoKeyword */);
|
|
35350
35359
|
var statement = parseStatement();
|
|
35351
35360
|
parseExpected(115 /* WhileKeyword */);
|
|
35352
|
-
|
|
35361
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35362
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35353
35363
|
var expression = allowInAnd(parseExpression);
|
|
35354
|
-
|
|
35364
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35355
35365
|
// From: https://mail.mozilla.org/pipermail/es-discuss/2011-August/016188.html
|
|
35356
35366
|
// 157 min --- All allen at wirfs-brock.com CONF --- "do{;}while(false)false" prohibited in
|
|
35357
35367
|
// spec but allowed in consensus reality. Approved -- this is the de-facto standard whereby
|
|
@@ -35363,9 +35373,10 @@ var ts;
|
|
|
35363
35373
|
var pos = getNodePos();
|
|
35364
35374
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35365
35375
|
parseExpected(115 /* WhileKeyword */);
|
|
35366
|
-
|
|
35376
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35377
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35367
35378
|
var expression = allowInAnd(parseExpression);
|
|
35368
|
-
|
|
35379
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35369
35380
|
var statement = parseStatement();
|
|
35370
35381
|
return withJSDoc(finishNode(factory.createWhileStatement(expression, statement), pos), hasJSDoc);
|
|
35371
35382
|
}
|
|
@@ -35432,9 +35443,10 @@ var ts;
|
|
|
35432
35443
|
var pos = getNodePos();
|
|
35433
35444
|
var hasJSDoc = hasPrecedingJSDocComment();
|
|
35434
35445
|
parseExpected(116 /* WithKeyword */);
|
|
35435
|
-
|
|
35446
|
+
var openParenPosition = scanner.getTokenPos();
|
|
35447
|
+
var openParenParsed = parseExpected(20 /* OpenParenToken */);
|
|
35436
35448
|
var expression = allowInAnd(parseExpression);
|
|
35437
|
-
|
|
35449
|
+
parseExpectedMatchingBrackets(20 /* OpenParenToken */, 21 /* CloseParenToken */, openParenParsed, openParenPosition);
|
|
35438
35450
|
var statement = doInsideOfContext(16777216 /* InWithStatement */, parseStatement);
|
|
35439
35451
|
return withJSDoc(finishNode(factory.createWithStatement(expression, statement), pos), hasJSDoc);
|
|
35440
35452
|
}
|
|
@@ -36568,7 +36580,7 @@ var ts;
|
|
|
36568
36580
|
if (!parseExpected(19 /* CloseBraceToken */)) {
|
|
36569
36581
|
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
36570
36582
|
if (lastError && lastError.code === ts.Diagnostics._0_expected.code) {
|
|
36571
|
-
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.
|
|
36583
|
+
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, openBracePosition, 1, ts.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
|
|
36572
36584
|
}
|
|
36573
36585
|
}
|
|
36574
36586
|
return finishNode(factory.createAssertClause(elements, multiLine), pos);
|
|
@@ -37544,8 +37556,7 @@ var ts;
|
|
|
37544
37556
|
hasChildren = true;
|
|
37545
37557
|
if (child.kind === 342 /* JSDocTypeTag */) {
|
|
37546
37558
|
if (childTypeTag) {
|
|
37547
|
-
parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
37548
|
-
var lastError = ts.lastOrUndefined(parseDiagnostics);
|
|
37559
|
+
var lastError = parseErrorAtCurrentToken(ts.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
|
|
37549
37560
|
if (lastError) {
|
|
37550
37561
|
ts.addRelatedInfo(lastError, ts.createDetachedDiagnostic(fileName, 0, 0, ts.Diagnostics.The_tag_was_first_specified_here));
|
|
37551
37562
|
}
|
|
@@ -58283,8 +58294,10 @@ var ts;
|
|
|
58283
58294
|
return type;
|
|
58284
58295
|
}
|
|
58285
58296
|
function isMappedTypeGenericIndexedAccess(type) {
|
|
58286
|
-
|
|
58287
|
-
|
|
58297
|
+
var objectType;
|
|
58298
|
+
return !!(type.flags & 8388608 /* IndexedAccess */ && ts.getObjectFlags(objectType = type.objectType) & 32 /* Mapped */ &&
|
|
58299
|
+
!isGenericMappedType(objectType) && isGenericIndexType(type.indexType) &&
|
|
58300
|
+
!objectType.declaration.questionToken && !objectType.declaration.nameType);
|
|
58288
58301
|
}
|
|
58289
58302
|
/**
|
|
58290
58303
|
* For a type parameter, return the base constraint of the type parameter. For the string, number,
|
|
@@ -61469,7 +61482,7 @@ var ts;
|
|
|
61469
61482
|
// If the object type is a mapped type { [P in K]: E }, where K is generic, instantiate E using a mapper
|
|
61470
61483
|
// that substitutes the index type for P. For example, for an index access { [P in K]: Box<T[P]> }[X], we
|
|
61471
61484
|
// construct the type Box<T[X]>.
|
|
61472
|
-
if (isGenericMappedType(objectType)) {
|
|
61485
|
+
if (isGenericMappedType(objectType) && !objectType.declaration.nameType) {
|
|
61473
61486
|
return type[cache] = mapType(substituteIndexedMappedType(objectType, type.indexType), function (t) { return getSimplifiedType(t, writing); });
|
|
61474
61487
|
}
|
|
61475
61488
|
return type[cache] = type;
|
|
@@ -63542,7 +63555,7 @@ var ts;
|
|
|
63542
63555
|
var targetReturnType = isResolvingReturnTypeOfSignature(target) ? anyType
|
|
63543
63556
|
: target.declaration && isJSConstructor(target.declaration) ? getDeclaredTypeOfClassOrInterface(getMergedSymbol(target.declaration.symbol))
|
|
63544
63557
|
: getReturnTypeOfSignature(target);
|
|
63545
|
-
if (targetReturnType === voidType) {
|
|
63558
|
+
if (targetReturnType === voidType || targetReturnType === anyType) {
|
|
63546
63559
|
return result;
|
|
63547
63560
|
}
|
|
63548
63561
|
var sourceReturnType = isResolvingReturnTypeOfSignature(source) ? anyType
|
|
@@ -71831,7 +71844,7 @@ var ts;
|
|
|
71831
71844
|
function getTypeOfPropertyOfContextualType(type, name, nameType) {
|
|
71832
71845
|
return mapType(type, function (t) {
|
|
71833
71846
|
var _a;
|
|
71834
|
-
if (isGenericMappedType(t)) {
|
|
71847
|
+
if (isGenericMappedType(t) && !t.declaration.nameType) {
|
|
71835
71848
|
var constraint = getConstraintTypeFromMappedType(t);
|
|
71836
71849
|
var constraintOfConstraint = getBaseConstraintOfType(constraint) || constraint;
|
|
71837
71850
|
var propertyNameType = nameType || getStringLiteralType(ts.unescapeLeadingUnderscores(name));
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "typescript",
|
|
3
3
|
"author": "Microsoft Corp.",
|
|
4
4
|
"homepage": "https://www.typescriptlang.org/",
|
|
5
|
-
"version": "4.7.0-dev.
|
|
5
|
+
"version": "4.7.0-dev.20220316",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"description": "TypeScript is a language for application scale JavaScript development",
|
|
8
8
|
"keywords": [
|