@typescript-deploys/pr-build 5.0.0-pr-49929-73 → 5.0.0-pr-52280-7
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 +206 -131
- package/lib/tsserver.js +239 -140
- package/lib/tsserverlibrary.d.ts +19 -10
- package/lib/tsserverlibrary.js +232 -140
- package/lib/typescript.d.ts +19 -10
- package/lib/typescript.js +225 -140
- package/lib/typingsInstaller.js +77 -44
- package/package.json +2 -2
package/lib/tsserverlibrary.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.20230118`;
|
|
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."),
|
|
@@ -8117,7 +8117,7 @@ ${lanes.join("\n")}
|
|
|
8117
8117
|
Compiler_option_0_may_only_be_used_with_build: diag(5093, 1 /* Error */, "Compiler_option_0_may_only_be_used_with_build_5093", "Compiler option '--{0}' may only be used with '--build'."),
|
|
8118
8118
|
Compiler_option_0_may_not_be_used_with_build: diag(5094, 1 /* Error */, "Compiler_option_0_may_not_be_used_with_build_5094", "Compiler option '--{0}' may not be used with '--build'."),
|
|
8119
8119
|
Option_preserveValueImports_can_only_be_used_when_module_is_set_to_es2015_or_later: diag(5095, 1 /* Error */, "Option_preserveValueImports_can_only_be_used_when_module_is_set_to_es2015_or_later_5095", "Option 'preserveValueImports' can only be used when 'module' is set to 'es2015' or later."),
|
|
8120
|
-
|
|
8120
|
+
Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set: diag(5096, 1 /* Error */, "Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096", "Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),
|
|
8121
8121
|
An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled: diag(5097, 1 /* Error */, "An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097", "An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),
|
|
8122
8122
|
Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler: diag(5098, 1 /* Error */, "Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098", "Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),
|
|
8123
8123
|
Import_assignment_is_not_allowed_when_moduleResolution_is_set_to_bundler_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead: diag(5099, 1 /* Error */, "Import_assignment_is_not_allowed_when_moduleResolution_is_set_to_bundler_Consider_using_import_Aster_5099", `Import assignment is not allowed when 'moduleResolution' is set to 'bundler'. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),
|
|
@@ -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) {
|
|
@@ -12353,8 +12357,8 @@ ${lanes.join("\n")}
|
|
|
12353
12357
|
case 227 /* SpreadElement */:
|
|
12354
12358
|
case 231 /* AsExpression */:
|
|
12355
12359
|
case 229 /* OmittedExpression */:
|
|
12356
|
-
case
|
|
12357
|
-
case
|
|
12360
|
+
case 357 /* CommaListExpression */:
|
|
12361
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
12358
12362
|
case 235 /* SatisfiesExpression */:
|
|
12359
12363
|
return true;
|
|
12360
12364
|
default:
|
|
@@ -12539,7 +12543,7 @@ ${lanes.join("\n")}
|
|
|
12539
12543
|
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 */;
|
|
12540
12544
|
}
|
|
12541
12545
|
function isStatementKindButNotDeclarationKind(kind) {
|
|
12542
|
-
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 ===
|
|
12546
|
+
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 */;
|
|
12543
12547
|
}
|
|
12544
12548
|
function isDeclaration(node) {
|
|
12545
12549
|
if (node.kind === 165 /* TypeParameter */) {
|
|
@@ -12600,13 +12604,13 @@ ${lanes.join("\n")}
|
|
|
12600
12604
|
return kind === 292 /* CaseClause */ || kind === 293 /* DefaultClause */;
|
|
12601
12605
|
}
|
|
12602
12606
|
function isJSDocNode(node) {
|
|
12603
|
-
return node.kind >= 312 /* FirstJSDocNode */ && node.kind <=
|
|
12607
|
+
return node.kind >= 312 /* FirstJSDocNode */ && node.kind <= 353 /* LastJSDocNode */;
|
|
12604
12608
|
}
|
|
12605
12609
|
function isJSDocCommentContainingNode(node) {
|
|
12606
12610
|
return node.kind === 323 /* JSDoc */ || node.kind === 322 /* JSDocNamepathType */ || node.kind === 324 /* JSDocText */ || isJSDocLinkLike(node) || isJSDocTag(node) || isJSDocTypeLiteral(node) || isJSDocSignature(node);
|
|
12607
12611
|
}
|
|
12608
12612
|
function isJSDocTag(node) {
|
|
12609
|
-
return node.kind >= 330 /* FirstJSDocTagNode */ && node.kind <=
|
|
12613
|
+
return node.kind >= 330 /* FirstJSDocTagNode */ && node.kind <= 353 /* LastJSDocTagNode */;
|
|
12610
12614
|
}
|
|
12611
12615
|
function isSetAccessor(node) {
|
|
12612
12616
|
return node.kind === 175 /* SetAccessor */;
|
|
@@ -13026,7 +13030,7 @@ ${lanes.join("\n")}
|
|
|
13026
13030
|
if (includeJsDoc && hasJSDocNodes(node)) {
|
|
13027
13031
|
return getTokenPosOfNode(node.jsDoc[0], sourceFile);
|
|
13028
13032
|
}
|
|
13029
|
-
if (node.kind ===
|
|
13033
|
+
if (node.kind === 354 /* SyntaxList */ && node._children.length > 0) {
|
|
13030
13034
|
return getTokenPosOfNode(node._children[0], sourceFile, includeJsDoc);
|
|
13031
13035
|
}
|
|
13032
13036
|
return skipTrivia(
|
|
@@ -14894,7 +14898,7 @@ ${lanes.join("\n")}
|
|
|
14894
14898
|
return ownsJSDocTag(hostNode, jsDoc) ? [jsDoc] : void 0;
|
|
14895
14899
|
}
|
|
14896
14900
|
function ownsJSDocTag(hostNode, tag) {
|
|
14897
|
-
return !isJSDocTypeTag(tag) || !tag.parent || !isJSDoc(tag.parent) || !isParenthesizedExpression(tag.parent.parent) || tag.parent.parent === hostNode;
|
|
14901
|
+
return !(isJSDocTypeTag(tag) || isJSDocSatisfiesTag(tag)) || !tag.parent || !isJSDoc(tag.parent) || !isParenthesizedExpression(tag.parent.parent) || tag.parent.parent === hostNode;
|
|
14898
14902
|
}
|
|
14899
14903
|
function getNextJSDocCommentLocation(node) {
|
|
14900
14904
|
const parent2 = node.parent;
|
|
@@ -15430,7 +15434,7 @@ ${lanes.join("\n")}
|
|
|
15430
15434
|
}
|
|
15431
15435
|
function getOperatorPrecedence(nodeKind, operatorKind, hasArguments) {
|
|
15432
15436
|
switch (nodeKind) {
|
|
15433
|
-
case
|
|
15437
|
+
case 357 /* CommaListExpression */:
|
|
15434
15438
|
return 0 /* Comma */;
|
|
15435
15439
|
case 227 /* SpreadElement */:
|
|
15436
15440
|
return 1 /* Spread */;
|
|
@@ -16400,14 +16404,23 @@ ${lanes.join("\n")}
|
|
|
16400
16404
|
}
|
|
16401
16405
|
return 0 /* None */;
|
|
16402
16406
|
}
|
|
16407
|
+
function isBinaryLogicalOperator(token) {
|
|
16408
|
+
return token === 56 /* BarBarToken */ || token === 55 /* AmpersandAmpersandToken */;
|
|
16409
|
+
}
|
|
16403
16410
|
function isLogicalOperator(token) {
|
|
16404
|
-
return token
|
|
16411
|
+
return isBinaryLogicalOperator(token) || token === 53 /* ExclamationToken */;
|
|
16405
16412
|
}
|
|
16406
16413
|
function isLogicalOrCoalescingAssignmentOperator(token) {
|
|
16407
16414
|
return token === 75 /* BarBarEqualsToken */ || token === 76 /* AmpersandAmpersandEqualsToken */ || token === 77 /* QuestionQuestionEqualsToken */;
|
|
16408
16415
|
}
|
|
16409
16416
|
function isLogicalOrCoalescingAssignmentExpression(expr) {
|
|
16410
|
-
return isLogicalOrCoalescingAssignmentOperator(expr.operatorToken.kind);
|
|
16417
|
+
return isBinaryExpression(expr) && isLogicalOrCoalescingAssignmentOperator(expr.operatorToken.kind);
|
|
16418
|
+
}
|
|
16419
|
+
function isLogicalOrCoalescingBinaryOperator(token) {
|
|
16420
|
+
return isBinaryLogicalOperator(token) || token === 60 /* QuestionQuestionToken */;
|
|
16421
|
+
}
|
|
16422
|
+
function isLogicalOrCoalescingBinaryExpression(expr) {
|
|
16423
|
+
return isBinaryExpression(expr) && isLogicalOrCoalescingBinaryOperator(expr.operatorToken.kind);
|
|
16411
16424
|
}
|
|
16412
16425
|
function isAssignmentOperator(token) {
|
|
16413
16426
|
return token >= 63 /* FirstAssignment */ && token <= 78 /* LastAssignment */;
|
|
@@ -17044,7 +17057,7 @@ ${lanes.join("\n")}
|
|
|
17044
17057
|
case 209 /* ElementAccessExpression */:
|
|
17045
17058
|
case 208 /* PropertyAccessExpression */:
|
|
17046
17059
|
case 232 /* NonNullExpression */:
|
|
17047
|
-
case
|
|
17060
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
17048
17061
|
case 235 /* SatisfiesExpression */:
|
|
17049
17062
|
node = node.expression;
|
|
17050
17063
|
continue;
|
|
@@ -18285,7 +18298,7 @@ ${lanes.join("\n")}
|
|
|
18285
18298
|
return parent2.types;
|
|
18286
18299
|
case 186 /* TupleType */:
|
|
18287
18300
|
case 206 /* ArrayLiteralExpression */:
|
|
18288
|
-
case
|
|
18301
|
+
case 357 /* CommaListExpression */:
|
|
18289
18302
|
case 272 /* NamedImports */:
|
|
18290
18303
|
case 276 /* NamedExports */:
|
|
18291
18304
|
return parent2.elements;
|
|
@@ -18470,6 +18483,16 @@ ${lanes.join("\n")}
|
|
|
18470
18483
|
const kind = node.kind;
|
|
18471
18484
|
return (kind === 208 /* PropertyAccessExpression */ || kind === 209 /* ElementAccessExpression */) && isNonNullExpression(node.expression);
|
|
18472
18485
|
}
|
|
18486
|
+
function isJSDocSatisfiesExpression(node) {
|
|
18487
|
+
return isInJSFile(node) && isParenthesizedExpression(node) && hasJSDocNodes(node) && !!getJSDocSatisfiesTag(node);
|
|
18488
|
+
}
|
|
18489
|
+
function getJSDocSatisfiesExpressionType(node) {
|
|
18490
|
+
return Debug.checkDefined(tryGetJSDocSatisfiesTypeNode(node));
|
|
18491
|
+
}
|
|
18492
|
+
function tryGetJSDocSatisfiesTypeNode(node) {
|
|
18493
|
+
const tag = getJSDocSatisfiesTag(node);
|
|
18494
|
+
return tag && tag.typeExpression && tag.typeExpression.type;
|
|
18495
|
+
}
|
|
18473
18496
|
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;
|
|
18474
18497
|
var init_utilities = __esm({
|
|
18475
18498
|
"src/compiler/utilities.ts"() {
|
|
@@ -19688,6 +19711,12 @@ ${lanes.join("\n")}
|
|
|
19688
19711
|
get updateJSDocThrowsTag() {
|
|
19689
19712
|
return getJSDocTypeLikeTagUpdateFunction(352 /* JSDocThrowsTag */);
|
|
19690
19713
|
},
|
|
19714
|
+
get createJSDocSatisfiesTag() {
|
|
19715
|
+
return getJSDocTypeLikeTagCreateFunction(353 /* JSDocSatisfiesTag */);
|
|
19716
|
+
},
|
|
19717
|
+
get updateJSDocSatisfiesTag() {
|
|
19718
|
+
return getJSDocTypeLikeTagUpdateFunction(353 /* JSDocSatisfiesTag */);
|
|
19719
|
+
},
|
|
19691
19720
|
createJSDocEnumTag: createJSDocEnumTag2,
|
|
19692
19721
|
updateJSDocEnumTag,
|
|
19693
19722
|
createJSDocUnknownTag,
|
|
@@ -22847,18 +22876,18 @@ ${lanes.join("\n")}
|
|
|
22847
22876
|
return node;
|
|
22848
22877
|
}
|
|
22849
22878
|
function createSyntaxList3(children) {
|
|
22850
|
-
const node = createBaseNode(
|
|
22879
|
+
const node = createBaseNode(354 /* SyntaxList */);
|
|
22851
22880
|
node._children = children;
|
|
22852
22881
|
return node;
|
|
22853
22882
|
}
|
|
22854
22883
|
function createNotEmittedStatement2(original) {
|
|
22855
|
-
const node = createBaseNode(
|
|
22884
|
+
const node = createBaseNode(355 /* NotEmittedStatement */);
|
|
22856
22885
|
node.original = original;
|
|
22857
22886
|
setTextRange(node, original);
|
|
22858
22887
|
return node;
|
|
22859
22888
|
}
|
|
22860
22889
|
function createPartiallyEmittedExpression2(expression, original) {
|
|
22861
|
-
const node = createBaseNode(
|
|
22890
|
+
const node = createBaseNode(356 /* PartiallyEmittedExpression */);
|
|
22862
22891
|
node.expression = expression;
|
|
22863
22892
|
node.original = original;
|
|
22864
22893
|
node.transformFlags |= propagateChildFlags(node.expression) | 1 /* ContainsTypeScript */;
|
|
@@ -22880,7 +22909,7 @@ ${lanes.join("\n")}
|
|
|
22880
22909
|
return node;
|
|
22881
22910
|
}
|
|
22882
22911
|
function createCommaListExpression(elements) {
|
|
22883
|
-
const node = createBaseNode(
|
|
22912
|
+
const node = createBaseNode(357 /* CommaListExpression */);
|
|
22884
22913
|
node.elements = createNodeArray2(sameFlatMap(elements, flattenCommaElements));
|
|
22885
22914
|
node.transformFlags |= propagateChildrenFlags(node.elements);
|
|
22886
22915
|
return node;
|
|
@@ -22889,19 +22918,19 @@ ${lanes.join("\n")}
|
|
|
22889
22918
|
return node.elements !== elements ? update(createCommaListExpression(elements), node) : node;
|
|
22890
22919
|
}
|
|
22891
22920
|
function createEndOfDeclarationMarker(original) {
|
|
22892
|
-
const node = createBaseNode(
|
|
22921
|
+
const node = createBaseNode(359 /* EndOfDeclarationMarker */);
|
|
22893
22922
|
node.emitNode = {};
|
|
22894
22923
|
node.original = original;
|
|
22895
22924
|
return node;
|
|
22896
22925
|
}
|
|
22897
22926
|
function createMergeDeclarationMarker(original) {
|
|
22898
|
-
const node = createBaseNode(
|
|
22927
|
+
const node = createBaseNode(358 /* MergeDeclarationMarker */);
|
|
22899
22928
|
node.emitNode = {};
|
|
22900
22929
|
node.original = original;
|
|
22901
22930
|
return node;
|
|
22902
22931
|
}
|
|
22903
22932
|
function createSyntheticReferenceExpression(expression, thisArg) {
|
|
22904
|
-
const node = createBaseNode(
|
|
22933
|
+
const node = createBaseNode(360 /* SyntheticReferenceExpression */);
|
|
22905
22934
|
node.expression = expression;
|
|
22906
22935
|
node.thisArg = thisArg;
|
|
22907
22936
|
node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.thisArg);
|
|
@@ -23141,7 +23170,7 @@ ${lanes.join("\n")}
|
|
|
23141
23170
|
return updateSatisfiesExpression(outerExpression, expression, outerExpression.type);
|
|
23142
23171
|
case 232 /* NonNullExpression */:
|
|
23143
23172
|
return updateNonNullExpression2(outerExpression, expression);
|
|
23144
|
-
case
|
|
23173
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
23145
23174
|
return updatePartiallyEmittedExpression2(outerExpression, expression);
|
|
23146
23175
|
}
|
|
23147
23176
|
}
|
|
@@ -23675,7 +23704,7 @@ ${lanes.join("\n")}
|
|
|
23675
23704
|
case 213 /* TypeAssertionExpression */:
|
|
23676
23705
|
case 235 /* SatisfiesExpression */:
|
|
23677
23706
|
case 231 /* AsExpression */:
|
|
23678
|
-
case
|
|
23707
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
23679
23708
|
case 214 /* ParenthesizedExpression */:
|
|
23680
23709
|
case 106 /* SuperKeyword */:
|
|
23681
23710
|
return -2147483648 /* OuterExpressionExcludes */;
|
|
@@ -25343,10 +25372,10 @@ ${lanes.join("\n")}
|
|
|
25343
25372
|
return node.kind === 234 /* SyntheticExpression */;
|
|
25344
25373
|
}
|
|
25345
25374
|
function isPartiallyEmittedExpression(node) {
|
|
25346
|
-
return node.kind ===
|
|
25375
|
+
return node.kind === 356 /* PartiallyEmittedExpression */;
|
|
25347
25376
|
}
|
|
25348
25377
|
function isCommaListExpression(node) {
|
|
25349
|
-
return node.kind ===
|
|
25378
|
+
return node.kind === 357 /* CommaListExpression */;
|
|
25350
25379
|
}
|
|
25351
25380
|
function isTemplateSpan(node) {
|
|
25352
25381
|
return node.kind === 236 /* TemplateSpan */;
|
|
@@ -25490,16 +25519,16 @@ ${lanes.join("\n")}
|
|
|
25490
25519
|
return node.kind === 279 /* MissingDeclaration */;
|
|
25491
25520
|
}
|
|
25492
25521
|
function isNotEmittedStatement(node) {
|
|
25493
|
-
return node.kind ===
|
|
25522
|
+
return node.kind === 355 /* NotEmittedStatement */;
|
|
25494
25523
|
}
|
|
25495
25524
|
function isSyntheticReference(node) {
|
|
25496
|
-
return node.kind ===
|
|
25525
|
+
return node.kind === 360 /* SyntheticReferenceExpression */;
|
|
25497
25526
|
}
|
|
25498
25527
|
function isMergeDeclarationMarker(node) {
|
|
25499
|
-
return node.kind ===
|
|
25528
|
+
return node.kind === 358 /* MergeDeclarationMarker */;
|
|
25500
25529
|
}
|
|
25501
25530
|
function isEndOfDeclarationMarker(node) {
|
|
25502
|
-
return node.kind ===
|
|
25531
|
+
return node.kind === 359 /* EndOfDeclarationMarker */;
|
|
25503
25532
|
}
|
|
25504
25533
|
function isExternalModuleReference(node) {
|
|
25505
25534
|
return node.kind === 280 /* ExternalModuleReference */;
|
|
@@ -25690,11 +25719,14 @@ ${lanes.join("\n")}
|
|
|
25690
25719
|
function isJSDocImplementsTag(node) {
|
|
25691
25720
|
return node.kind === 332 /* JSDocImplementsTag */;
|
|
25692
25721
|
}
|
|
25722
|
+
function isJSDocSatisfiesTag(node) {
|
|
25723
|
+
return node.kind === 353 /* JSDocSatisfiesTag */;
|
|
25724
|
+
}
|
|
25693
25725
|
function isJSDocThrowsTag(node) {
|
|
25694
25726
|
return node.kind === 352 /* JSDocThrowsTag */;
|
|
25695
25727
|
}
|
|
25696
25728
|
function isSyntaxList(n) {
|
|
25697
|
-
return n.kind ===
|
|
25729
|
+
return n.kind === 354 /* SyntaxList */;
|
|
25698
25730
|
}
|
|
25699
25731
|
var init_nodeTests = __esm({
|
|
25700
25732
|
"src/compiler/factory/nodeTests.ts"() {
|
|
@@ -26068,7 +26100,7 @@ ${lanes.join("\n")}
|
|
|
26068
26100
|
return firstStatement !== void 0 && isPrologueDirective(firstStatement) && isUseStrictPrologue(firstStatement);
|
|
26069
26101
|
}
|
|
26070
26102
|
function isCommaSequence(node) {
|
|
26071
|
-
return node.kind === 223 /* BinaryExpression */ && node.operatorToken.kind === 27 /* CommaToken */ || node.kind ===
|
|
26103
|
+
return node.kind === 223 /* BinaryExpression */ && node.operatorToken.kind === 27 /* CommaToken */ || node.kind === 357 /* CommaListExpression */;
|
|
26072
26104
|
}
|
|
26073
26105
|
function isJSDocTypeAssertion(node) {
|
|
26074
26106
|
return isParenthesizedExpression(node) && isInJSFile(node) && !!getJSDocTypeTag(node);
|
|
@@ -26091,7 +26123,7 @@ ${lanes.join("\n")}
|
|
|
26091
26123
|
return (kinds & 2 /* TypeAssertions */) !== 0;
|
|
26092
26124
|
case 232 /* NonNullExpression */:
|
|
26093
26125
|
return (kinds & 4 /* NonNullAssertions */) !== 0;
|
|
26094
|
-
case
|
|
26126
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
26095
26127
|
return (kinds & 8 /* PartiallyEmittedExpressions */) !== 0;
|
|
26096
26128
|
}
|
|
26097
26129
|
return false;
|
|
@@ -27500,7 +27532,7 @@ ${lanes.join("\n")}
|
|
|
27500
27532
|
[279 /* MissingDeclaration */]: function forEachChildInMissingDeclaration(node, cbNode, cbNodes) {
|
|
27501
27533
|
return visitNodes(cbNode, cbNodes, node.illegalDecorators) || visitNodes(cbNode, cbNodes, node.modifiers);
|
|
27502
27534
|
},
|
|
27503
|
-
[
|
|
27535
|
+
[357 /* CommaListExpression */]: function forEachChildInCommaListExpression(node, cbNode, cbNodes) {
|
|
27504
27536
|
return visitNodes(cbNode, cbNodes, node.elements);
|
|
27505
27537
|
},
|
|
27506
27538
|
[281 /* JsxElement */]: function forEachChildInJsxElement(node, cbNode, cbNodes) {
|
|
@@ -27572,6 +27604,7 @@ ${lanes.join("\n")}
|
|
|
27572
27604
|
[347 /* JSDocTypeTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27573
27605
|
[346 /* JSDocThisTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27574
27606
|
[343 /* JSDocEnumTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27607
|
+
[353 /* JSDocSatisfiesTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27575
27608
|
[352 /* JSDocThrowsTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27576
27609
|
[342 /* JSDocOverloadTag */]: forEachChildInJSDocTypeLikeTag,
|
|
27577
27610
|
[326 /* JSDocSignature */]: function forEachChildInJSDocSignature(node, cbNode, _cbNodes) {
|
|
@@ -27591,7 +27624,7 @@ ${lanes.join("\n")}
|
|
|
27591
27624
|
[339 /* JSDocReadonlyTag */]: forEachChildInJSDocTag,
|
|
27592
27625
|
[334 /* JSDocDeprecatedTag */]: forEachChildInJSDocTag,
|
|
27593
27626
|
[340 /* JSDocOverrideTag */]: forEachChildInJSDocTag,
|
|
27594
|
-
[
|
|
27627
|
+
[356 /* PartiallyEmittedExpression */]: forEachChildInPartiallyEmittedExpression
|
|
27595
27628
|
};
|
|
27596
27629
|
((Parser2) => {
|
|
27597
27630
|
const scanner2 = createScanner(
|
|
@@ -33484,6 +33517,9 @@ ${lanes.join("\n")}
|
|
|
33484
33517
|
case "overload":
|
|
33485
33518
|
tag = parseOverloadTag(start2, tagName, margin, indentText);
|
|
33486
33519
|
break;
|
|
33520
|
+
case "satisfies":
|
|
33521
|
+
tag = parseSatisfiesTag(start2, tagName, margin, indentText);
|
|
33522
|
+
break;
|
|
33487
33523
|
case "see":
|
|
33488
33524
|
tag = parseSeeTag(start2, tagName, margin, indentText);
|
|
33489
33525
|
break;
|
|
@@ -33792,6 +33828,14 @@ ${lanes.join("\n")}
|
|
|
33792
33828
|
const className = parseExpressionWithTypeArgumentsForAugments();
|
|
33793
33829
|
return finishNode(factory2.createJSDocAugmentsTag(tagName, className, parseTrailingTagComments(start2, getNodePos(), margin, indentText)), start2);
|
|
33794
33830
|
}
|
|
33831
|
+
function parseSatisfiesTag(start2, tagName, margin, indentText) {
|
|
33832
|
+
const typeExpression = parseJSDocTypeExpression(
|
|
33833
|
+
/*mayOmitBraces*/
|
|
33834
|
+
false
|
|
33835
|
+
);
|
|
33836
|
+
const comments2 = margin !== void 0 && indentText !== void 0 ? parseTrailingTagComments(start2, getNodePos(), margin, indentText) : void 0;
|
|
33837
|
+
return finishNode(factory2.createJSDocSatisfiesTag(tagName, typeExpression, comments2), start2);
|
|
33838
|
+
}
|
|
33795
33839
|
function parseExpressionWithTypeArgumentsForAugments() {
|
|
33796
33840
|
const usedBrace = parseOptional(18 /* OpenBraceToken */);
|
|
33797
33841
|
const pos = getNodePos();
|
|
@@ -35697,7 +35741,7 @@ ${lanes.join("\n")}
|
|
|
35697
35741
|
const watchOptions = convertWatchOptionsFromJsonWorker(json.watchOptions, basePath, errors);
|
|
35698
35742
|
json.compileOnSave = convertCompileOnSaveOptionFromJson(json, basePath, errors);
|
|
35699
35743
|
let extendedConfigPath;
|
|
35700
|
-
if (json.extends) {
|
|
35744
|
+
if (json.extends || json.extends === "") {
|
|
35701
35745
|
if (!isCompilerOptionsValue(extendsOptionDeclaration, json.extends)) {
|
|
35702
35746
|
errors.push(createCompilerDiagnostic(Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "extends", getCompilerOptionValueTypeString(extendsOptionDeclaration)));
|
|
35703
35747
|
} else {
|
|
@@ -35824,7 +35868,11 @@ ${lanes.join("\n")}
|
|
|
35824
35868
|
if (resolved.resolvedModule) {
|
|
35825
35869
|
return resolved.resolvedModule.resolvedFileName;
|
|
35826
35870
|
}
|
|
35827
|
-
|
|
35871
|
+
if (extendedConfig === "") {
|
|
35872
|
+
errors.push(createDiagnostic(Diagnostics.Compiler_option_0_cannot_be_given_an_empty_string, "extends"));
|
|
35873
|
+
} else {
|
|
35874
|
+
errors.push(createDiagnostic(Diagnostics.File_0_not_found, extendedConfig));
|
|
35875
|
+
}
|
|
35828
35876
|
return void 0;
|
|
35829
35877
|
}
|
|
35830
35878
|
function getExtendedConfig(sourceFile, extendedConfigPath, host, resolutionStack, errors, extendedConfigCache, result) {
|
|
@@ -37194,7 +37242,7 @@ ${lanes.join("\n")}
|
|
|
37194
37242
|
{
|
|
37195
37243
|
name: "allowImportingTsExtensions",
|
|
37196
37244
|
type: "boolean",
|
|
37197
|
-
|
|
37245
|
+
affectsSemanticDiagnostics: true,
|
|
37198
37246
|
category: Diagnostics.Modules,
|
|
37199
37247
|
description: Diagnostics.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,
|
|
37200
37248
|
defaultValueDescription: false
|
|
@@ -40181,7 +40229,7 @@ ${lanes.join("\n")}
|
|
|
40181
40229
|
}
|
|
40182
40230
|
}
|
|
40183
40231
|
function shouldAllowImportingTsExtension(compilerOptions, fromFileName) {
|
|
40184
|
-
return
|
|
40232
|
+
return !!compilerOptions.allowImportingTsExtensions || fromFileName && isDeclarationFileName(fromFileName);
|
|
40185
40233
|
}
|
|
40186
40234
|
function loadModuleFromGlobalCache(moduleName, projectName, compilerOptions, host, globalCache, packageJsonInfoCache) {
|
|
40187
40235
|
const traceEnabled = isTraceEnabled(compilerOptions, host);
|
|
@@ -41072,13 +41120,12 @@ ${lanes.join("\n")}
|
|
|
41072
41120
|
} else if (node.kind === 221 /* PrefixUnaryExpression */ && node.operator === 53 /* ExclamationToken */) {
|
|
41073
41121
|
node = node.operand;
|
|
41074
41122
|
} else {
|
|
41075
|
-
return
|
|
41123
|
+
return isLogicalOrCoalescingBinaryExpression(node);
|
|
41076
41124
|
}
|
|
41077
41125
|
}
|
|
41078
41126
|
}
|
|
41079
41127
|
function isLogicalAssignmentExpression(node) {
|
|
41080
|
-
|
|
41081
|
-
return isBinaryExpression(node) && isLogicalOrCoalescingAssignmentOperator(node.operatorToken.kind);
|
|
41128
|
+
return isLogicalOrCoalescingAssignmentExpression(skipParentheses(node));
|
|
41082
41129
|
}
|
|
41083
41130
|
function isTopLevelLogicalExpression(node) {
|
|
41084
41131
|
while (isParenthesizedExpression(node.parent) || isPrefixUnaryExpression(node.parent) && node.parent.operator === 53 /* ExclamationToken */) {
|
|
@@ -41461,7 +41508,7 @@ ${lanes.join("\n")}
|
|
|
41461
41508
|
};
|
|
41462
41509
|
}
|
|
41463
41510
|
const operator = node.operatorToken.kind;
|
|
41464
|
-
if (operator
|
|
41511
|
+
if (isLogicalOrCoalescingBinaryOperator(operator) || isLogicalOrCoalescingAssignmentOperator(operator)) {
|
|
41465
41512
|
if (isTopLevelLogicalExpression(node)) {
|
|
41466
41513
|
const postExpressionLabel = createBranchLabel();
|
|
41467
41514
|
bindLogicalLikeExpression(node, postExpressionLabel, postExpressionLabel);
|
|
@@ -52185,6 +52232,9 @@ ${lanes.join("\n")}
|
|
|
52185
52232
|
const isProperty = isPropertyDeclaration(declaration) && !hasAccessorModifier(declaration) || isPropertySignature(declaration) || isJSDocPropertyTag(declaration);
|
|
52186
52233
|
const isOptional = includeOptionality && isOptionalDeclaration(declaration);
|
|
52187
52234
|
const declaredType = tryGetTypeFromEffectiveTypeNode(declaration);
|
|
52235
|
+
if (!declaredType && isCatchClauseVariableDeclarationOrBindingElement(declaration)) {
|
|
52236
|
+
return useUnknownInCatchVariables ? unknownType : anyType;
|
|
52237
|
+
}
|
|
52188
52238
|
if (declaredType) {
|
|
52189
52239
|
return addOptionality(declaredType, isProperty, isOptional);
|
|
52190
52240
|
}
|
|
@@ -52763,14 +52813,6 @@ ${lanes.join("\n")}
|
|
|
52763
52813
|
}
|
|
52764
52814
|
Debug.assertIsDefined(symbol.valueDeclaration);
|
|
52765
52815
|
const declaration = symbol.valueDeclaration;
|
|
52766
|
-
if (isCatchClauseVariableDeclarationOrBindingElement(declaration)) {
|
|
52767
|
-
const typeNode = getEffectiveTypeAnnotationNode(declaration);
|
|
52768
|
-
if (typeNode === void 0) {
|
|
52769
|
-
return useUnknownInCatchVariables ? unknownType : anyType;
|
|
52770
|
-
}
|
|
52771
|
-
const type2 = getTypeOfNode(typeNode);
|
|
52772
|
-
return isTypeAny(type2) || type2 === unknownType ? type2 : errorType;
|
|
52773
|
-
}
|
|
52774
52816
|
if (isSourceFile(declaration) && isJsonSourceFile(declaration)) {
|
|
52775
52817
|
if (!declaration.statements.length) {
|
|
52776
52818
|
return emptyObjectType;
|
|
@@ -66570,7 +66612,7 @@ ${lanes.join("\n")}
|
|
|
66570
66612
|
return getNonMissingTypeOfSymbol(symbol);
|
|
66571
66613
|
}
|
|
66572
66614
|
function getControlFlowContainer(node) {
|
|
66573
|
-
return findAncestor(node.parent, (node2) => isFunctionLike(node2) && !getImmediatelyInvokedFunctionExpression(node2) || node2.kind === 265 /* ModuleBlock */ || node2.kind === 308 /* SourceFile */ || node2.kind === 169 /* PropertyDeclaration */);
|
|
66615
|
+
return findAncestor(node.parent, (node2) => isFunctionLike(node2) && !getImmediatelyInvokedFunctionExpression(node2) || node2.kind === 265 /* ModuleBlock */ || node2.kind === 308 /* SourceFile */ || node2.kind === 295 /* CatchClause */ || node2.kind === 169 /* PropertyDeclaration */);
|
|
66574
66616
|
}
|
|
66575
66617
|
function isSymbolAssigned(symbol) {
|
|
66576
66618
|
if (!symbol.valueDeclaration) {
|
|
@@ -66828,13 +66870,14 @@ ${lanes.join("\n")}
|
|
|
66828
66870
|
const isParameter2 = getRootDeclaration(declaration).kind === 166 /* Parameter */;
|
|
66829
66871
|
const declarationContainer = getControlFlowContainer(declaration);
|
|
66830
66872
|
let flowContainer = getControlFlowContainer(node);
|
|
66873
|
+
const isCatch = flowContainer.kind === 295 /* CatchClause */;
|
|
66831
66874
|
const isOuterVariable = flowContainer !== declarationContainer;
|
|
66832
66875
|
const isSpreadDestructuringAssignmentTarget = node.parent && node.parent.parent && isSpreadAssignment(node.parent) && isDestructuringAssignmentTarget(node.parent.parent);
|
|
66833
66876
|
const isModuleExports = symbol.flags & 134217728 /* ModuleExports */;
|
|
66834
66877
|
while (flowContainer !== declarationContainer && (flowContainer.kind === 215 /* FunctionExpression */ || flowContainer.kind === 216 /* ArrowFunction */ || isObjectLiteralOrClassExpressionMethodOrAccessor(flowContainer)) && (isConstVariable(localOrExportSymbol) && type !== autoArrayType || isParameter2 && !isSymbolAssigned(localOrExportSymbol))) {
|
|
66835
66878
|
flowContainer = getControlFlowContainer(flowContainer);
|
|
66836
66879
|
}
|
|
66837
|
-
const assumeInitialized = isParameter2 || isAlias || isOuterVariable || isSpreadDestructuringAssignmentTarget || isModuleExports || isSameScopedBindingElement(node, declaration) || type !== autoType && type !== autoArrayType && (!strictNullChecks || (type.flags & (3 /* AnyOrUnknown */ | 16384 /* Void */)) !== 0 || isInTypeQuery(node) || isInAmbientOrTypeNode(node) || node.parent.kind === 278 /* ExportSpecifier */) || node.parent.kind === 232 /* NonNullExpression */ || declaration.kind === 257 /* VariableDeclaration */ && declaration.exclamationToken || declaration.flags & 16777216 /* Ambient */;
|
|
66880
|
+
const assumeInitialized = isParameter2 || isCatch || isAlias || isOuterVariable || isSpreadDestructuringAssignmentTarget || isModuleExports || isSameScopedBindingElement(node, declaration) || type !== autoType && type !== autoArrayType && (!strictNullChecks || (type.flags & (3 /* AnyOrUnknown */ | 16384 /* Void */)) !== 0 || isInTypeQuery(node) || isInAmbientOrTypeNode(node) || node.parent.kind === 278 /* ExportSpecifier */) || node.parent.kind === 232 /* NonNullExpression */ || declaration.kind === 257 /* VariableDeclaration */ && declaration.exclamationToken || declaration.flags & 16777216 /* Ambient */;
|
|
66838
66881
|
const initialType = assumeInitialized ? isParameter2 ? removeOptionalityFromDeclaredType(type, declaration) : type : type === autoType || type === autoArrayType ? undefinedType : getOptionalType(type);
|
|
66839
66882
|
const flowType = getFlowTypeOfReference(node, type, initialType, flowContainer);
|
|
66840
66883
|
if (!isEvolvingArrayOperationTarget(node) && (type === autoType || type === autoArrayType)) {
|
|
@@ -67359,7 +67402,7 @@ ${lanes.join("\n")}
|
|
|
67359
67402
|
}
|
|
67360
67403
|
}
|
|
67361
67404
|
function getContextualTypeForVariableLikeDeclaration(declaration, contextFlags) {
|
|
67362
|
-
const typeNode = getEffectiveTypeAnnotationNode(declaration);
|
|
67405
|
+
const typeNode = getEffectiveTypeAnnotationNode(declaration) || (isInJSFile(declaration) ? tryGetJSDocSatisfiesTypeNode(declaration) : void 0);
|
|
67363
67406
|
if (typeNode) {
|
|
67364
67407
|
return getTypeFromTypeNode(typeNode);
|
|
67365
67408
|
}
|
|
@@ -67968,8 +68011,16 @@ ${lanes.join("\n")}
|
|
|
67968
68011
|
Debug.assert(parent2.parent.kind === 225 /* TemplateExpression */);
|
|
67969
68012
|
return getContextualTypeForSubstitutionExpression(parent2.parent, node);
|
|
67970
68013
|
case 214 /* ParenthesizedExpression */: {
|
|
67971
|
-
|
|
67972
|
-
|
|
68014
|
+
if (isInJSFile(parent2)) {
|
|
68015
|
+
if (isJSDocSatisfiesExpression(parent2)) {
|
|
68016
|
+
return getTypeFromTypeNode(getJSDocSatisfiesExpressionType(parent2));
|
|
68017
|
+
}
|
|
68018
|
+
const typeTag = getJSDocTypeTag(parent2);
|
|
68019
|
+
if (typeTag && !isConstTypeReference(typeTag.typeExpression.type)) {
|
|
68020
|
+
return getTypeFromTypeNode(typeTag.typeExpression.type);
|
|
68021
|
+
}
|
|
68022
|
+
}
|
|
68023
|
+
return getContextualType2(parent2, contextFlags);
|
|
67973
68024
|
}
|
|
67974
68025
|
case 232 /* NonNullExpression */:
|
|
67975
68026
|
return getContextualType2(parent2, contextFlags);
|
|
@@ -72173,12 +72224,15 @@ ${lanes.join("\n")}
|
|
|
72173
72224
|
}
|
|
72174
72225
|
function checkSatisfiesExpression(node) {
|
|
72175
72226
|
checkSourceElement(node.type);
|
|
72176
|
-
|
|
72177
|
-
|
|
72227
|
+
return checkSatisfiesExpressionWorker(node.expression, node.type);
|
|
72228
|
+
}
|
|
72229
|
+
function checkSatisfiesExpressionWorker(expression, target, checkMode) {
|
|
72230
|
+
const exprType = checkExpression(expression, checkMode);
|
|
72231
|
+
const targetType = getTypeFromTypeNode(target);
|
|
72178
72232
|
if (isErrorType(targetType)) {
|
|
72179
72233
|
return targetType;
|
|
72180
72234
|
}
|
|
72181
|
-
checkTypeAssignableToAndOptionallyElaborate(exprType, targetType,
|
|
72235
|
+
checkTypeAssignableToAndOptionallyElaborate(exprType, targetType, target, expression, Diagnostics.Type_0_does_not_satisfy_the_expected_type_1);
|
|
72182
72236
|
return exprType;
|
|
72183
72237
|
}
|
|
72184
72238
|
function checkMetaProperty(node) {
|
|
@@ -73585,12 +73639,12 @@ ${lanes.join("\n")}
|
|
|
73585
73639
|
void 0
|
|
73586
73640
|
);
|
|
73587
73641
|
const operator = operatorToken.kind;
|
|
73588
|
-
if (operator
|
|
73589
|
-
|
|
73590
|
-
|
|
73591
|
-
|
|
73592
|
-
|
|
73593
|
-
|
|
73642
|
+
if (isLogicalOrCoalescingBinaryOperator(operator)) {
|
|
73643
|
+
let parent2 = node.parent;
|
|
73644
|
+
while (parent2.kind === 214 /* ParenthesizedExpression */ || isLogicalOrCoalescingBinaryExpression(parent2)) {
|
|
73645
|
+
parent2 = parent2.parent;
|
|
73646
|
+
}
|
|
73647
|
+
if (operator === 55 /* AmpersandAmpersandToken */ || isIfStatement(parent2)) {
|
|
73594
73648
|
checkTestingKnownTruthyCallableOrAwaitableType(node.left, leftType, isIfStatement(parent2) ? parent2.thenStatement : void 0);
|
|
73595
73649
|
}
|
|
73596
73650
|
checkTruthinessOfType(leftType, node.left);
|
|
@@ -73667,7 +73721,7 @@ ${lanes.join("\n")}
|
|
|
73667
73721
|
return checkDestructuringAssignment(left, checkExpression(right, checkMode), checkMode, right.kind === 108 /* ThisKeyword */);
|
|
73668
73722
|
}
|
|
73669
73723
|
let leftType;
|
|
73670
|
-
if (operator
|
|
73724
|
+
if (isLogicalOrCoalescingBinaryOperator(operator)) {
|
|
73671
73725
|
leftType = checkTruthinessExpression(left, checkMode);
|
|
73672
73726
|
} else {
|
|
73673
73727
|
leftType = checkExpression(left, checkMode);
|
|
@@ -74210,6 +74264,12 @@ ${lanes.join("\n")}
|
|
|
74210
74264
|
}
|
|
74211
74265
|
function checkDeclarationInitializer(declaration, checkMode, contextualType) {
|
|
74212
74266
|
const initializer = getEffectiveInitializer(declaration);
|
|
74267
|
+
if (isInJSFile(declaration)) {
|
|
74268
|
+
const typeNode = tryGetJSDocSatisfiesTypeNode(declaration);
|
|
74269
|
+
if (typeNode) {
|
|
74270
|
+
return checkSatisfiesExpressionWorker(initializer, typeNode, checkMode);
|
|
74271
|
+
}
|
|
74272
|
+
}
|
|
74213
74273
|
const type = getQuickTypeOfExpression(initializer) || (contextualType ? checkExpressionWithContextualType(
|
|
74214
74274
|
initializer,
|
|
74215
74275
|
contextualType,
|
|
@@ -74537,9 +74597,14 @@ ${lanes.join("\n")}
|
|
|
74537
74597
|
}
|
|
74538
74598
|
}
|
|
74539
74599
|
function checkParenthesizedExpression(node, checkMode) {
|
|
74540
|
-
if (hasJSDocNodes(node)
|
|
74541
|
-
|
|
74542
|
-
|
|
74600
|
+
if (hasJSDocNodes(node)) {
|
|
74601
|
+
if (isJSDocSatisfiesExpression(node)) {
|
|
74602
|
+
return checkSatisfiesExpressionWorker(node.expression, getJSDocSatisfiesExpressionType(node), checkMode);
|
|
74603
|
+
}
|
|
74604
|
+
if (isJSDocTypeAssertion(node)) {
|
|
74605
|
+
const type = getJSDocTypeAssertionType(node);
|
|
74606
|
+
return checkAssertionWorker(type, type, node.expression, checkMode);
|
|
74607
|
+
}
|
|
74543
74608
|
}
|
|
74544
74609
|
return checkExpression(node.expression, checkMode);
|
|
74545
74610
|
}
|
|
@@ -76241,6 +76306,19 @@ ${lanes.join("\n")}
|
|
|
76241
76306
|
function checkJSDocTypeTag(node) {
|
|
76242
76307
|
checkSourceElement(node.typeExpression);
|
|
76243
76308
|
}
|
|
76309
|
+
function checkJSDocSatisfiesTag(node) {
|
|
76310
|
+
checkSourceElement(node.typeExpression);
|
|
76311
|
+
const host2 = getEffectiveJSDocHost(node);
|
|
76312
|
+
if (host2) {
|
|
76313
|
+
const tags = getAllJSDocTags(host2, isJSDocSatisfiesTag);
|
|
76314
|
+
if (length(tags) > 1) {
|
|
76315
|
+
for (let i = 1; i < length(tags); i++) {
|
|
76316
|
+
const tagName = tags[i].tagName;
|
|
76317
|
+
error(tagName, Diagnostics._0_tag_already_specified, idText(tagName));
|
|
76318
|
+
}
|
|
76319
|
+
}
|
|
76320
|
+
}
|
|
76321
|
+
}
|
|
76244
76322
|
function checkJSDocLinkLikeTag(node) {
|
|
76245
76323
|
if (node.name) {
|
|
76246
76324
|
resolveJSDocMemberName(
|
|
@@ -77026,15 +77104,24 @@ ${lanes.join("\n")}
|
|
|
77026
77104
|
function checkTestingKnownTruthyCallableOrAwaitableType(condExpr, condType, body) {
|
|
77027
77105
|
if (!strictNullChecks)
|
|
77028
77106
|
return;
|
|
77029
|
-
|
|
77030
|
-
|
|
77031
|
-
|
|
77032
|
-
helper(
|
|
77107
|
+
bothHelper(condExpr, body);
|
|
77108
|
+
function bothHelper(condExpr2, body2) {
|
|
77109
|
+
condExpr2 = skipParentheses(condExpr2);
|
|
77110
|
+
helper(condExpr2, body2);
|
|
77111
|
+
while (isBinaryExpression(condExpr2) && (condExpr2.operatorToken.kind === 56 /* BarBarToken */ || condExpr2.operatorToken.kind === 60 /* QuestionQuestionToken */)) {
|
|
77112
|
+
condExpr2 = skipParentheses(condExpr2.left);
|
|
77113
|
+
helper(condExpr2, body2);
|
|
77114
|
+
}
|
|
77033
77115
|
}
|
|
77034
77116
|
function helper(condExpr2, body2) {
|
|
77035
|
-
const location =
|
|
77036
|
-
if (isModuleExportsAccessExpression(location))
|
|
77117
|
+
const location = isLogicalOrCoalescingBinaryExpression(condExpr2) ? skipParentheses(condExpr2.right) : condExpr2;
|
|
77118
|
+
if (isModuleExportsAccessExpression(location)) {
|
|
77037
77119
|
return;
|
|
77120
|
+
}
|
|
77121
|
+
if (isLogicalOrCoalescingBinaryExpression(location)) {
|
|
77122
|
+
bothHelper(location, body2);
|
|
77123
|
+
return;
|
|
77124
|
+
}
|
|
77038
77125
|
const type = location === condExpr2 ? condType : checkTruthinessExpression(location);
|
|
77039
77126
|
const isPropertyExpressionCast = isPropertyAccessExpression(location) && isTypeAssertion3(location.expression);
|
|
77040
77127
|
if (!(getTypeFacts(type) & 4194304 /* Truthy */) || isPropertyExpressionCast)
|
|
@@ -77044,7 +77131,7 @@ ${lanes.join("\n")}
|
|
|
77044
77131
|
if (callSignatures.length === 0 && !isPromise) {
|
|
77045
77132
|
return;
|
|
77046
77133
|
}
|
|
77047
|
-
const testedNode = isIdentifier(location) ? location : isPropertyAccessExpression(location) ? location.name :
|
|
77134
|
+
const testedNode = isIdentifier(location) ? location : isPropertyAccessExpression(location) ? location.name : void 0;
|
|
77048
77135
|
const testedSymbol = testedNode && getSymbolAtLocation(testedNode);
|
|
77049
77136
|
if (!testedSymbol && !isPromise) {
|
|
77050
77137
|
return;
|
|
@@ -78002,18 +78089,8 @@ ${lanes.join("\n")}
|
|
|
78002
78089
|
if (catchClause) {
|
|
78003
78090
|
if (catchClause.variableDeclaration) {
|
|
78004
78091
|
const declaration = catchClause.variableDeclaration;
|
|
78005
|
-
|
|
78006
|
-
if (
|
|
78007
|
-
const type = getTypeForVariableLikeDeclaration(
|
|
78008
|
-
declaration,
|
|
78009
|
-
/*includeOptionality*/
|
|
78010
|
-
false,
|
|
78011
|
-
0 /* Normal */
|
|
78012
|
-
);
|
|
78013
|
-
if (type && !(type.flags & 3 /* AnyOrUnknown */)) {
|
|
78014
|
-
grammarErrorOnFirstToken(typeNode, Diagnostics.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified);
|
|
78015
|
-
}
|
|
78016
|
-
} else if (declaration.initializer) {
|
|
78092
|
+
checkVariableLikeDeclaration(declaration);
|
|
78093
|
+
if (declaration.initializer) {
|
|
78017
78094
|
grammarErrorOnFirstToken(declaration.initializer, Diagnostics.Catch_clause_variable_cannot_have_an_initializer);
|
|
78018
78095
|
} else {
|
|
78019
78096
|
const blockLocals = catchClause.block.locals;
|
|
@@ -79845,6 +79922,8 @@ ${lanes.join("\n")}
|
|
|
79845
79922
|
case 338 /* JSDocProtectedTag */:
|
|
79846
79923
|
case 337 /* JSDocPrivateTag */:
|
|
79847
79924
|
return checkJSDocAccessibilityModifiers(node);
|
|
79925
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
79926
|
+
return checkJSDocSatisfiesTag(node);
|
|
79848
79927
|
case 196 /* IndexedAccessType */:
|
|
79849
79928
|
return checkIndexedAccessType(node);
|
|
79850
79929
|
case 197 /* MappedType */:
|
|
@@ -84803,13 +84882,13 @@ ${lanes.join("\n")}
|
|
|
84803
84882
|
);
|
|
84804
84883
|
},
|
|
84805
84884
|
// Transformation nodes
|
|
84806
|
-
[
|
|
84885
|
+
[356 /* PartiallyEmittedExpression */]: function visitEachChildOfPartiallyEmittedExpression(node, visitor, context, _nodesVisitor, nodeVisitor, _tokenVisitor) {
|
|
84807
84886
|
return context.factory.updatePartiallyEmittedExpression(
|
|
84808
84887
|
node,
|
|
84809
84888
|
Debug.checkDefined(nodeVisitor(node.expression, visitor, isExpression))
|
|
84810
84889
|
);
|
|
84811
84890
|
},
|
|
84812
|
-
[
|
|
84891
|
+
[357 /* CommaListExpression */]: function visitEachChildOfCommaListExpression(node, visitor, context, nodesVisitor, _nodeVisitor, _tokenVisitor) {
|
|
84813
84892
|
return context.factory.updateCommaListExpression(
|
|
84814
84893
|
node,
|
|
84815
84894
|
nodesVisitor(node.elements, visitor, isExpression)
|
|
@@ -91644,7 +91723,7 @@ ${lanes.join("\n")}
|
|
|
91644
91723
|
return visitObjectLiteralExpression(node);
|
|
91645
91724
|
case 223 /* BinaryExpression */:
|
|
91646
91725
|
return visitBinaryExpression(node, expressionResultIsUnused2);
|
|
91647
|
-
case
|
|
91726
|
+
case 357 /* CommaListExpression */:
|
|
91648
91727
|
return visitCommaListExpression(node, expressionResultIsUnused2);
|
|
91649
91728
|
case 295 /* CatchClause */:
|
|
91650
91729
|
return visitCatchClause(node);
|
|
@@ -93094,15 +93173,10 @@ ${lanes.join("\n")}
|
|
|
93094
93173
|
if ((node.transformFlags & 16 /* ContainsES2021 */) === 0) {
|
|
93095
93174
|
return node;
|
|
93096
93175
|
}
|
|
93097
|
-
|
|
93098
|
-
|
|
93099
|
-
const binaryExpression = node;
|
|
93100
|
-
if (isLogicalOrCoalescingAssignmentExpression(binaryExpression)) {
|
|
93101
|
-
return transformLogicalAssignment(binaryExpression);
|
|
93102
|
-
}
|
|
93103
|
-
default:
|
|
93104
|
-
return visitEachChild(node, visitor, context);
|
|
93176
|
+
if (isLogicalOrCoalescingAssignmentExpression(node)) {
|
|
93177
|
+
return transformLogicalAssignment(node);
|
|
93105
93178
|
}
|
|
93179
|
+
return visitEachChild(node, visitor, context);
|
|
93106
93180
|
}
|
|
93107
93181
|
function transformLogicalAssignment(binaryExpression) {
|
|
93108
93182
|
const operator = binaryExpression.operatorToken;
|
|
@@ -94265,7 +94339,7 @@ ${lanes.join("\n")}
|
|
|
94265
94339
|
return visitParenthesizedExpression(node, expressionResultIsUnused2);
|
|
94266
94340
|
case 223 /* BinaryExpression */:
|
|
94267
94341
|
return visitBinaryExpression(node, expressionResultIsUnused2);
|
|
94268
|
-
case
|
|
94342
|
+
case 357 /* CommaListExpression */:
|
|
94269
94343
|
return visitCommaListExpression(node, expressionResultIsUnused2);
|
|
94270
94344
|
case 14 /* NoSubstitutionTemplateLiteral */:
|
|
94271
94345
|
case 15 /* TemplateHead */:
|
|
@@ -97438,7 +97512,7 @@ ${lanes.join("\n")}
|
|
|
97438
97512
|
switch (node.kind) {
|
|
97439
97513
|
case 223 /* BinaryExpression */:
|
|
97440
97514
|
return visitBinaryExpression(node);
|
|
97441
|
-
case
|
|
97515
|
+
case 357 /* CommaListExpression */:
|
|
97442
97516
|
return visitCommaListExpression(node);
|
|
97443
97517
|
case 224 /* ConditionalExpression */:
|
|
97444
97518
|
return visitConditionalExpression(node);
|
|
@@ -99783,9 +99857,9 @@ ${lanes.join("\n")}
|
|
|
99783
99857
|
return visitFunctionDeclaration(node);
|
|
99784
99858
|
case 260 /* ClassDeclaration */:
|
|
99785
99859
|
return visitClassDeclaration(node);
|
|
99786
|
-
case
|
|
99860
|
+
case 358 /* MergeDeclarationMarker */:
|
|
99787
99861
|
return visitMergeDeclarationMarker(node);
|
|
99788
|
-
case
|
|
99862
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
99789
99863
|
return visitEndOfDeclarationMarker(node);
|
|
99790
99864
|
default:
|
|
99791
99865
|
return visitor(node);
|
|
@@ -99802,7 +99876,7 @@ ${lanes.join("\n")}
|
|
|
99802
99876
|
return visitExpressionStatement(node);
|
|
99803
99877
|
case 214 /* ParenthesizedExpression */:
|
|
99804
99878
|
return visitParenthesizedExpression(node, valueIsDiscarded);
|
|
99805
|
-
case
|
|
99879
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
99806
99880
|
return visitPartiallyEmittedExpression(node, valueIsDiscarded);
|
|
99807
99881
|
case 210 /* CallExpression */:
|
|
99808
99882
|
if (isImportCall(node) && currentSourceFile.impliedNodeFormat === void 0) {
|
|
@@ -101924,9 +101998,9 @@ ${lanes.join("\n")}
|
|
|
101924
101998
|
return visitCatchClause(node);
|
|
101925
101999
|
case 238 /* Block */:
|
|
101926
102000
|
return visitBlock(node);
|
|
101927
|
-
case
|
|
102001
|
+
case 358 /* MergeDeclarationMarker */:
|
|
101928
102002
|
return visitMergeDeclarationMarker(node);
|
|
101929
|
-
case
|
|
102003
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
101930
102004
|
return visitEndOfDeclarationMarker(node);
|
|
101931
102005
|
default:
|
|
101932
102006
|
return visitor(node);
|
|
@@ -102082,7 +102156,7 @@ ${lanes.join("\n")}
|
|
|
102082
102156
|
return visitExpressionStatement(node);
|
|
102083
102157
|
case 214 /* ParenthesizedExpression */:
|
|
102084
102158
|
return visitParenthesizedExpression(node, valueIsDiscarded);
|
|
102085
|
-
case
|
|
102159
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
102086
102160
|
return visitPartiallyEmittedExpression(node, valueIsDiscarded);
|
|
102087
102161
|
case 223 /* BinaryExpression */:
|
|
102088
102162
|
if (isDestructuringAssignment(node)) {
|
|
@@ -104804,7 +104878,7 @@ ${lanes.join("\n")}
|
|
|
104804
104878
|
}
|
|
104805
104879
|
function transformNodes(resolver, host, factory2, options, nodes, transformers, allowDtsFiles) {
|
|
104806
104880
|
var _a2, _b;
|
|
104807
|
-
const enabledSyntaxKindFeatures = new Array(
|
|
104881
|
+
const enabledSyntaxKindFeatures = new Array(361 /* Count */);
|
|
104808
104882
|
let lexicalEnvironmentVariableDeclarations;
|
|
104809
104883
|
let lexicalEnvironmentFunctionDeclarations;
|
|
104810
104884
|
let lexicalEnvironmentStatements;
|
|
@@ -106654,6 +106728,7 @@ ${lanes.join("\n")}
|
|
|
106654
106728
|
case 346 /* JSDocThisTag */:
|
|
106655
106729
|
case 347 /* JSDocTypeTag */:
|
|
106656
106730
|
case 352 /* JSDocThrowsTag */:
|
|
106731
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
106657
106732
|
return emitJSDocSimpleTypedTag(node);
|
|
106658
106733
|
case 348 /* JSDocTemplateTag */:
|
|
106659
106734
|
return emitJSDocTemplateTag(node);
|
|
@@ -106661,9 +106736,9 @@ ${lanes.join("\n")}
|
|
|
106661
106736
|
return emitJSDocTypedefTag(node);
|
|
106662
106737
|
case 350 /* JSDocSeeTag */:
|
|
106663
106738
|
return emitJSDocSeeTag(node);
|
|
106664
|
-
case
|
|
106665
|
-
case
|
|
106666
|
-
case
|
|
106739
|
+
case 355 /* NotEmittedStatement */:
|
|
106740
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
106741
|
+
case 358 /* MergeDeclarationMarker */:
|
|
106667
106742
|
return;
|
|
106668
106743
|
}
|
|
106669
106744
|
if (isExpression(node)) {
|
|
@@ -106762,18 +106837,18 @@ ${lanes.join("\n")}
|
|
|
106762
106837
|
return emitJsxSelfClosingElement(node);
|
|
106763
106838
|
case 285 /* JsxFragment */:
|
|
106764
106839
|
return emitJsxFragment(node);
|
|
106765
|
-
case
|
|
106840
|
+
case 354 /* SyntaxList */:
|
|
106766
106841
|
return Debug.fail("SyntaxList should not be printed");
|
|
106767
|
-
case
|
|
106842
|
+
case 355 /* NotEmittedStatement */:
|
|
106768
106843
|
return;
|
|
106769
|
-
case
|
|
106844
|
+
case 356 /* PartiallyEmittedExpression */:
|
|
106770
106845
|
return emitPartiallyEmittedExpression(node);
|
|
106771
|
-
case
|
|
106846
|
+
case 357 /* CommaListExpression */:
|
|
106772
106847
|
return emitCommaList(node);
|
|
106773
|
-
case
|
|
106774
|
-
case
|
|
106848
|
+
case 358 /* MergeDeclarationMarker */:
|
|
106849
|
+
case 359 /* EndOfDeclarationMarker */:
|
|
106775
106850
|
return;
|
|
106776
|
-
case
|
|
106851
|
+
case 360 /* SyntheticReferenceExpression */:
|
|
106777
106852
|
return Debug.fail("SyntheticReferenceExpression should not be printed");
|
|
106778
106853
|
}
|
|
106779
106854
|
}
|
|
@@ -110021,7 +110096,7 @@ ${lanes.join("\n")}
|
|
|
110021
110096
|
emitLeadingComments(
|
|
110022
110097
|
pos,
|
|
110023
110098
|
/*isEmittedNode*/
|
|
110024
|
-
node.kind !==
|
|
110099
|
+
node.kind !== 355 /* NotEmittedStatement */
|
|
110025
110100
|
);
|
|
110026
110101
|
}
|
|
110027
110102
|
if (!skipLeadingComments || pos >= 0 && (emitFlags & 1024 /* NoLeadingComments */) !== 0) {
|
|
@@ -110045,7 +110120,7 @@ ${lanes.join("\n")}
|
|
|
110045
110120
|
containerPos = savedContainerPos;
|
|
110046
110121
|
containerEnd = savedContainerEnd;
|
|
110047
110122
|
declarationListContainerEnd = savedDeclarationListContainerEnd;
|
|
110048
|
-
if (!skipTrailingComments && node.kind !==
|
|
110123
|
+
if (!skipTrailingComments && node.kind !== 355 /* NotEmittedStatement */) {
|
|
110049
110124
|
emitTrailingComments(end);
|
|
110050
110125
|
}
|
|
110051
110126
|
}
|
|
@@ -110317,7 +110392,7 @@ ${lanes.join("\n")}
|
|
|
110317
110392
|
}
|
|
110318
110393
|
} else {
|
|
110319
110394
|
const source = sourceMapRange.source || sourceMapSource;
|
|
110320
|
-
if (node.kind !==
|
|
110395
|
+
if (node.kind !== 355 /* NotEmittedStatement */ && (emitFlags & 32 /* NoLeadingSourceMap */) === 0 && sourceMapRange.pos >= 0) {
|
|
110321
110396
|
emitSourcePos(sourceMapRange.source || sourceMapSource, skipSourceTrivia(source, sourceMapRange.pos));
|
|
110322
110397
|
}
|
|
110323
110398
|
if (emitFlags & 128 /* NoNestedSourceMaps */) {
|
|
@@ -110332,7 +110407,7 @@ ${lanes.join("\n")}
|
|
|
110332
110407
|
if (emitFlags & 128 /* NoNestedSourceMaps */) {
|
|
110333
110408
|
sourceMapsDisabled = false;
|
|
110334
110409
|
}
|
|
110335
|
-
if (node.kind !==
|
|
110410
|
+
if (node.kind !== 355 /* NotEmittedStatement */ && (emitFlags & 64 /* NoTrailingSourceMap */) === 0 && sourceMapRange.end >= 0) {
|
|
110336
110411
|
emitSourcePos(sourceMapRange.source || sourceMapSource, sourceMapRange.end);
|
|
110337
110412
|
}
|
|
110338
110413
|
}
|
|
@@ -114012,7 +114087,7 @@ ${lanes.join("\n")}
|
|
|
114012
114087
|
createOptionValueDiagnostic("importsNotUsedAsValues", Diagnostics.Option_preserveValueImports_can_only_be_used_when_module_is_set_to_es2015_or_later);
|
|
114013
114088
|
}
|
|
114014
114089
|
if (options.allowImportingTsExtensions && !(options.noEmit || options.emitDeclarationOnly)) {
|
|
114015
|
-
createOptionValueDiagnostic("allowImportingTsExtensions", Diagnostics.
|
|
114090
|
+
createOptionValueDiagnostic("allowImportingTsExtensions", Diagnostics.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);
|
|
114016
114091
|
}
|
|
114017
114092
|
const moduleResolution = getEmitModuleResolutionKind(options);
|
|
114018
114093
|
if (options.resolvePackageJsonExports && !moduleResolutionSupportsPackageJsonExportsAndImports(moduleResolution)) {
|
|
@@ -128458,7 +128533,7 @@ ${lanes.join("\n")}
|
|
|
128458
128533
|
}
|
|
128459
128534
|
}
|
|
128460
128535
|
function createSyntaxList(nodes, parent2) {
|
|
128461
|
-
const list = createNode(
|
|
128536
|
+
const list = createNode(354 /* SyntaxList */, nodes.pos, nodes.end, parent2);
|
|
128462
128537
|
list._children = [];
|
|
128463
128538
|
let pos = nodes.pos;
|
|
128464
128539
|
for (const node of nodes) {
|
|
@@ -129919,7 +129994,7 @@ ${lanes.join("\n")}
|
|
|
129919
129994
|
if (!children.length) {
|
|
129920
129995
|
return void 0;
|
|
129921
129996
|
}
|
|
129922
|
-
const child = find(children, (kid) => kid.kind < 312 /* FirstJSDocNode */ || kid.kind >
|
|
129997
|
+
const child = find(children, (kid) => kid.kind < 312 /* FirstJSDocNode */ || kid.kind > 353 /* LastJSDocNode */);
|
|
129923
129998
|
return child.kind < 163 /* FirstNode */ ? child : child.getFirstToken(sourceFile);
|
|
129924
129999
|
}
|
|
129925
130000
|
getLastToken(sourceFile) {
|
|
@@ -143427,10 +143502,10 @@ ${lanes.join("\n")}
|
|
|
143427
143502
|
} else if (!tracker.hasValue(type.value)) {
|
|
143428
143503
|
switch (typeof type.value) {
|
|
143429
143504
|
case "object":
|
|
143430
|
-
elements.push(factory.createBigIntLiteral(type.value));
|
|
143505
|
+
elements.push(type.value.negative ? factory.createPrefixUnaryExpression(40 /* MinusToken */, factory.createBigIntLiteral({ negative: false, base10Value: type.value.base10Value })) : factory.createBigIntLiteral(type.value));
|
|
143431
143506
|
break;
|
|
143432
143507
|
case "number":
|
|
143433
|
-
elements.push(factory.createNumericLiteral(type.value));
|
|
143508
|
+
elements.push(type.value < 0 ? factory.createPrefixUnaryExpression(40 /* MinusToken */, factory.createNumericLiteral(-type.value)) : factory.createNumericLiteral(type.value));
|
|
143434
143509
|
break;
|
|
143435
143510
|
case "string":
|
|
143436
143511
|
elements.push(factory.createStringLiteral(type.value, quotePreference === 0 /* Single */));
|
|
@@ -144850,6 +144925,7 @@ ${lanes.join("\n")}
|
|
|
144850
144925
|
case 347 /* JSDocTypeTag */:
|
|
144851
144926
|
case 349 /* JSDocTypedefTag */:
|
|
144852
144927
|
case 352 /* JSDocThrowsTag */:
|
|
144928
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
144853
144929
|
return true;
|
|
144854
144930
|
case 348 /* JSDocTemplateTag */:
|
|
144855
144931
|
return !!tag.constraint;
|
|
@@ -146097,7 +146173,7 @@ ${lanes.join("\n")}
|
|
|
146097
146173
|
function tryGetObjectTypeDeclarationCompletionContainer(sourceFile, contextToken, location, position) {
|
|
146098
146174
|
var _a2;
|
|
146099
146175
|
switch (location.kind) {
|
|
146100
|
-
case
|
|
146176
|
+
case 354 /* SyntaxList */:
|
|
146101
146177
|
return tryCast(location.parent, isObjectTypeDeclaration);
|
|
146102
146178
|
case 1 /* EndOfFileToken */:
|
|
146103
146179
|
const cls = tryCast(lastOrUndefined(cast(location.parent, isSourceFile).statements), isObjectTypeDeclaration);
|
|
@@ -147164,7 +147240,7 @@ ${lanes.join("\n")}
|
|
|
147164
147240
|
}
|
|
147165
147241
|
function getAmbientModuleCompletions(fragment, fragmentDirectory, checker) {
|
|
147166
147242
|
const ambientModules = checker.getAmbientModules().map((sym) => stripQuotes(sym.name));
|
|
147167
|
-
const nonRelativeModuleNames = ambientModules.filter((moduleName) => startsWith(moduleName, fragment));
|
|
147243
|
+
const nonRelativeModuleNames = ambientModules.filter((moduleName) => startsWith(moduleName, fragment) && moduleName.indexOf("*") < 0);
|
|
147168
147244
|
if (fragmentDirectory !== void 0) {
|
|
147169
147245
|
const moduleNameWithSeparator = ensureTrailingDirectorySeparator(fragmentDirectory);
|
|
147170
147246
|
return nonRelativeModuleNames.map((nonRelativeModuleName) => removePrefix(nonRelativeModuleName, moduleNameWithSeparator));
|
|
@@ -150699,6 +150775,7 @@ ${lanes.join("\n")}
|
|
|
150699
150775
|
}
|
|
150700
150776
|
return displayParts;
|
|
150701
150777
|
case 347 /* JSDocTypeTag */:
|
|
150778
|
+
case 353 /* JSDocSatisfiesTag */:
|
|
150702
150779
|
return withNode(tag.typeExpression);
|
|
150703
150780
|
case 349 /* JSDocTypedefTag */:
|
|
150704
150781
|
case 341 /* JSDocCallbackTag */:
|
|
@@ -150988,6 +151065,7 @@ ${lanes.join("\n")}
|
|
|
150988
151065
|
"readonly",
|
|
150989
151066
|
"requires",
|
|
150990
151067
|
"returns",
|
|
151068
|
+
"satisfies",
|
|
150991
151069
|
"see",
|
|
150992
151070
|
"since",
|
|
150993
151071
|
"static",
|
|
@@ -176102,6 +176180,8 @@ ${e.message}`;
|
|
|
176102
176180
|
getJSDocReturnTag: () => getJSDocReturnTag,
|
|
176103
176181
|
getJSDocReturnType: () => getJSDocReturnType,
|
|
176104
176182
|
getJSDocRoot: () => getJSDocRoot,
|
|
176183
|
+
getJSDocSatisfiesExpressionType: () => getJSDocSatisfiesExpressionType,
|
|
176184
|
+
getJSDocSatisfiesTag: () => getJSDocSatisfiesTag,
|
|
176105
176185
|
getJSDocTags: () => getJSDocTags,
|
|
176106
176186
|
getJSDocTagsNoCache: () => getJSDocTagsNoCache,
|
|
176107
176187
|
getJSDocTemplateTag: () => getJSDocTemplateTag,
|
|
@@ -176731,6 +176811,8 @@ ${e.message}`;
|
|
|
176731
176811
|
isJSDocPublicTag: () => isJSDocPublicTag,
|
|
176732
176812
|
isJSDocReadonlyTag: () => isJSDocReadonlyTag,
|
|
176733
176813
|
isJSDocReturnTag: () => isJSDocReturnTag,
|
|
176814
|
+
isJSDocSatisfiesExpression: () => isJSDocSatisfiesExpression,
|
|
176815
|
+
isJSDocSatisfiesTag: () => isJSDocSatisfiesTag,
|
|
176734
176816
|
isJSDocSeeTag: () => isJSDocSeeTag,
|
|
176735
176817
|
isJSDocSignature: () => isJSDocSignature,
|
|
176736
176818
|
isJSDocTag: () => isJSDocTag,
|
|
@@ -176792,6 +176874,8 @@ ${e.message}`;
|
|
|
176792
176874
|
isLogicalOperator: () => isLogicalOperator,
|
|
176793
176875
|
isLogicalOrCoalescingAssignmentExpression: () => isLogicalOrCoalescingAssignmentExpression,
|
|
176794
176876
|
isLogicalOrCoalescingAssignmentOperator: () => isLogicalOrCoalescingAssignmentOperator,
|
|
176877
|
+
isLogicalOrCoalescingBinaryExpression: () => isLogicalOrCoalescingBinaryExpression,
|
|
176878
|
+
isLogicalOrCoalescingBinaryOperator: () => isLogicalOrCoalescingBinaryOperator,
|
|
176795
176879
|
isMappedTypeNode: () => isMappedTypeNode,
|
|
176796
176880
|
isMemberName: () => isMemberName,
|
|
176797
176881
|
isMergeDeclarationMarker: () => isMergeDeclarationMarker,
|
|
@@ -177477,6 +177561,7 @@ ${e.message}`;
|
|
|
177477
177561
|
tryGetDirectories: () => tryGetDirectories,
|
|
177478
177562
|
tryGetExtensionFromPath: () => tryGetExtensionFromPath2,
|
|
177479
177563
|
tryGetImportFromModuleSpecifier: () => tryGetImportFromModuleSpecifier,
|
|
177564
|
+
tryGetJSDocSatisfiesTypeNode: () => tryGetJSDocSatisfiesTypeNode,
|
|
177480
177565
|
tryGetModuleNameFromFile: () => tryGetModuleNameFromFile,
|
|
177481
177566
|
tryGetModuleSpecifierFromDeclaration: () => tryGetModuleSpecifierFromDeclaration,
|
|
177482
177567
|
tryGetNativePerformanceHooks: () => tryGetNativePerformanceHooks,
|
|
@@ -178756,6 +178841,8 @@ ${e.message}`;
|
|
|
178756
178841
|
getJSDocReturnTag: () => getJSDocReturnTag,
|
|
178757
178842
|
getJSDocReturnType: () => getJSDocReturnType,
|
|
178758
178843
|
getJSDocRoot: () => getJSDocRoot,
|
|
178844
|
+
getJSDocSatisfiesExpressionType: () => getJSDocSatisfiesExpressionType,
|
|
178845
|
+
getJSDocSatisfiesTag: () => getJSDocSatisfiesTag,
|
|
178759
178846
|
getJSDocTags: () => getJSDocTags,
|
|
178760
178847
|
getJSDocTagsNoCache: () => getJSDocTagsNoCache,
|
|
178761
178848
|
getJSDocTemplateTag: () => getJSDocTemplateTag,
|
|
@@ -179385,6 +179472,8 @@ ${e.message}`;
|
|
|
179385
179472
|
isJSDocPublicTag: () => isJSDocPublicTag,
|
|
179386
179473
|
isJSDocReadonlyTag: () => isJSDocReadonlyTag,
|
|
179387
179474
|
isJSDocReturnTag: () => isJSDocReturnTag,
|
|
179475
|
+
isJSDocSatisfiesExpression: () => isJSDocSatisfiesExpression,
|
|
179476
|
+
isJSDocSatisfiesTag: () => isJSDocSatisfiesTag,
|
|
179388
179477
|
isJSDocSeeTag: () => isJSDocSeeTag,
|
|
179389
179478
|
isJSDocSignature: () => isJSDocSignature,
|
|
179390
179479
|
isJSDocTag: () => isJSDocTag,
|
|
@@ -179446,6 +179535,8 @@ ${e.message}`;
|
|
|
179446
179535
|
isLogicalOperator: () => isLogicalOperator,
|
|
179447
179536
|
isLogicalOrCoalescingAssignmentExpression: () => isLogicalOrCoalescingAssignmentExpression,
|
|
179448
179537
|
isLogicalOrCoalescingAssignmentOperator: () => isLogicalOrCoalescingAssignmentOperator,
|
|
179538
|
+
isLogicalOrCoalescingBinaryExpression: () => isLogicalOrCoalescingBinaryExpression,
|
|
179539
|
+
isLogicalOrCoalescingBinaryOperator: () => isLogicalOrCoalescingBinaryOperator,
|
|
179449
179540
|
isMappedTypeNode: () => isMappedTypeNode,
|
|
179450
179541
|
isMemberName: () => isMemberName,
|
|
179451
179542
|
isMergeDeclarationMarker: () => isMergeDeclarationMarker,
|
|
@@ -180131,6 +180222,7 @@ ${e.message}`;
|
|
|
180131
180222
|
tryGetDirectories: () => tryGetDirectories,
|
|
180132
180223
|
tryGetExtensionFromPath: () => tryGetExtensionFromPath2,
|
|
180133
180224
|
tryGetImportFromModuleSpecifier: () => tryGetImportFromModuleSpecifier,
|
|
180225
|
+
tryGetJSDocSatisfiesTypeNode: () => tryGetJSDocSatisfiesTypeNode,
|
|
180134
180226
|
tryGetModuleNameFromFile: () => tryGetModuleNameFromFile,
|
|
180135
180227
|
tryGetModuleSpecifierFromDeclaration: () => tryGetModuleSpecifierFromDeclaration,
|
|
180136
180228
|
tryGetNativePerformanceHooks: () => tryGetNativePerformanceHooks,
|