@typescript-deploys/pr-build 5.0.0-pr-52240-9 → 5.0.0-pr-52280-2
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 +198 -118
- package/lib/tsserver.js +244 -136
- package/lib/tsserverlibrary.d.ts +19 -10
- package/lib/tsserverlibrary.js +237 -136
- package/lib/typescript.d.ts +19 -10
- package/lib/typescript.js +230 -136
- package/lib/typingsInstaller.js +75 -42
- package/package.json +1 -1
package/lib/typescript.js
CHANGED
|
@@ -42,7 +42,7 @@ var ts = (() => {
|
|
|
42
42
|
"src/compiler/corePublic.ts"() {
|
|
43
43
|
"use strict";
|
|
44
44
|
versionMajorMinor = "5.0";
|
|
45
|
-
version = `${versionMajorMinor}.0-insiders.
|
|
45
|
+
version = `${versionMajorMinor}.0-insiders.20230117`;
|
|
46
46
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
47
47
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
48
48
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -3900,14 +3900,15 @@ ${lanes.join("\n")}
|
|
|
3900
3900
|
SyntaxKind5[SyntaxKind5["JSDocSeeTag"] = 350] = "JSDocSeeTag";
|
|
3901
3901
|
SyntaxKind5[SyntaxKind5["JSDocPropertyTag"] = 351] = "JSDocPropertyTag";
|
|
3902
3902
|
SyntaxKind5[SyntaxKind5["JSDocThrowsTag"] = 352] = "JSDocThrowsTag";
|
|
3903
|
-
SyntaxKind5[SyntaxKind5["
|
|
3904
|
-
SyntaxKind5[SyntaxKind5["
|
|
3905
|
-
SyntaxKind5[SyntaxKind5["
|
|
3906
|
-
SyntaxKind5[SyntaxKind5["
|
|
3907
|
-
SyntaxKind5[SyntaxKind5["
|
|
3908
|
-
SyntaxKind5[SyntaxKind5["
|
|
3909
|
-
SyntaxKind5[SyntaxKind5["
|
|
3910
|
-
SyntaxKind5[SyntaxKind5["
|
|
3903
|
+
SyntaxKind5[SyntaxKind5["JSDocSatisfiesTag"] = 353] = "JSDocSatisfiesTag";
|
|
3904
|
+
SyntaxKind5[SyntaxKind5["SyntaxList"] = 354] = "SyntaxList";
|
|
3905
|
+
SyntaxKind5[SyntaxKind5["NotEmittedStatement"] = 355] = "NotEmittedStatement";
|
|
3906
|
+
SyntaxKind5[SyntaxKind5["PartiallyEmittedExpression"] = 356] = "PartiallyEmittedExpression";
|
|
3907
|
+
SyntaxKind5[SyntaxKind5["CommaListExpression"] = 357] = "CommaListExpression";
|
|
3908
|
+
SyntaxKind5[SyntaxKind5["MergeDeclarationMarker"] = 358] = "MergeDeclarationMarker";
|
|
3909
|
+
SyntaxKind5[SyntaxKind5["EndOfDeclarationMarker"] = 359] = "EndOfDeclarationMarker";
|
|
3910
|
+
SyntaxKind5[SyntaxKind5["SyntheticReferenceExpression"] = 360] = "SyntheticReferenceExpression";
|
|
3911
|
+
SyntaxKind5[SyntaxKind5["Count"] = 361] = "Count";
|
|
3911
3912
|
SyntaxKind5[SyntaxKind5["FirstAssignment"] = 63 /* EqualsToken */] = "FirstAssignment";
|
|
3912
3913
|
SyntaxKind5[SyntaxKind5["LastAssignment"] = 78 /* CaretEqualsToken */] = "LastAssignment";
|
|
3913
3914
|
SyntaxKind5[SyntaxKind5["FirstCompoundAssignment"] = 64 /* PlusEqualsToken */] = "FirstCompoundAssignment";
|
|
@@ -3936,9 +3937,9 @@ ${lanes.join("\n")}
|
|
|
3936
3937
|
SyntaxKind5[SyntaxKind5["LastStatement"] = 256 /* DebuggerStatement */] = "LastStatement";
|
|
3937
3938
|
SyntaxKind5[SyntaxKind5["FirstNode"] = 163 /* QualifiedName */] = "FirstNode";
|
|
3938
3939
|
SyntaxKind5[SyntaxKind5["FirstJSDocNode"] = 312 /* JSDocTypeExpression */] = "FirstJSDocNode";
|
|
3939
|
-
SyntaxKind5[SyntaxKind5["LastJSDocNode"] =
|
|
3940
|
+
SyntaxKind5[SyntaxKind5["LastJSDocNode"] = 353 /* JSDocSatisfiesTag */] = "LastJSDocNode";
|
|
3940
3941
|
SyntaxKind5[SyntaxKind5["FirstJSDocTagNode"] = 330 /* JSDocTag */] = "FirstJSDocTagNode";
|
|
3941
|
-
SyntaxKind5[SyntaxKind5["LastJSDocTagNode"] =
|
|
3942
|
+
SyntaxKind5[SyntaxKind5["LastJSDocTagNode"] = 353 /* JSDocSatisfiesTag */] = "LastJSDocTagNode";
|
|
3942
3943
|
SyntaxKind5[SyntaxKind5["FirstContextualKeyword"] = 126 /* AbstractKeyword */] = "FirstContextualKeyword";
|
|
3943
3944
|
SyntaxKind5[SyntaxKind5["LastContextualKeyword"] = 162 /* OfKeyword */] = "LastContextualKeyword";
|
|
3944
3945
|
return SyntaxKind5;
|
|
@@ -7171,7 +7172,6 @@ ${lanes.join("\n")}
|
|
|
7171
7172
|
An_export_declaration_cannot_have_modifiers: diag(1193, 1 /* Error */, "An_export_declaration_cannot_have_modifiers_1193", "An export declaration cannot have modifiers."),
|
|
7172
7173
|
Export_declarations_are_not_permitted_in_a_namespace: diag(1194, 1 /* Error */, "Export_declarations_are_not_permitted_in_a_namespace_1194", "Export declarations are not permitted in a namespace."),
|
|
7173
7174
|
export_Asterisk_does_not_re_export_a_default: diag(1195, 1 /* Error */, "export_Asterisk_does_not_re_export_a_default_1195", "'export *' does not re-export a default."),
|
|
7174
|
-
Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified: diag(1196, 1 /* Error */, "Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196", "Catch clause variable type annotation must be 'any' or 'unknown' if specified."),
|
|
7175
7175
|
Catch_clause_variable_cannot_have_an_initializer: diag(1197, 1 /* Error */, "Catch_clause_variable_cannot_have_an_initializer_1197", "Catch clause variable cannot have an initializer."),
|
|
7176
7176
|
An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive: diag(1198, 1 /* Error */, "An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198", "An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),
|
|
7177
7177
|
Unterminated_Unicode_escape_sequence: diag(1199, 1 /* Error */, "Unterminated_Unicode_escape_sequence_1199", "Unterminated Unicode escape sequence."),
|
|
@@ -9039,7 +9039,8 @@ ${lanes.join("\n")}
|
|
|
9039
9039
|
_0_is_possibly_null: diag(18047, 1 /* Error */, "_0_is_possibly_null_18047", "'{0}' is possibly 'null'."),
|
|
9040
9040
|
_0_is_possibly_undefined: diag(18048, 1 /* Error */, "_0_is_possibly_undefined_18048", "'{0}' is possibly 'undefined'."),
|
|
9041
9041
|
_0_is_possibly_null_or_undefined: diag(18049, 1 /* Error */, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
|
|
9042
|
-
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here.")
|
|
9042
|
+
The_value_0_cannot_be_used_here: diag(18050, 1 /* Error */, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
|
|
9043
|
+
Compiler_option_0_cannot_be_given_an_empty_string: diag(18051, 1 /* Error */, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string.")
|
|
9043
9044
|
};
|
|
9044
9045
|
}
|
|
9045
9046
|
});
|
|
@@ -11761,6 +11762,9 @@ ${lanes.join("\n")}
|
|
|
11761
11762
|
function getJSDocTemplateTag(node) {
|
|
11762
11763
|
return getFirstJSDocTag(node, isJSDocTemplateTag);
|
|
11763
11764
|
}
|
|
11765
|
+
function getJSDocSatisfiesTag(node) {
|
|
11766
|
+
return getFirstJSDocTag(node, isJSDocSatisfiesTag);
|
|
11767
|
+
}
|
|
11764
11768
|
function getJSDocTypeTag(node) {
|
|
11765
11769
|
const tag = getFirstJSDocTag(node, isJSDocTypeTag);
|
|
11766
11770
|
if (tag && tag.typeExpression && tag.typeExpression.type) {
|
|
@@ -12320,8 +12324,8 @@ ${lanes.join("\n")}
|
|
|
12320
12324
|
case 227 /* SpreadElement */:
|
|
12321
12325
|
case 231 /* AsExpression */:
|
|
12322
12326
|
case 229 /* OmittedExpression */:
|
|
12323
|
-
case
|
|
12324
|
-
case
|
|
12327
|
+
case 357 /* CommaListExpression */:
|
|
12328
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
12325
12329
|
case 235 /* SatisfiesExpression */:
|
|
12326
12330
|
return true;
|
|
12327
12331
|
default:
|
|
@@ -12506,7 +12510,7 @@ ${lanes.join("\n")}
|
|
|
12506
12510
|
return kind === 259 /* FunctionDeclaration */ || kind === 279 /* MissingDeclaration */ || kind === 260 /* ClassDeclaration */ || kind === 261 /* InterfaceDeclaration */ || kind === 262 /* TypeAliasDeclaration */ || kind === 263 /* EnumDeclaration */ || kind === 264 /* ModuleDeclaration */ || kind === 269 /* ImportDeclaration */ || kind === 268 /* ImportEqualsDeclaration */ || kind === 275 /* ExportDeclaration */ || kind === 274 /* ExportAssignment */ || kind === 267 /* NamespaceExportDeclaration */;
|
|
12507
12511
|
}
|
|
12508
12512
|
function isStatementKindButNotDeclarationKind(kind) {
|
|
12509
|
-
return kind === 249 /* BreakStatement */ || kind === 248 /* ContinueStatement */ || kind === 256 /* DebuggerStatement */ || kind === 243 /* DoStatement */ || kind === 241 /* ExpressionStatement */ || kind === 239 /* EmptyStatement */ || kind === 246 /* ForInStatement */ || kind === 247 /* ForOfStatement */ || kind === 245 /* ForStatement */ || kind === 242 /* IfStatement */ || kind === 253 /* LabeledStatement */ || kind === 250 /* ReturnStatement */ || kind === 252 /* SwitchStatement */ || kind === 254 /* ThrowStatement */ || kind === 255 /* TryStatement */ || kind === 240 /* VariableStatement */ || kind === 244 /* WhileStatement */ || kind === 251 /* WithStatement */ || kind ===
|
|
12513
|
+
return kind === 249 /* BreakStatement */ || kind === 248 /* ContinueStatement */ || kind === 256 /* DebuggerStatement */ || kind === 243 /* DoStatement */ || kind === 241 /* ExpressionStatement */ || kind === 239 /* EmptyStatement */ || kind === 246 /* ForInStatement */ || kind === 247 /* ForOfStatement */ || kind === 245 /* ForStatement */ || kind === 242 /* IfStatement */ || kind === 253 /* LabeledStatement */ || kind === 250 /* ReturnStatement */ || kind === 252 /* SwitchStatement */ || kind === 254 /* ThrowStatement */ || kind === 255 /* TryStatement */ || kind === 240 /* VariableStatement */ || kind === 244 /* WhileStatement */ || kind === 251 /* WithStatement */ || kind === 355 /* NotEmittedStatement */ || kind === 359 /* EndOfDeclarationMarker */ || kind === 358 /* MergeDeclarationMarker */;
|
|
12510
12514
|
}
|
|
12511
12515
|
function isDeclaration(node) {
|
|
12512
12516
|
if (node.kind === 165 /* TypeParameter */) {
|
|
@@ -12567,13 +12571,13 @@ ${lanes.join("\n")}
|
|
|
12567
12571
|
return kind === 292 /* CaseClause */ || kind === 293 /* DefaultClause */;
|
|
12568
12572
|
}
|
|
12569
12573
|
function isJSDocNode(node) {
|
|
12570
|
-
return node.kind >= 312 /* FirstJSDocNode */ && node.kind <=
|
|
12574
|
+
return node.kind >= 312 /* FirstJSDocNode */ && node.kind <= 353 /* LastJSDocNode */;
|
|
12571
12575
|
}
|
|
12572
12576
|
function isJSDocCommentContainingNode(node) {
|
|
12573
12577
|
return node.kind === 323 /* JSDoc */ || node.kind === 322 /* JSDocNamepathType */ || node.kind === 324 /* JSDocText */ || isJSDocLinkLike(node) || isJSDocTag(node) || isJSDocTypeLiteral(node) || isJSDocSignature(node);
|
|
12574
12578
|
}
|
|
12575
12579
|
function isJSDocTag(node) {
|
|
12576
|
-
return node.kind >= 330 /* FirstJSDocTagNode */ && node.kind <=
|
|
12580
|
+
return node.kind >= 330 /* FirstJSDocTagNode */ && node.kind <= 353 /* LastJSDocTagNode */;
|
|
12577
12581
|
}
|
|
12578
12582
|
function isSetAccessor(node) {
|
|
12579
12583
|
return node.kind === 175 /* SetAccessor */;
|
|
@@ -12993,7 +12997,7 @@ ${lanes.join("\n")}
|
|
|
12993
12997
|
if (includeJsDoc && hasJSDocNodes(node)) {
|
|
12994
12998
|
return getTokenPosOfNode(node.jsDoc[0], sourceFile);
|
|
12995
12999
|
}
|
|
12996
|
-
if (node.kind ===
|
|
13000
|
+
if (node.kind === 354 /* SyntaxList */ && node._children.length > 0) {
|
|
12997
13001
|
return getTokenPosOfNode(node._children[0], sourceFile, includeJsDoc);
|
|
12998
13002
|
}
|
|
12999
13003
|
return skipTrivia(
|
|
@@ -14859,7 +14863,7 @@ ${lanes.join("\n")}
|
|
|
14859
14863
|
return ownsJSDocTag(hostNode, jsDoc) ? [jsDoc] : void 0;
|
|
14860
14864
|
}
|
|
14861
14865
|
function ownsJSDocTag(hostNode, tag) {
|
|
14862
|
-
return !isJSDocTypeTag(tag) || !tag.parent || !isJSDoc(tag.parent) || !isParenthesizedExpression(tag.parent.parent) || tag.parent.parent === hostNode;
|
|
14866
|
+
return !(isJSDocTypeTag(tag) || isJSDocSatisfiesTag(tag)) || !tag.parent || !isJSDoc(tag.parent) || !isParenthesizedExpression(tag.parent.parent) || tag.parent.parent === hostNode;
|
|
14863
14867
|
}
|
|
14864
14868
|
function getNextJSDocCommentLocation(node) {
|
|
14865
14869
|
const parent2 = node.parent;
|
|
@@ -15395,7 +15399,7 @@ ${lanes.join("\n")}
|
|
|
15395
15399
|
}
|
|
15396
15400
|
function getOperatorPrecedence(nodeKind, operatorKind, hasArguments) {
|
|
15397
15401
|
switch (nodeKind) {
|
|
15398
|
-
case
|
|
15402
|
+
case 357 /* CommaListExpression */:
|
|
15399
15403
|
return 0 /* Comma */;
|
|
15400
15404
|
case 227 /* SpreadElement */:
|
|
15401
15405
|
return 1 /* Spread */;
|
|
@@ -16365,14 +16369,23 @@ ${lanes.join("\n")}
|
|
|
16365
16369
|
}
|
|
16366
16370
|
return 0 /* None */;
|
|
16367
16371
|
}
|
|
16372
|
+
function isBinaryLogicalOperator(token) {
|
|
16373
|
+
return token === 56 /* BarBarToken */ || token === 55 /* AmpersandAmpersandToken */;
|
|
16374
|
+
}
|
|
16368
16375
|
function isLogicalOperator(token) {
|
|
16369
|
-
return token
|
|
16376
|
+
return isBinaryLogicalOperator(token) || token === 53 /* ExclamationToken */;
|
|
16370
16377
|
}
|
|
16371
16378
|
function isLogicalOrCoalescingAssignmentOperator(token) {
|
|
16372
16379
|
return token === 75 /* BarBarEqualsToken */ || token === 76 /* AmpersandAmpersandEqualsToken */ || token === 77 /* QuestionQuestionEqualsToken */;
|
|
16373
16380
|
}
|
|
16374
16381
|
function isLogicalOrCoalescingAssignmentExpression(expr) {
|
|
16375
|
-
return isLogicalOrCoalescingAssignmentOperator(expr.operatorToken.kind);
|
|
16382
|
+
return isBinaryExpression(expr) && isLogicalOrCoalescingAssignmentOperator(expr.operatorToken.kind);
|
|
16383
|
+
}
|
|
16384
|
+
function isLogicalOrCoalescingBinaryOperator(token) {
|
|
16385
|
+
return isBinaryLogicalOperator(token) || token === 60 /* QuestionQuestionToken */;
|
|
16386
|
+
}
|
|
16387
|
+
function isLogicalOrCoalescingBinaryExpression(expr) {
|
|
16388
|
+
return isBinaryExpression(expr) && isLogicalOrCoalescingBinaryOperator(expr.operatorToken.kind);
|
|
16376
16389
|
}
|
|
16377
16390
|
function isAssignmentOperator(token) {
|
|
16378
16391
|
return token >= 63 /* FirstAssignment */ && token <= 78 /* LastAssignment */;
|
|
@@ -17009,7 +17022,7 @@ ${lanes.join("\n")}
|
|
|
17009
17022
|
case 209 /* ElementAccessExpression */:
|
|
17010
17023
|
case 208 /* PropertyAccessExpression */:
|
|
17011
17024
|
case 232 /* NonNullExpression */:
|
|
17012
|
-
case
|
|
17025
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
17013
17026
|
case 235 /* SatisfiesExpression */:
|
|
17014
17027
|
node = node.expression;
|
|
17015
17028
|
continue;
|
|
@@ -18250,7 +18263,7 @@ ${lanes.join("\n")}
|
|
|
18250
18263
|
return parent2.types;
|
|
18251
18264
|
case 186 /* TupleType */:
|
|
18252
18265
|
case 206 /* ArrayLiteralExpression */:
|
|
18253
|
-
case
|
|
18266
|
+
case 357 /* CommaListExpression */:
|
|
18254
18267
|
case 272 /* NamedImports */:
|
|
18255
18268
|
case 276 /* NamedExports */:
|
|
18256
18269
|
return parent2.elements;
|
|
@@ -18435,6 +18448,16 @@ ${lanes.join("\n")}
|
|
|
18435
18448
|
const kind = node.kind;
|
|
18436
18449
|
return (kind === 208 /* PropertyAccessExpression */ || kind === 209 /* ElementAccessExpression */) && isNonNullExpression(node.expression);
|
|
18437
18450
|
}
|
|
18451
|
+
function isJSDocSatisfiesExpression(node) {
|
|
18452
|
+
return isInJSFile(node) && isParenthesizedExpression(node) && hasJSDocNodes(node) && !!getJSDocSatisfiesTag(node);
|
|
18453
|
+
}
|
|
18454
|
+
function getJSDocSatisfiesExpressionType(node) {
|
|
18455
|
+
return Debug.checkDefined(tryGetJSDocSatisfiesTypeNode(node));
|
|
18456
|
+
}
|
|
18457
|
+
function tryGetJSDocSatisfiesTypeNode(node) {
|
|
18458
|
+
const tag = getJSDocSatisfiesTag(node);
|
|
18459
|
+
return tag && tag.typeExpression && tag.typeExpression.type;
|
|
18460
|
+
}
|
|
18438
18461
|
var resolvingEmptyArray, externalHelpersModuleNameText, defaultMaximumTruncationLength, noTruncationMaximumTruncationLength, stringWriter, GetLiteralTextFlags, fullTripleSlashReferencePathRegEx, fullTripleSlashReferenceTypeReferenceDirectiveRegEx, fullTripleSlashAMDReferencePathRegEx, defaultLibReferenceRegEx, AssignmentKind, FunctionFlags, Associativity, OperatorPrecedence, templateSubstitutionRegExp, doubleQuoteEscapedCharsRegExp, singleQuoteEscapedCharsRegExp, backtickQuoteEscapedCharsRegExp, escapedCharsMap, nonAsciiCharacters, jsxDoubleQuoteEscapedCharsRegExp, jsxSingleQuoteEscapedCharsRegExp, jsxEscapedCharsMap, indentStrings, base64Digits, carriageReturnLineFeed, lineFeed, AccessKind, objectAllocator, objectAllocatorPatchers, localizedDiagnosticMessages, reservedCharacterPattern, wildcardCharCodes, commonPackageFolders, implicitExcludePathRegexPattern, filesMatcher, directoriesMatcher, excludeMatcher, wildcardMatchers, supportedTSExtensions, supportedTSExtensionsFlat, supportedTSExtensionsWithJson, supportedTSExtensionsForExtractExtension, supportedJSExtensions, supportedJSExtensionsFlat, allSupportedExtensions, allSupportedExtensionsWithJson, supportedDeclarationExtensions, supportedTSImplementationExtensions, ModuleSpecifierEnding, extensionsToRemove, emptyFileSystemEntries;
|
|
18439
18462
|
var init_utilities = __esm({
|
|
18440
18463
|
"src/compiler/utilities.ts"() {
|
|
@@ -19653,6 +19676,12 @@ ${lanes.join("\n")}
|
|
|
19653
19676
|
get updateJSDocThrowsTag() {
|
|
19654
19677
|
return getJSDocTypeLikeTagUpdateFunction(352 /* JSDocThrowsTag */);
|
|
19655
19678
|
},
|
|
19679
|
+
get createJSDocSatisfiesTag() {
|
|
19680
|
+
return getJSDocTypeLikeTagCreateFunction(353 /* JSDocSatisfiesTag */);
|
|
19681
|
+
},
|
|
19682
|
+
get updateJSDocSatisfiesTag() {
|
|
19683
|
+
return getJSDocTypeLikeTagUpdateFunction(353 /* JSDocSatisfiesTag */);
|
|
19684
|
+
},
|
|
19656
19685
|
createJSDocEnumTag: createJSDocEnumTag2,
|
|
19657
19686
|
updateJSDocEnumTag,
|
|
19658
19687
|
createJSDocUnknownTag,
|
|
@@ -22812,18 +22841,18 @@ ${lanes.join("\n")}
|
|
|
22812
22841
|
return node;
|
|
22813
22842
|
}
|
|
22814
22843
|
function createSyntaxList3(children) {
|
|
22815
|
-
const node = createBaseNode(
|
|
22844
|
+
const node = createBaseNode(354 /* SyntaxList */);
|
|
22816
22845
|
node._children = children;
|
|
22817
22846
|
return node;
|
|
22818
22847
|
}
|
|
22819
22848
|
function createNotEmittedStatement2(original) {
|
|
22820
|
-
const node = createBaseNode(
|
|
22849
|
+
const node = createBaseNode(355 /* NotEmittedStatement */);
|
|
22821
22850
|
node.original = original;
|
|
22822
22851
|
setTextRange(node, original);
|
|
22823
22852
|
return node;
|
|
22824
22853
|
}
|
|
22825
22854
|
function createPartiallyEmittedExpression2(expression, original) {
|
|
22826
|
-
const node = createBaseNode(
|
|
22855
|
+
const node = createBaseNode(356 /* PartiallyEmittedExpression */);
|
|
22827
22856
|
node.expression = expression;
|
|
22828
22857
|
node.original = original;
|
|
22829
22858
|
node.transformFlags |= propagateChildFlags(node.expression) | 1 /* ContainsTypeScript */;
|
|
@@ -22845,7 +22874,7 @@ ${lanes.join("\n")}
|
|
|
22845
22874
|
return node;
|
|
22846
22875
|
}
|
|
22847
22876
|
function createCommaListExpression(elements) {
|
|
22848
|
-
const node = createBaseNode(
|
|
22877
|
+
const node = createBaseNode(357 /* CommaListExpression */);
|
|
22849
22878
|
node.elements = createNodeArray2(sameFlatMap(elements, flattenCommaElements));
|
|
22850
22879
|
node.transformFlags |= propagateChildrenFlags(node.elements);
|
|
22851
22880
|
return node;
|
|
@@ -22854,19 +22883,19 @@ ${lanes.join("\n")}
|
|
|
22854
22883
|
return node.elements !== elements ? update(createCommaListExpression(elements), node) : node;
|
|
22855
22884
|
}
|
|
22856
22885
|
function createEndOfDeclarationMarker(original) {
|
|
22857
|
-
const node = createBaseNode(
|
|
22886
|
+
const node = createBaseNode(359 /* EndOfDeclarationMarker */);
|
|
22858
22887
|
node.emitNode = {};
|
|
22859
22888
|
node.original = original;
|
|
22860
22889
|
return node;
|
|
22861
22890
|
}
|
|
22862
22891
|
function createMergeDeclarationMarker(original) {
|
|
22863
|
-
const node = createBaseNode(
|
|
22892
|
+
const node = createBaseNode(358 /* MergeDeclarationMarker */);
|
|
22864
22893
|
node.emitNode = {};
|
|
22865
22894
|
node.original = original;
|
|
22866
22895
|
return node;
|
|
22867
22896
|
}
|
|
22868
22897
|
function createSyntheticReferenceExpression(expression, thisArg) {
|
|
22869
|
-
const node = createBaseNode(
|
|
22898
|
+
const node = createBaseNode(360 /* SyntheticReferenceExpression */);
|
|
22870
22899
|
node.expression = expression;
|
|
22871
22900
|
node.thisArg = thisArg;
|
|
22872
22901
|
node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.thisArg);
|
|
@@ -23106,7 +23135,7 @@ ${lanes.join("\n")}
|
|
|
23106
23135
|
return updateSatisfiesExpression(outerExpression, expression, outerExpression.type);
|
|
23107
23136
|
case 232 /* NonNullExpression */:
|
|
23108
23137
|
return updateNonNullExpression2(outerExpression, expression);
|
|
23109
|
-
case
|
|
23138
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
23110
23139
|
return updatePartiallyEmittedExpression2(outerExpression, expression);
|
|
23111
23140
|
}
|
|
23112
23141
|
}
|
|
@@ -23640,7 +23669,7 @@ ${lanes.join("\n")}
|
|
|
23640
23669
|
case 213 /* TypeAssertionExpression */:
|
|
23641
23670
|
case 235 /* SatisfiesExpression */:
|
|
23642
23671
|
case 231 /* AsExpression */:
|
|
23643
|
-
case
|
|
23672
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
23644
23673
|
case 214 /* ParenthesizedExpression */:
|
|
23645
23674
|
case 106 /* SuperKeyword */:
|
|
23646
23675
|
return -2147483648 /* OuterExpressionExcludes */;
|
|
@@ -25308,10 +25337,10 @@ ${lanes.join("\n")}
|
|
|
25308
25337
|
return node.kind === 234 /* SyntheticExpression */;
|
|
25309
25338
|
}
|
|
25310
25339
|
function isPartiallyEmittedExpression(node) {
|
|
25311
|
-
return node.kind ===
|
|
25340
|
+
return node.kind === 356 /* PartiallyEmittedExpression */;
|
|
25312
25341
|
}
|
|
25313
25342
|
function isCommaListExpression(node) {
|
|
25314
|
-
return node.kind ===
|
|
25343
|
+
return node.kind === 357 /* CommaListExpression */;
|
|
25315
25344
|
}
|
|
25316
25345
|
function isTemplateSpan(node) {
|
|
25317
25346
|
return node.kind === 236 /* TemplateSpan */;
|
|
@@ -25455,16 +25484,16 @@ ${lanes.join("\n")}
|
|
|
25455
25484
|
return node.kind === 279 /* MissingDeclaration */;
|
|
25456
25485
|
}
|
|
25457
25486
|
function isNotEmittedStatement(node) {
|
|
25458
|
-
return node.kind ===
|
|
25487
|
+
return node.kind === 355 /* NotEmittedStatement */;
|
|
25459
25488
|
}
|
|
25460
25489
|
function isSyntheticReference(node) {
|
|
25461
|
-
return node.kind ===
|
|
25490
|
+
return node.kind === 360 /* SyntheticReferenceExpression */;
|
|
25462
25491
|
}
|
|
25463
25492
|
function isMergeDeclarationMarker(node) {
|
|
25464
|
-
return node.kind ===
|
|
25493
|
+
return node.kind === 358 /* MergeDeclarationMarker */;
|
|
25465
25494
|
}
|
|
25466
25495
|
function isEndOfDeclarationMarker(node) {
|
|
25467
|
-
return node.kind ===
|
|
25496
|
+
return node.kind === 359 /* EndOfDeclarationMarker */;
|
|
25468
25497
|
}
|
|
25469
25498
|
function isExternalModuleReference(node) {
|
|
25470
25499
|
return node.kind === 280 /* ExternalModuleReference */;
|
|
@@ -25655,11 +25684,14 @@ ${lanes.join("\n")}
|
|
|
25655
25684
|
function isJSDocImplementsTag(node) {
|
|
25656
25685
|
return node.kind === 332 /* JSDocImplementsTag */;
|
|
25657
25686
|
}
|
|
25687
|
+
function isJSDocSatisfiesTag(node) {
|
|
25688
|
+
return node.kind === 353 /* JSDocSatisfiesTag */;
|
|
25689
|
+
}
|
|
25658
25690
|
function isJSDocThrowsTag(node) {
|
|
25659
25691
|
return node.kind === 352 /* JSDocThrowsTag */;
|
|
25660
25692
|
}
|
|
25661
25693
|
function isSyntaxList(n) {
|
|
25662
|
-
return n.kind ===
|
|
25694
|
+
return n.kind === 354 /* SyntaxList */;
|
|
25663
25695
|
}
|
|
25664
25696
|
var init_nodeTests = __esm({
|
|
25665
25697
|
"src/compiler/factory/nodeTests.ts"() {
|
|
@@ -26033,7 +26065,7 @@ ${lanes.join("\n")}
|
|
|
26033
26065
|
return firstStatement !== void 0 && isPrologueDirective(firstStatement) && isUseStrictPrologue(firstStatement);
|
|
26034
26066
|
}
|
|
26035
26067
|
function isCommaSequence(node) {
|
|
26036
|
-
return node.kind === 223 /* BinaryExpression */ && node.operatorToken.kind === 27 /* CommaToken */ || node.kind ===
|
|
26068
|
+
return node.kind === 223 /* BinaryExpression */ && node.operatorToken.kind === 27 /* CommaToken */ || node.kind === 357 /* CommaListExpression */;
|
|
26037
26069
|
}
|
|
26038
26070
|
function isJSDocTypeAssertion(node) {
|
|
26039
26071
|
return isParenthesizedExpression(node) && isInJSFile(node) && !!getJSDocTypeTag(node);
|
|
@@ -26056,7 +26088,7 @@ ${lanes.join("\n")}
|
|
|
26056
26088
|
return (kinds & 2 /* TypeAssertions */) !== 0;
|
|
26057
26089
|
case 232 /* NonNullExpression */:
|
|
26058
26090
|
return (kinds & 4 /* NonNullAssertions */) !== 0;
|
|
26059
|
-
case
|
|
26091
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
26060
26092
|
return (kinds & 8 /* PartiallyEmittedExpressions */) !== 0;
|
|
26061
26093
|
}
|
|
26062
26094
|
return false;
|
|
@@ -27465,7 +27497,7 @@ ${lanes.join("\n")}
|
|
|
27465
27497
|
[279 /* MissingDeclaration */]: function forEachChildInMissingDeclaration(node, cbNode, cbNodes) {
|
|
27466
27498
|
return visitNodes(cbNode, cbNodes, node.illegalDecorators) || visitNodes(cbNode, cbNodes, node.modifiers);
|
|
27467
27499
|
},
|
|
27468
|
-
[
|
|
27500
|
+
[357 /* CommaListExpression */]: function forEachChildInCommaListExpression(node, cbNode, cbNodes) {
|
|
27469
27501
|
return visitNodes(cbNode, cbNodes, node.elements);
|
|
27470
27502
|
},
|
|
27471
27503
|
[281 /* JsxElement */]: function forEachChildInJsxElement(node, cbNode, cbNodes) {
|
|
@@ -27537,6 +27569,7 @@ ${lanes.join("\n")}
|
|
|
27537
27569
|
[347 /* JSDocTypeTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27538
27570
|
[346 /* JSDocThisTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27539
27571
|
[343 /* JSDocEnumTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27572
|
+
[353 /* JSDocSatisfiesTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27540
27573
|
[352 /* JSDocThrowsTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27541
27574
|
[342 /* JSDocOverloadTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27542
27575
|
[326 /* JSDocSignature */]: function forEachChildInJSDocSignature(node, cbNode, _cbNodes) {
|
|
@@ -27556,7 +27589,7 @@ ${lanes.join("\n")}
|
|
|
27556
27589
|
[339 /* JSDocReadonlyTag */]: forEachChildInJSDocTag,
|
|
27557
27590
|
[334 /* JSDocDeprecatedTag */]: forEachChildInJSDocTag,
|
|
27558
27591
|
[340 /* JSDocOverrideTag */]: forEachChildInJSDocTag,
|
|
27559
|
-
[
|
|
27592
|
+
[356 /* PartiallyEmittedExpression */]: forEachChildInPartiallyEmittedExpression
|
|
27560
27593
|
};
|
|
27561
27594
|
((Parser2) => {
|
|
27562
27595
|
const scanner2 = createScanner(
|
|
@@ -33449,6 +33482,9 @@ ${lanes.join("\n")}
|
|
|
33449
33482
|
case "overload":
|
|
33450
33483
|
tag = parseOverloadTag(start2, tagName, margin, indentText);
|
|
33451
33484
|
break;
|
|
33485
|
+
case "satisfies":
|
|
33486
|
+
tag = parseSatisfiesTag(start2, tagName, margin, indentText);
|
|
33487
|
+
break;
|
|
33452
33488
|
case "see":
|
|
33453
33489
|
tag = parseSeeTag(start2, tagName, margin, indentText);
|
|
33454
33490
|
break;
|
|
@@ -33757,6 +33793,14 @@ ${lanes.join("\n")}
|
|
|
33757
33793
|
const className = parseExpressionWithTypeArgumentsForAugments();
|
|
33758
33794
|
return finishNode(factory2.createJSDocAugmentsTag(tagName, className, parseTrailingTagComments(start2, getNodePos(), margin, indentText)), start2);
|
|
33759
33795
|
}
|
|
33796
|
+
function parseSatisfiesTag(start2, tagName, margin, indentText) {
|
|
33797
|
+
const typeExpression = parseJSDocTypeExpression(
|
|
33798
|
+
/*mayOmitBraces*/
|
|
33799
|
+
false
|
|
33800
|
+
);
|
|
33801
|
+
const comments2 = margin !== void 0 && indentText !== void 0 ? parseTrailingTagComments(start2, getNodePos(), margin, indentText) : void 0;
|
|
33802
|
+
return finishNode(factory2.createJSDocSatisfiesTag(tagName, typeExpression, comments2), start2);
|
|
33803
|
+
}
|
|
33760
33804
|
function parseExpressionWithTypeArgumentsForAugments() {
|
|
33761
33805
|
const usedBrace = parseOptional(18 /* OpenBraceToken */);
|
|
33762
33806
|
const pos = getNodePos();
|
|
@@ -35662,7 +35706,7 @@ ${lanes.join("\n")}
|
|
|
35662
35706
|
const watchOptions = convertWatchOptionsFromJsonWorker(json.watchOptions, basePath, errors);
|
|
35663
35707
|
json.compileOnSave = convertCompileOnSaveOptionFromJson(json, basePath, errors);
|
|
35664
35708
|
let extendedConfigPath;
|
|
35665
|
-
if (json.extends) {
|
|
35709
|
+
if (json.extends || json.extends === "") {
|
|
35666
35710
|
if (!isCompilerOptionsValue(extendsOptionDeclaration, json.extends)) {
|
|
35667
35711
|
errors.push(createCompilerDiagnostic(Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "extends", getCompilerOptionValueTypeString(extendsOptionDeclaration)));
|
|
35668
35712
|
} else {
|
|
@@ -35789,7 +35833,11 @@ ${lanes.join("\n")}
|
|
|
35789
35833
|
if (resolved.resolvedModule) {
|
|
35790
35834
|
return resolved.resolvedModule.resolvedFileName;
|
|
35791
35835
|
}
|
|
35792
|
-
|
|
35836
|
+
if (extendedConfig === "") {
|
|
35837
|
+
errors.push(createDiagnostic(Diagnostics.Compiler_option_0_cannot_be_given_an_empty_string, "extends"));
|
|
35838
|
+
} else {
|
|
35839
|
+
errors.push(createDiagnostic(Diagnostics.File_0_not_found, extendedConfig));
|
|
35840
|
+
}
|
|
35793
35841
|
return void 0;
|
|
35794
35842
|
}
|
|
35795
35843
|
function getExtendedConfig(sourceFile, extendedConfigPath, host, resolutionStack, errors, extendedConfigCache, result) {
|
|
@@ -41036,13 +41084,12 @@ ${lanes.join("\n")}
|
|
|
41036
41084
|
} else if (node.kind === 221 /* PrefixUnaryExpression */ && node.operator === 53 /* ExclamationToken */) {
|
|
41037
41085
|
node = node.operand;
|
|
41038
41086
|
} else {
|
|
41039
|
-
return
|
|
41087
|
+
return isLogicalOrCoalescingBinaryExpression(node);
|
|
41040
41088
|
}
|
|
41041
41089
|
}
|
|
41042
41090
|
}
|
|
41043
41091
|
function isLogicalAssignmentExpression(node) {
|
|
41044
|
-
|
|
41045
|
-
return isBinaryExpression(node) && isLogicalOrCoalescingAssignmentOperator(node.operatorToken.kind);
|
|
41092
|
+
return isLogicalOrCoalescingAssignmentExpression(skipParentheses(node));
|
|
41046
41093
|
}
|
|
41047
41094
|
function isTopLevelLogicalExpression(node) {
|
|
41048
41095
|
while (isParenthesizedExpression(node.parent) || isPrefixUnaryExpression(node.parent) && node.parent.operator === 53 /* ExclamationToken */) {
|
|
@@ -41425,7 +41472,7 @@ ${lanes.join("\n")}
|
|
|
41425
41472
|
};
|
|
41426
41473
|
}
|
|
41427
41474
|
const operator = node.operatorToken.kind;
|
|
41428
|
-
if (operator
|
|
41475
|
+
if (isLogicalOrCoalescingBinaryOperator(operator) || isLogicalOrCoalescingAssignmentOperator(operator)) {
|
|
41429
41476
|
if (isTopLevelLogicalExpression(node)) {
|
|
41430
41477
|
const postExpressionLabel = createBranchLabel();
|
|
41431
41478
|
bindLogicalLikeExpression(node, postExpressionLabel, postExpressionLabel);
|
|
@@ -52147,12 +52194,9 @@ ${lanes.join("\n")}
|
|
|
52147
52194
|
}
|
|
52148
52195
|
const isProperty = isPropertyDeclaration(declaration) && !hasAccessorModifier(declaration) || isPropertySignature(declaration) || isJSDocPropertyTag(declaration);
|
|
52149
52196
|
const isOptional = includeOptionality && isOptionalDeclaration(declaration);
|
|
52150
|
-
|
|
52151
|
-
if (isCatchClauseVariableDeclarationOrBindingElement(declaration)) {
|
|
52152
|
-
|
|
52153
|
-
return isTypeAny(declaredType) || declaredType === unknownType ? declaredType : errorType;
|
|
52154
|
-
}
|
|
52155
|
-
declaredType = useUnknownInCatchVariables ? unknownType : anyType;
|
|
52197
|
+
const declaredType = tryGetTypeFromEffectiveTypeNode(declaration);
|
|
52198
|
+
if (!declaredType && isCatchClauseVariableDeclarationOrBindingElement(declaration)) {
|
|
52199
|
+
return useUnknownInCatchVariables ? unknownType : anyType;
|
|
52156
52200
|
}
|
|
52157
52201
|
if (declaredType) {
|
|
52158
52202
|
return addOptionality(declaredType, isProperty, isOptional);
|
|
@@ -67320,7 +67364,7 @@ ${lanes.join("\n")}
|
|
|
67320
67364
|
}
|
|
67321
67365
|
}
|
|
67322
67366
|
function getContextualTypeForVariableLikeDeclaration(declaration, contextFlags) {
|
|
67323
|
-
const typeNode = getEffectiveTypeAnnotationNode(declaration);
|
|
67367
|
+
const typeNode = getEffectiveTypeAnnotationNode(declaration) || (isInJSFile(declaration) ? tryGetJSDocSatisfiesTypeNode(declaration) : void 0);
|
|
67324
67368
|
if (typeNode) {
|
|
67325
67369
|
return getTypeFromTypeNode(typeNode);
|
|
67326
67370
|
}
|
|
@@ -67929,8 +67973,16 @@ ${lanes.join("\n")}
|
|
|
67929
67973
|
Debug.assert(parent2.parent.kind === 225 /* TemplateExpression */);
|
|
67930
67974
|
return getContextualTypeForSubstitutionExpression(parent2.parent, node);
|
|
67931
67975
|
case 214 /* ParenthesizedExpression */: {
|
|
67932
|
-
|
|
67933
|
-
|
|
67976
|
+
if (isInJSFile(parent2)) {
|
|
67977
|
+
if (isJSDocSatisfiesExpression(parent2)) {
|
|
67978
|
+
return getTypeFromTypeNode(getJSDocSatisfiesExpressionType(parent2));
|
|
67979
|
+
}
|
|
67980
|
+
const typeTag = getJSDocTypeTag(parent2);
|
|
67981
|
+
if (typeTag && !isConstTypeReference(typeTag.typeExpression.type)) {
|
|
67982
|
+
return getTypeFromTypeNode(typeTag.typeExpression.type);
|
|
67983
|
+
}
|
|
67984
|
+
}
|
|
67985
|
+
return getContextualType2(parent2, contextFlags);
|
|
67934
67986
|
}
|
|
67935
67987
|
case 232 /* NonNullExpression */:
|
|
67936
67988
|
return getContextualType2(parent2, contextFlags);
|
|
@@ -72134,12 +72186,15 @@ ${lanes.join("\n")}
|
|
|
72134
72186
|
}
|
|
72135
72187
|
function checkSatisfiesExpression(node) {
|
|
72136
72188
|
checkSourceElement(node.type);
|
|
72137
|
-
|
|
72138
|
-
|
|
72189
|
+
return checkSatisfiesExpressionWorker(node.expression, node.type);
|
|
72190
|
+
}
|
|
72191
|
+
function checkSatisfiesExpressionWorker(expression, target, checkMode) {
|
|
72192
|
+
const exprType = checkExpression(expression, checkMode);
|
|
72193
|
+
const targetType = getTypeFromTypeNode(target);
|
|
72139
72194
|
if (isErrorType(targetType)) {
|
|
72140
72195
|
return targetType;
|
|
72141
72196
|
}
|
|
72142
|
-
checkTypeAssignableToAndOptionallyElaborate(exprType, targetType,
|
|
72197
|
+
checkTypeAssignableToAndOptionallyElaborate(exprType, targetType, target, expression, Diagnostics.Type_0_does_not_satisfy_the_expected_type_1);
|
|
72143
72198
|
return exprType;
|
|
72144
72199
|
}
|
|
72145
72200
|
function checkMetaProperty(node) {
|
|
@@ -73546,12 +73601,12 @@ ${lanes.join("\n")}
|
|
|
73546
73601
|
void 0
|
|
73547
73602
|
);
|
|
73548
73603
|
const operator = operatorToken.kind;
|
|
73549
|
-
if (operator
|
|
73550
|
-
|
|
73551
|
-
|
|
73552
|
-
|
|
73553
|
-
|
|
73554
|
-
|
|
73604
|
+
if (isLogicalOrCoalescingBinaryOperator(operator)) {
|
|
73605
|
+
let parent2 = node.parent;
|
|
73606
|
+
while (parent2.kind === 214 /* ParenthesizedExpression */ || isLogicalOrCoalescingBinaryExpression(parent2)) {
|
|
73607
|
+
parent2 = parent2.parent;
|
|
73608
|
+
}
|
|
73609
|
+
if (operator === 55 /* AmpersandAmpersandToken */ || isIfStatement(parent2)) {
|
|
73555
73610
|
checkTestingKnownTruthyCallableOrAwaitableType(node.left, leftType, isIfStatement(parent2) ? parent2.thenStatement : void 0);
|
|
73556
73611
|
}
|
|
73557
73612
|
checkTruthinessOfType(leftType, node.left);
|
|
@@ -73628,7 +73683,7 @@ ${lanes.join("\n")}
|
|
|
73628
73683
|
return checkDestructuringAssignment(left, checkExpression(right, checkMode), checkMode, right.kind === 108 /* ThisKeyword */);
|
|
73629
73684
|
}
|
|
73630
73685
|
let leftType;
|
|
73631
|
-
if (operator
|
|
73686
|
+
if (isLogicalOrCoalescingBinaryOperator(operator)) {
|
|
73632
73687
|
leftType = checkTruthinessExpression(left, checkMode);
|
|
73633
73688
|
} else {
|
|
73634
73689
|
leftType = checkExpression(left, checkMode);
|
|
@@ -74171,6 +74226,12 @@ ${lanes.join("\n")}
|
|
|
74171
74226
|
}
|
|
74172
74227
|
function checkDeclarationInitializer(declaration, checkMode, contextualType) {
|
|
74173
74228
|
const initializer = getEffectiveInitializer(declaration);
|
|
74229
|
+
if (isInJSFile(declaration)) {
|
|
74230
|
+
const typeNode = tryGetJSDocSatisfiesTypeNode(declaration);
|
|
74231
|
+
if (typeNode) {
|
|
74232
|
+
return checkSatisfiesExpressionWorker(initializer, typeNode, checkMode);
|
|
74233
|
+
}
|
|
74234
|
+
}
|
|
74174
74235
|
const type = getQuickTypeOfExpression(initializer) || (contextualType ? checkExpressionWithContextualType(
|
|
74175
74236
|
initializer,
|
|
74176
74237
|
contextualType,
|
|
@@ -74498,9 +74559,14 @@ ${lanes.join("\n")}
|
|
|
74498
74559
|
}
|
|
74499
74560
|
}
|
|
74500
74561
|
function checkParenthesizedExpression(node, checkMode) {
|
|
74501
|
-
if (hasJSDocNodes(node)
|
|
74502
|
-
|
|
74503
|
-
|
|
74562
|
+
if (hasJSDocNodes(node)) {
|
|
74563
|
+
if (isJSDocSatisfiesExpression(node)) {
|
|
74564
|
+
return checkSatisfiesExpressionWorker(node.expression, getJSDocSatisfiesExpressionType(node), checkMode);
|
|
74565
|
+
}
|
|
74566
|
+
if (isJSDocTypeAssertion(node)) {
|
|
74567
|
+
const type = getJSDocTypeAssertionType(node);
|
|
74568
|
+
return checkAssertionWorker(type, type, node.expression, checkMode);
|
|
74569
|
+
}
|
|
74504
74570
|
}
|
|
74505
74571
|
return checkExpression(node.expression, checkMode);
|
|
74506
74572
|
}
|
|
@@ -76202,6 +76268,19 @@ ${lanes.join("\n")}
|
|
|
76202
76268
|
function checkJSDocTypeTag(node) {
|
|
76203
76269
|
checkSourceElement(node.typeExpression);
|
|
76204
76270
|
}
|
|
76271
|
+
function checkJSDocSatisfiesTag(node) {
|
|
76272
|
+
checkSourceElement(node.typeExpression);
|
|
76273
|
+
const host2 = getEffectiveJSDocHost(node);
|
|
76274
|
+
if (host2) {
|
|
76275
|
+
const tags = getAllJSDocTags(host2, isJSDocSatisfiesTag);
|
|
76276
|
+
if (length(tags) > 1) {
|
|
76277
|
+
for (let i = 1; i < length(tags); i++) {
|
|
76278
|
+
const tagName = tags[i].tagName;
|
|
76279
|
+
error(tagName, Diagnostics._0_tag_already_specified, idText(tagName));
|
|
76280
|
+
}
|
|
76281
|
+
}
|
|
76282
|
+
}
|
|
76283
|
+
}
|
|
76205
76284
|
function checkJSDocLinkLikeTag(node) {
|
|
76206
76285
|
if (node.name) {
|
|
76207
76286
|
resolveJSDocMemberName(
|
|
@@ -76987,15 +77066,24 @@ ${lanes.join("\n")}
|
|
|
76987
77066
|
function checkTestingKnownTruthyCallableOrAwaitableType(condExpr, condType, body) {
|
|
76988
77067
|
if (!strictNullChecks)
|
|
76989
77068
|
return;
|
|
76990
|
-
|
|
76991
|
-
|
|
76992
|
-
|
|
76993
|
-
helper(
|
|
77069
|
+
bothHelper(condExpr, body);
|
|
77070
|
+
function bothHelper(condExpr2, body2) {
|
|
77071
|
+
condExpr2 = skipParentheses(condExpr2);
|
|
77072
|
+
helper(condExpr2, body2);
|
|
77073
|
+
while (isBinaryExpression(condExpr2) && (condExpr2.operatorToken.kind === 56 /* BarBarToken */ || condExpr2.operatorToken.kind === 60 /* QuestionQuestionToken */)) {
|
|
77074
|
+
condExpr2 = skipParentheses(condExpr2.left);
|
|
77075
|
+
helper(condExpr2, body2);
|
|
77076
|
+
}
|
|
76994
77077
|
}
|
|
76995
77078
|
function helper(condExpr2, body2) {
|
|
76996
|
-
const location =
|
|
76997
|
-
if (isModuleExportsAccessExpression(location))
|
|
77079
|
+
const location = isLogicalOrCoalescingBinaryExpression(condExpr2) ? skipParentheses(condExpr2.right) : condExpr2;
|
|
77080
|
+
if (isModuleExportsAccessExpression(location)) {
|
|
76998
77081
|
return;
|
|
77082
|
+
}
|
|
77083
|
+
if (isLogicalOrCoalescingBinaryExpression(location)) {
|
|
77084
|
+
bothHelper(location, body2);
|
|
77085
|
+
return;
|
|
77086
|
+
}
|
|
76999
77087
|
const type = location === condExpr2 ? condType : checkTruthinessExpression(location);
|
|
77000
77088
|
const isPropertyExpressionCast = isPropertyAccessExpression(location) && isTypeAssertion3(location.expression);
|
|
77001
77089
|
if (!(getTypeFacts(type) & 4194304 /* Truthy */) || isPropertyExpressionCast)
|
|
@@ -77005,7 +77093,7 @@ ${lanes.join("\n")}
|
|
|
77005
77093
|
if (callSignatures.length === 0 && !isPromise) {
|
|
77006
77094
|
return;
|
|
77007
77095
|
}
|
|
77008
|
-
const testedNode = isIdentifier(location) ? location : isPropertyAccessExpression(location) ? location.name :
|
|
77096
|
+
const testedNode = isIdentifier(location) ? location : isPropertyAccessExpression(location) ? location.name : void 0;
|
|
77009
77097
|
const testedSymbol = testedNode && getSymbolAtLocation(testedNode);
|
|
77010
77098
|
if (!testedSymbol && !isPromise) {
|
|
77011
77099
|
return;
|
|
@@ -77964,13 +78052,7 @@ ${lanes.join("\n")}
|
|
|
77964
78052
|
if (catchClause.variableDeclaration) {
|
|
77965
78053
|
const declaration = catchClause.variableDeclaration;
|
|
77966
78054
|
checkVariableLikeDeclaration(declaration);
|
|
77967
|
-
|
|
77968
|
-
if (typeNode) {
|
|
77969
|
-
const type = getTypeFromTypeNode(typeNode);
|
|
77970
|
-
if (type && !(type.flags & 3 /* AnyOrUnknown */)) {
|
|
77971
|
-
grammarErrorOnFirstToken(typeNode, Diagnostics.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified);
|
|
77972
|
-
}
|
|
77973
|
-
} else if (declaration.initializer) {
|
|
78055
|
+
if (declaration.initializer) {
|
|
77974
78056
|
grammarErrorOnFirstToken(declaration.initializer, Diagnostics.Catch_clause_variable_cannot_have_an_initializer);
|
|
77975
78057
|
} else {
|
|
77976
78058
|
const blockLocals = catchClause.block.locals;
|
|
@@ -79802,6 +79884,8 @@ ${lanes.join("\n")}
|
|
|
79802
79884
|
case 338 /* JSDocProtectedTag */:
|
|
79803
79885
|
case 337 /* JSDocPrivateTag */:
|
|
79804
79886
|
return checkJSDocAccessibilityModifiers(node);
|
|
79887
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
79888
|
+
return checkJSDocSatisfiesTag(node);
|
|
79805
79889
|
case 196 /* IndexedAccessType */:
|
|
79806
79890
|
return checkIndexedAccessType(node);
|
|
79807
79891
|
case 197 /* MappedType */:
|
|
@@ -84757,13 +84841,13 @@ ${lanes.join("\n")}
|
|
|
84757
84841
|
);
|
|
84758
84842
|
},
|
|
84759
84843
|
// Transformation nodes
|
|
84760
|
-
[
|
|
84844
|
+
[356 /* PartiallyEmittedExpression */]: function visitEachChildOfPartiallyEmittedExpression(node, visitor, context, _nodesVisitor, nodeVisitor, _tokenVisitor) {
|
|
84761
84845
|
return context.factory.updatePartiallyEmittedExpression(
|
|
84762
84846
|
node,
|
|
84763
84847
|
nodeVisitor(node.expression, visitor, isExpression)
|
|
84764
84848
|
);
|
|
84765
84849
|
},
|
|
84766
|
-
[
|
|
84850
|
+
[357 /* CommaListExpression */]: function visitEachChildOfCommaListExpression(node, visitor, context, nodesVisitor, _nodeVisitor, _tokenVisitor) {
|
|
84767
84851
|
return context.factory.updateCommaListExpression(
|
|
84768
84852
|
node,
|
|
84769
84853
|
nodesVisitor(node.elements, visitor, isExpression)
|
|
@@ -91579,7 +91663,7 @@ ${lanes.join("\n")}
|
|
|
91579
91663
|
return visitObjectLiteralExpression(node);
|
|
91580
91664
|
case 223 /* BinaryExpression */:
|
|
91581
91665
|
return visitBinaryExpression(node, expressionResultIsUnused2);
|
|
91582
|
-
case
|
|
91666
|
+
case 357 /* CommaListExpression */:
|
|
91583
91667
|
return visitCommaListExpression(node, expressionResultIsUnused2);
|
|
91584
91668
|
case 295 /* CatchClause */:
|
|
91585
91669
|
return visitCatchClause(node);
|
|
@@ -93029,15 +93113,10 @@ ${lanes.join("\n")}
|
|
|
93029
93113
|
if ((node.transformFlags & 16 /* ContainsES2021 */) === 0) {
|
|
93030
93114
|
return node;
|
|
93031
93115
|
}
|
|
93032
|
-
|
|
93033
|
-
|
|
93034
|
-
const binaryExpression = node;
|
|
93035
|
-
if (isLogicalOrCoalescingAssignmentExpression(binaryExpression)) {
|
|
93036
|
-
return transformLogicalAssignment(binaryExpression);
|
|
93037
|
-
}
|
|
93038
|
-
default:
|
|
93039
|
-
return visitEachChild(node, visitor, context);
|
|
93116
|
+
if (isLogicalOrCoalescingAssignmentExpression(node)) {
|
|
93117
|
+
return transformLogicalAssignment(node);
|
|
93040
93118
|
}
|
|
93119
|
+
return visitEachChild(node, visitor, context);
|
|
93041
93120
|
}
|
|
93042
93121
|
function transformLogicalAssignment(binaryExpression) {
|
|
93043
93122
|
const operator = binaryExpression.operatorToken;
|
|
@@ -94200,7 +94279,7 @@ ${lanes.join("\n")}
|
|
|
94200
94279
|
return visitParenthesizedExpression(node, expressionResultIsUnused2);
|
|
94201
94280
|
case 223 /* BinaryExpression */:
|
|
94202
94281
|
return visitBinaryExpression(node, expressionResultIsUnused2);
|
|
94203
|
-
case
|
|
94282
|
+
case 357 /* CommaListExpression */:
|
|
94204
94283
|
return visitCommaListExpression(node, expressionResultIsUnused2);
|
|
94205
94284
|
case 14 /* NoSubstitutionTemplateLiteral */:
|
|
94206
94285
|
case 15 /* TemplateHead */:
|
|
@@ -97364,7 +97443,7 @@ ${lanes.join("\n")}
|
|
|
97364
97443
|
switch (node.kind) {
|
|
97365
97444
|
case 223 /* BinaryExpression */:
|
|
97366
97445
|
return visitBinaryExpression(node);
|
|
97367
|
-
case
|
|
97446
|
+
case 357 /* CommaListExpression */:
|
|
97368
97447
|
return visitCommaListExpression(node);
|
|
97369
97448
|
case 224 /* ConditionalExpression */:
|
|
97370
97449
|
return visitConditionalExpression(node);
|
|
@@ -99709,9 +99788,9 @@ ${lanes.join("\n")}
|
|
|
99709
99788
|
return visitFunctionDeclaration(node);
|
|
99710
99789
|
case 260 /* ClassDeclaration */:
|
|
99711
99790
|
return visitClassDeclaration(node);
|
|
99712
|
-
case
|
|
99791
|
+
case 358 /* MergeDeclarationMarker */:
|
|
99713
99792
|
return visitMergeDeclarationMarker(node);
|
|
99714
|
-
case
|
|
99793
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
99715
99794
|
return visitEndOfDeclarationMarker(node);
|
|
99716
99795
|
default:
|
|
99717
99796
|
return visitor(node);
|
|
@@ -99728,7 +99807,7 @@ ${lanes.join("\n")}
|
|
|
99728
99807
|
return visitExpressionStatement(node);
|
|
99729
99808
|
case 214 /* ParenthesizedExpression */:
|
|
99730
99809
|
return visitParenthesizedExpression(node, valueIsDiscarded);
|
|
99731
|
-
case
|
|
99810
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
99732
99811
|
return visitPartiallyEmittedExpression(node, valueIsDiscarded);
|
|
99733
99812
|
case 210 /* CallExpression */:
|
|
99734
99813
|
if (isImportCall(node) && currentSourceFile.impliedNodeFormat === void 0) {
|
|
@@ -101851,9 +101930,9 @@ ${lanes.join("\n")}
|
|
|
101851
101930
|
return visitCatchClause(node);
|
|
101852
101931
|
case 238 /* Block */:
|
|
101853
101932
|
return visitBlock(node);
|
|
101854
|
-
case
|
|
101933
|
+
case 358 /* MergeDeclarationMarker */:
|
|
101855
101934
|
return visitMergeDeclarationMarker(node);
|
|
101856
|
-
case
|
|
101935
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
101857
101936
|
return visitEndOfDeclarationMarker(node);
|
|
101858
101937
|
default:
|
|
101859
101938
|
return visitor(node);
|
|
@@ -102009,7 +102088,7 @@ ${lanes.join("\n")}
|
|
|
102009
102088
|
return visitExpressionStatement(node);
|
|
102010
102089
|
case 214 /* ParenthesizedExpression */:
|
|
102011
102090
|
return visitParenthesizedExpression(node, valueIsDiscarded);
|
|
102012
|
-
case
|
|
102091
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
102013
102092
|
return visitPartiallyEmittedExpression(node, valueIsDiscarded);
|
|
102014
102093
|
case 223 /* BinaryExpression */:
|
|
102015
102094
|
if (isDestructuringAssignment(node)) {
|
|
@@ -104727,7 +104806,7 @@ ${lanes.join("\n")}
|
|
|
104727
104806
|
}
|
|
104728
104807
|
function transformNodes(resolver, host, factory2, options, nodes, transformers, allowDtsFiles) {
|
|
104729
104808
|
var _a2, _b;
|
|
104730
|
-
const enabledSyntaxKindFeatures = new Array(
|
|
104809
|
+
const enabledSyntaxKindFeatures = new Array(361 /* Count */);
|
|
104731
104810
|
let lexicalEnvironmentVariableDeclarations;
|
|
104732
104811
|
let lexicalEnvironmentFunctionDeclarations;
|
|
104733
104812
|
let lexicalEnvironmentStatements;
|
|
@@ -106577,6 +106656,7 @@ ${lanes.join("\n")}
|
|
|
106577
106656
|
case 346 /* JSDocThisTag */:
|
|
106578
106657
|
case 347 /* JSDocTypeTag */:
|
|
106579
106658
|
case 352 /* JSDocThrowsTag */:
|
|
106659
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
106580
106660
|
return emitJSDocSimpleTypedTag(node);
|
|
106581
106661
|
case 348 /* JSDocTemplateTag */:
|
|
106582
106662
|
return emitJSDocTemplateTag(node);
|
|
@@ -106584,9 +106664,9 @@ ${lanes.join("\n")}
|
|
|
106584
106664
|
return emitJSDocTypedefTag(node);
|
|
106585
106665
|
case 350 /* JSDocSeeTag */:
|
|
106586
106666
|
return emitJSDocSeeTag(node);
|
|
106587
|
-
case
|
|
106588
|
-
case
|
|
106589
|
-
case
|
|
106667
|
+
case 355 /* NotEmittedStatement */:
|
|
106668
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
106669
|
+
case 358 /* MergeDeclarationMarker */:
|
|
106590
106670
|
return;
|
|
106591
106671
|
}
|
|
106592
106672
|
if (isExpression(node)) {
|
|
@@ -106685,18 +106765,18 @@ ${lanes.join("\n")}
|
|
|
106685
106765
|
return emitJsxSelfClosingElement(node);
|
|
106686
106766
|
case 285 /* JsxFragment */:
|
|
106687
106767
|
return emitJsxFragment(node);
|
|
106688
|
-
case
|
|
106768
|
+
case 354 /* SyntaxList */:
|
|
106689
106769
|
return Debug.fail("SyntaxList should not be printed");
|
|
106690
|
-
case
|
|
106770
|
+
case 355 /* NotEmittedStatement */:
|
|
106691
106771
|
return;
|
|
106692
|
-
case
|
|
106772
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
106693
106773
|
return emitPartiallyEmittedExpression(node);
|
|
106694
|
-
case
|
|
106774
|
+
case 357 /* CommaListExpression */:
|
|
106695
106775
|
return emitCommaList(node);
|
|
106696
|
-
case
|
|
106697
|
-
case
|
|
106776
|
+
case 358 /* MergeDeclarationMarker */:
|
|
106777
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
106698
106778
|
return;
|
|
106699
|
-
case
|
|
106779
|
+
case 360 /* SyntheticReferenceExpression */:
|
|
106700
106780
|
return Debug.fail("SyntheticReferenceExpression should not be printed");
|
|
106701
106781
|
}
|
|
106702
106782
|
}
|
|
@@ -109944,7 +110024,7 @@ ${lanes.join("\n")}
|
|
|
109944
110024
|
emitLeadingComments(
|
|
109945
110025
|
pos,
|
|
109946
110026
|
/*isEmittedNode*/
|
|
109947
|
-
node.kind !==
|
|
110027
|
+
node.kind !== 355 /* NotEmittedStatement */
|
|
109948
110028
|
);
|
|
109949
110029
|
}
|
|
109950
110030
|
if (!skipLeadingComments || pos >= 0 && (emitFlags & 1024 /* NoLeadingComments */) !== 0) {
|
|
@@ -109968,7 +110048,7 @@ ${lanes.join("\n")}
|
|
|
109968
110048
|
containerPos = savedContainerPos;
|
|
109969
110049
|
containerEnd = savedContainerEnd;
|
|
109970
110050
|
declarationListContainerEnd = savedDeclarationListContainerEnd;
|
|
109971
|
-
if (!skipTrailingComments && node.kind !==
|
|
110051
|
+
if (!skipTrailingComments && node.kind !== 355 /* NotEmittedStatement */) {
|
|
109972
110052
|
emitTrailingComments(end);
|
|
109973
110053
|
}
|
|
109974
110054
|
}
|
|
@@ -110240,7 +110320,7 @@ ${lanes.join("\n")}
|
|
|
110240
110320
|
}
|
|
110241
110321
|
} else {
|
|
110242
110322
|
const source = sourceMapRange.source || sourceMapSource;
|
|
110243
|
-
if (node.kind !==
|
|
110323
|
+
if (node.kind !== 355 /* NotEmittedStatement */ && (emitFlags & 32 /* NoLeadingSourceMap */) === 0 && sourceMapRange.pos >= 0) {
|
|
110244
110324
|
emitSourcePos(sourceMapRange.source || sourceMapSource, skipSourceTrivia(source, sourceMapRange.pos));
|
|
110245
110325
|
}
|
|
110246
110326
|
if (emitFlags & 128 /* NoNestedSourceMaps */) {
|
|
@@ -110255,7 +110335,7 @@ ${lanes.join("\n")}
|
|
|
110255
110335
|
if (emitFlags & 128 /* NoNestedSourceMaps */) {
|
|
110256
110336
|
sourceMapsDisabled = false;
|
|
110257
110337
|
}
|
|
110258
|
-
if (node.kind !==
|
|
110338
|
+
if (node.kind !== 355 /* NotEmittedStatement */ && (emitFlags & 64 /* NoTrailingSourceMap */) === 0 && sourceMapRange.end >= 0) {
|
|
110259
110339
|
emitSourcePos(sourceMapRange.source || sourceMapSource, sourceMapRange.end);
|
|
110260
110340
|
}
|
|
110261
110341
|
}
|
|
@@ -128381,7 +128461,7 @@ ${lanes.join("\n")}
|
|
|
128381
128461
|
}
|
|
128382
128462
|
}
|
|
128383
128463
|
function createSyntaxList(nodes, parent2) {
|
|
128384
|
-
const list = createNode(
|
|
128464
|
+
const list = createNode(354 /* SyntaxList */, nodes.pos, nodes.end, parent2);
|
|
128385
128465
|
list._children = [];
|
|
128386
128466
|
let pos = nodes.pos;
|
|
128387
128467
|
for (const node of nodes) {
|
|
@@ -129842,7 +129922,7 @@ ${lanes.join("\n")}
|
|
|
129842
129922
|
if (!children.length) {
|
|
129843
129923
|
return void 0;
|
|
129844
129924
|
}
|
|
129845
|
-
const child = find(children, (kid) => kid.kind < 312 /* FirstJSDocNode */ || kid.kind >
|
|
129925
|
+
const child = find(children, (kid) => kid.kind < 312 /* FirstJSDocNode */ || kid.kind > 353 /* LastJSDocNode */);
|
|
129846
129926
|
return child.kind < 163 /* FirstNode */ ? child : child.getFirstToken(sourceFile);
|
|
129847
129927
|
}
|
|
129848
129928
|
getLastToken(sourceFile) {
|
|
@@ -143231,6 +143311,7 @@ ${lanes.join("\n")}
|
|
|
143231
143311
|
void 0,
|
|
143232
143312
|
contextToken,
|
|
143233
143313
|
location,
|
|
143314
|
+
position,
|
|
143234
143315
|
sourceFile,
|
|
143235
143316
|
host,
|
|
143236
143317
|
program,
|
|
@@ -143344,10 +143425,10 @@ ${lanes.join("\n")}
|
|
|
143344
143425
|
} else if (!tracker.hasValue(type.value)) {
|
|
143345
143426
|
switch (typeof type.value) {
|
|
143346
143427
|
case "object":
|
|
143347
|
-
elements.push(factory.createBigIntLiteral(type.value));
|
|
143428
|
+
elements.push(type.value.negative ? factory.createPrefixUnaryExpression(40 /* MinusToken */, factory.createBigIntLiteral({ negative: false, base10Value: type.value.base10Value })) : factory.createBigIntLiteral(type.value));
|
|
143348
143429
|
break;
|
|
143349
143430
|
case "number":
|
|
143350
|
-
elements.push(factory.createNumericLiteral(type.value));
|
|
143431
|
+
elements.push(type.value < 0 ? factory.createPrefixUnaryExpression(40 /* MinusToken */, factory.createNumericLiteral(-type.value)) : factory.createNumericLiteral(type.value));
|
|
143351
143432
|
break;
|
|
143352
143433
|
case "string":
|
|
143353
143434
|
elements.push(factory.createStringLiteral(type.value, quotePreference === 0 /* Single */));
|
|
@@ -143556,7 +143637,7 @@ ${lanes.join("\n")}
|
|
|
143556
143637
|
function createCompletionEntryForLiteral(sourceFile, preferences, literal) {
|
|
143557
143638
|
return { name: completionNameForLiteral(sourceFile, preferences, literal), kind: "string" /* string */, kindModifiers: "" /* none */, sortText: SortText.LocationPriority };
|
|
143558
143639
|
}
|
|
143559
|
-
function createCompletionEntry(symbol, sortText, replacementToken, contextToken, location, sourceFile, host, program, name, needsConvertPropertyAccess, origin, recommendedCompletion, propertyAccessToConvert, isJsxInitializer, importStatementCompletion, useSemicolons, options, preferences, completionKind, formatContext, isJsxIdentifierExpected, isRightOfOpenTag) {
|
|
143640
|
+
function createCompletionEntry(symbol, sortText, replacementToken, contextToken, location, position, sourceFile, host, program, name, needsConvertPropertyAccess, origin, recommendedCompletion, propertyAccessToConvert, isJsxInitializer, importStatementCompletion, useSemicolons, options, preferences, completionKind, formatContext, isJsxIdentifierExpected, isRightOfOpenTag) {
|
|
143560
143641
|
let insertText;
|
|
143561
143642
|
let replacementSpan = getReplacementSpanForContextToken(replacementToken);
|
|
143562
143643
|
let data;
|
|
@@ -143614,7 +143695,7 @@ ${lanes.join("\n")}
|
|
|
143614
143695
|
}
|
|
143615
143696
|
if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind === CompletionKind.MemberLike && isClassLikeMemberCompletion(symbol, location, sourceFile)) {
|
|
143616
143697
|
let importAdder;
|
|
143617
|
-
({ insertText, isSnippet, importAdder, replacementSpan } = getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, contextToken, formatContext));
|
|
143698
|
+
({ insertText, isSnippet, importAdder, replacementSpan } = getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, position, contextToken, formatContext));
|
|
143618
143699
|
sortText = SortText.ClassMemberSnippets;
|
|
143619
143700
|
if (importAdder == null ? void 0 : importAdder.hasFixes()) {
|
|
143620
143701
|
hasAction = true;
|
|
@@ -143678,7 +143759,7 @@ ${lanes.join("\n")}
|
|
|
143678
143759
|
const memberFlags = 106500 /* ClassMember */ & 900095 /* EnumMemberExcludes */;
|
|
143679
143760
|
return !!(symbol.flags & memberFlags) && (isClassLike(location) || location.parent && location.parent.parent && isClassElement(location.parent) && location === location.parent.name && location.parent.getLastToken(sourceFile) === location.parent.name && isClassLike(location.parent.parent) || location.parent && isSyntaxList(location) && isClassLike(location.parent));
|
|
143680
143761
|
}
|
|
143681
|
-
function getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, contextToken, formatContext) {
|
|
143762
|
+
function getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, position, contextToken, formatContext) {
|
|
143682
143763
|
const classLikeDeclaration = findAncestor(location, isClassLike);
|
|
143683
143764
|
if (!classLikeDeclaration) {
|
|
143684
143765
|
return { insertText: name };
|
|
@@ -143714,7 +143795,7 @@ ${lanes.join("\n")}
|
|
|
143714
143795
|
);
|
|
143715
143796
|
}
|
|
143716
143797
|
let modifiers = 0 /* None */;
|
|
143717
|
-
const { modifiers: presentModifiers, span: modifiersSpan } = getPresentModifiers(contextToken);
|
|
143798
|
+
const { modifiers: presentModifiers, span: modifiersSpan } = getPresentModifiers(contextToken, sourceFile, position);
|
|
143718
143799
|
const isAbstract = !!(presentModifiers & 256 /* Abstract */);
|
|
143719
143800
|
const completionNodes = [];
|
|
143720
143801
|
ts_codefix_exports.addNewNodeForMemberSymbol(
|
|
@@ -143769,8 +143850,8 @@ ${lanes.join("\n")}
|
|
|
143769
143850
|
}
|
|
143770
143851
|
return { insertText, isSnippet, importAdder, replacementSpan };
|
|
143771
143852
|
}
|
|
143772
|
-
function getPresentModifiers(contextToken) {
|
|
143773
|
-
if (!contextToken) {
|
|
143853
|
+
function getPresentModifiers(contextToken, sourceFile, position) {
|
|
143854
|
+
if (!contextToken || getLineAndCharacterOfPosition(sourceFile, position).line > getLineAndCharacterOfPosition(sourceFile, contextToken.getEnd()).line) {
|
|
143774
143855
|
return { modifiers: 0 /* None */ };
|
|
143775
143856
|
}
|
|
143776
143857
|
let modifiers = 0 /* None */;
|
|
@@ -144136,7 +144217,7 @@ ${lanes.join("\n")}
|
|
|
144136
144217
|
return "TypeOnlyAlias/" /* TypeOnlyAlias */;
|
|
144137
144218
|
}
|
|
144138
144219
|
}
|
|
144139
|
-
function getCompletionEntriesFromSymbols(symbols, entries, replacementToken, contextToken, location, sourceFile, host, program, target, log, kind, preferences, compilerOptions, formatContext, isTypeOnlyLocation, propertyAccessToConvert, jsxIdentifierExpected, isJsxInitializer, importStatementCompletion, recommendedCompletion, symbolToOriginInfoMap, symbolToSortTextMap, isJsxIdentifierExpected, isRightOfOpenTag) {
|
|
144220
|
+
function getCompletionEntriesFromSymbols(symbols, entries, replacementToken, contextToken, location, position, sourceFile, host, program, target, log, kind, preferences, compilerOptions, formatContext, isTypeOnlyLocation, propertyAccessToConvert, jsxIdentifierExpected, isJsxInitializer, importStatementCompletion, recommendedCompletion, symbolToOriginInfoMap, symbolToSortTextMap, isJsxIdentifierExpected, isRightOfOpenTag) {
|
|
144140
144221
|
var _a2;
|
|
144141
144222
|
const start = timestamp();
|
|
144142
144223
|
const variableDeclaration = getVariableDeclaration(location);
|
|
@@ -144159,6 +144240,7 @@ ${lanes.join("\n")}
|
|
|
144159
144240
|
replacementToken,
|
|
144160
144241
|
contextToken,
|
|
144161
144242
|
location,
|
|
144243
|
+
position,
|
|
144162
144244
|
sourceFile,
|
|
144163
144245
|
host,
|
|
144164
144246
|
program,
|
|
@@ -144402,6 +144484,7 @@ ${lanes.join("\n")}
|
|
|
144402
144484
|
name,
|
|
144403
144485
|
symbol,
|
|
144404
144486
|
location,
|
|
144487
|
+
position,
|
|
144405
144488
|
contextToken,
|
|
144406
144489
|
formatContext
|
|
144407
144490
|
);
|
|
@@ -144765,6 +144848,7 @@ ${lanes.join("\n")}
|
|
|
144765
144848
|
case 347 /* JSDocTypeTag */:
|
|
144766
144849
|
case 349 /* JSDocTypedefTag */:
|
|
144767
144850
|
case 352 /* JSDocThrowsTag */:
|
|
144851
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
144768
144852
|
return true;
|
|
144769
144853
|
case 348 /* JSDocTemplateTag */:
|
|
144770
144854
|
return !!tag.constraint;
|
|
@@ -146012,7 +146096,7 @@ ${lanes.join("\n")}
|
|
|
146012
146096
|
function tryGetObjectTypeDeclarationCompletionContainer(sourceFile, contextToken, location, position) {
|
|
146013
146097
|
var _a2;
|
|
146014
146098
|
switch (location.kind) {
|
|
146015
|
-
case
|
|
146099
|
+
case 354 /* SyntaxList */:
|
|
146016
146100
|
return tryCast(location.parent, isObjectTypeDeclaration);
|
|
146017
146101
|
case 1 /* EndOfFileToken */:
|
|
146018
146102
|
const cls = tryCast(lastOrUndefined(cast(location.parent, isSourceFile).statements), isObjectTypeDeclaration);
|
|
@@ -146430,10 +146514,10 @@ ${lanes.join("\n")}
|
|
|
146430
146514
|
if (!contextToken || !isStringLiteralLike(contextToken))
|
|
146431
146515
|
return void 0;
|
|
146432
146516
|
const entries = getStringLiteralCompletionEntries(sourceFile, contextToken, position, program.getTypeChecker(), options, host, preferences);
|
|
146433
|
-
return convertStringLiteralCompletions(entries, contextToken, sourceFile, host, program, log, options, preferences);
|
|
146517
|
+
return convertStringLiteralCompletions(entries, contextToken, sourceFile, host, program, log, options, preferences, position);
|
|
146434
146518
|
}
|
|
146435
146519
|
}
|
|
146436
|
-
function convertStringLiteralCompletions(completion, contextToken, sourceFile, host, program, log, options, preferences) {
|
|
146520
|
+
function convertStringLiteralCompletions(completion, contextToken, sourceFile, host, program, log, options, preferences, position) {
|
|
146437
146521
|
if (completion === void 0) {
|
|
146438
146522
|
return void 0;
|
|
146439
146523
|
}
|
|
@@ -146449,6 +146533,7 @@ ${lanes.join("\n")}
|
|
|
146449
146533
|
contextToken,
|
|
146450
146534
|
contextToken,
|
|
146451
146535
|
sourceFile,
|
|
146536
|
+
position,
|
|
146452
146537
|
sourceFile,
|
|
146453
146538
|
host,
|
|
146454
146539
|
program,
|
|
@@ -147078,7 +147163,7 @@ ${lanes.join("\n")}
|
|
|
147078
147163
|
}
|
|
147079
147164
|
function getAmbientModuleCompletions(fragment, fragmentDirectory, checker) {
|
|
147080
147165
|
const ambientModules = checker.getAmbientModules().map((sym) => stripQuotes(sym.name));
|
|
147081
|
-
const nonRelativeModuleNames = ambientModules.filter((moduleName) => startsWith(moduleName, fragment));
|
|
147166
|
+
const nonRelativeModuleNames = ambientModules.filter((moduleName) => startsWith(moduleName, fragment) && moduleName.indexOf("*") < 0);
|
|
147082
147167
|
if (fragmentDirectory !== void 0) {
|
|
147083
147168
|
const moduleNameWithSeparator = ensureTrailingDirectorySeparator(fragmentDirectory);
|
|
147084
147169
|
return nonRelativeModuleNames.map((nonRelativeModuleName) => removePrefix(nonRelativeModuleName, moduleNameWithSeparator));
|
|
@@ -150613,6 +150698,7 @@ ${lanes.join("\n")}
|
|
|
150613
150698
|
}
|
|
150614
150699
|
return displayParts;
|
|
150615
150700
|
case 347 /* JSDocTypeTag */:
|
|
150701
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
150616
150702
|
return withNode(tag.typeExpression);
|
|
150617
150703
|
case 349 /* JSDocTypedefTag */:
|
|
150618
150704
|
case 341 /* JSDocCallbackTag */:
|
|
@@ -150902,6 +150988,7 @@ ${lanes.join("\n")}
|
|
|
150902
150988
|
"readonly",
|
|
150903
150989
|
"requires",
|
|
150904
150990
|
"returns",
|
|
150991
|
+
"satisfies",
|
|
150905
150992
|
"see",
|
|
150906
150993
|
"since",
|
|
150907
150994
|
"static",
|
|
@@ -165166,6 +165253,8 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165166
165253
|
getJSDocReturnTag: () => getJSDocReturnTag,
|
|
165167
165254
|
getJSDocReturnType: () => getJSDocReturnType,
|
|
165168
165255
|
getJSDocRoot: () => getJSDocRoot,
|
|
165256
|
+
getJSDocSatisfiesExpressionType: () => getJSDocSatisfiesExpressionType,
|
|
165257
|
+
getJSDocSatisfiesTag: () => getJSDocSatisfiesTag,
|
|
165169
165258
|
getJSDocTags: () => getJSDocTags,
|
|
165170
165259
|
getJSDocTagsNoCache: () => getJSDocTagsNoCache,
|
|
165171
165260
|
getJSDocTemplateTag: () => getJSDocTemplateTag,
|
|
@@ -165792,6 +165881,8 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165792
165881
|
isJSDocPublicTag: () => isJSDocPublicTag,
|
|
165793
165882
|
isJSDocReadonlyTag: () => isJSDocReadonlyTag,
|
|
165794
165883
|
isJSDocReturnTag: () => isJSDocReturnTag,
|
|
165884
|
+
isJSDocSatisfiesExpression: () => isJSDocSatisfiesExpression,
|
|
165885
|
+
isJSDocSatisfiesTag: () => isJSDocSatisfiesTag,
|
|
165795
165886
|
isJSDocSeeTag: () => isJSDocSeeTag,
|
|
165796
165887
|
isJSDocSignature: () => isJSDocSignature,
|
|
165797
165888
|
isJSDocTag: () => isJSDocTag,
|
|
@@ -165852,6 +165943,8 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165852
165943
|
isLogicalOperator: () => isLogicalOperator,
|
|
165853
165944
|
isLogicalOrCoalescingAssignmentExpression: () => isLogicalOrCoalescingAssignmentExpression,
|
|
165854
165945
|
isLogicalOrCoalescingAssignmentOperator: () => isLogicalOrCoalescingAssignmentOperator,
|
|
165946
|
+
isLogicalOrCoalescingBinaryExpression: () => isLogicalOrCoalescingBinaryExpression,
|
|
165947
|
+
isLogicalOrCoalescingBinaryOperator: () => isLogicalOrCoalescingBinaryOperator,
|
|
165855
165948
|
isMappedTypeNode: () => isMappedTypeNode,
|
|
165856
165949
|
isMemberName: () => isMemberName,
|
|
165857
165950
|
isMergeDeclarationMarker: () => isMergeDeclarationMarker,
|
|
@@ -166537,6 +166630,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
166537
166630
|
tryGetDirectories: () => tryGetDirectories,
|
|
166538
166631
|
tryGetExtensionFromPath: () => tryGetExtensionFromPath2,
|
|
166539
166632
|
tryGetImportFromModuleSpecifier: () => tryGetImportFromModuleSpecifier,
|
|
166633
|
+
tryGetJSDocSatisfiesTypeNode: () => tryGetJSDocSatisfiesTypeNode,
|
|
166540
166634
|
tryGetModuleNameFromFile: () => tryGetModuleNameFromFile,
|
|
166541
166635
|
tryGetModuleSpecifierFromDeclaration: () => tryGetModuleSpecifierFromDeclaration,
|
|
166542
166636
|
tryGetNativePerformanceHooks: () => tryGetNativePerformanceHooks,
|