typescript 5.0.0-dev.20230206 → 5.0.0-dev.20230207
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 +232 -244
- package/lib/tsserver.js +395 -403
- package/lib/tsserverlibrary.d.ts +0 -2
- package/lib/tsserverlibrary.js +401 -410
- package/lib/typescript.d.ts +0 -2
- package/lib/typescript.js +396 -410
- package/lib/typingsInstaller.js +177 -185
- package/package.json +1 -1
package/lib/tsserverlibrary.js
CHANGED
|
@@ -35,7 +35,7 @@ var ts = (() => {
|
|
|
35
35
|
"src/compiler/corePublic.ts"() {
|
|
36
36
|
"use strict";
|
|
37
37
|
versionMajorMinor = "5.0";
|
|
38
|
-
version = `${versionMajorMinor}.0-dev.
|
|
38
|
+
version = `${versionMajorMinor}.0-dev.20230207`;
|
|
39
39
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
40
40
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
41
41
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -5492,7 +5492,7 @@ ${lanes.join("\n")}
|
|
|
5492
5492
|
function createDirectoryWatcher(dirName, dirPath, fallbackOptions) {
|
|
5493
5493
|
const watcher = fsWatch(
|
|
5494
5494
|
dirName,
|
|
5495
|
-
|
|
5495
|
+
1 /* Directory */,
|
|
5496
5496
|
(_eventName, relativeFileName, modifiedTime) => {
|
|
5497
5497
|
if (!isString(relativeFileName))
|
|
5498
5498
|
return;
|
|
@@ -5690,7 +5690,7 @@ ${lanes.join("\n")}
|
|
|
5690
5690
|
}
|
|
5691
5691
|
function nonSyncUpdateChildWatches(dirName, dirPath, fileName, options) {
|
|
5692
5692
|
const parentWatcher = cache.get(dirPath);
|
|
5693
|
-
if (parentWatcher && fileSystemEntryExists(dirName,
|
|
5693
|
+
if (parentWatcher && fileSystemEntryExists(dirName, 1 /* Directory */)) {
|
|
5694
5694
|
scheduleUpdateChildWatches(dirName, dirPath, fileName, options);
|
|
5695
5695
|
return;
|
|
5696
5696
|
}
|
|
@@ -5755,7 +5755,7 @@ ${lanes.join("\n")}
|
|
|
5755
5755
|
return false;
|
|
5756
5756
|
let newChildWatches;
|
|
5757
5757
|
const hasChanges = enumerateInsertsAndDeletes(
|
|
5758
|
-
fileSystemEntryExists(parentDir,
|
|
5758
|
+
fileSystemEntryExists(parentDir, 1 /* Directory */) ? mapDefined(getAccessibleSortedChildDirectories(parentDir), (child) => {
|
|
5759
5759
|
const childFullName = getNormalizedAbsolutePath(child, parentDir);
|
|
5760
5760
|
return !isIgnoredPath(childFullName, options) && filePathComparer(childFullName, normalizePath(realpath(childFullName))) === 0 /* EqualTo */ ? childFullName : void 0;
|
|
5761
5761
|
}) : emptyArray,
|
|
@@ -8559,6 +8559,10 @@ ${lanes.join("\n")}
|
|
|
8559
8559
|
Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports: diag(6410, 3 /* Message */, "Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410", "Conditions to set in addition to the resolver-specific defaults when resolving imports."),
|
|
8560
8560
|
true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false: diag(6411, 3 /* Message */, "true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411", "`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),
|
|
8561
8561
|
Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more: diag(6412, 3 /* Message */, "Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412", "Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),
|
|
8562
|
+
Entering_conditional_exports: diag(6413, 3 /* Message */, "Entering_conditional_exports_6413", "Entering conditional exports."),
|
|
8563
|
+
Resolved_under_condition_0: diag(6414, 3 /* Message */, "Resolved_under_condition_0_6414", "Resolved under condition '{0}'."),
|
|
8564
|
+
Failed_to_resolve_under_condition_0: diag(6415, 3 /* Message */, "Failed_to_resolve_under_condition_0_6415", "Failed to resolve under condition '{0}'."),
|
|
8565
|
+
Exiting_conditional_exports: diag(6416, 3 /* Message */, "Exiting_conditional_exports_6416", "Exiting conditional exports."),
|
|
8562
8566
|
The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1: diag(6500, 3 /* Message */, "The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500", "The expected type comes from property '{0}' which is declared here on type '{1}'"),
|
|
8563
8567
|
The_expected_type_comes_from_this_index_signature: diag(6501, 3 /* Message */, "The_expected_type_comes_from_this_index_signature_6501", "The expected type comes from this index signature."),
|
|
8564
8568
|
The_expected_type_comes_from_the_return_type_of_this_signature: diag(6502, 3 /* Message */, "The_expected_type_comes_from_the_return_type_of_this_signature_6502", "The expected type comes from the return type of this signature."),
|
|
@@ -17051,10 +17055,10 @@ ${lanes.join("\n")}
|
|
|
17051
17055
|
return symbol.exportSymbol ? symbol.exportSymbol.flags | symbol.flags : symbol.flags;
|
|
17052
17056
|
}
|
|
17053
17057
|
function isWriteOnlyAccess(node) {
|
|
17054
|
-
return accessKind(node) ===
|
|
17058
|
+
return accessKind(node) === 1 /* Write */;
|
|
17055
17059
|
}
|
|
17056
17060
|
function isWriteAccess(node) {
|
|
17057
|
-
return accessKind(node) !==
|
|
17061
|
+
return accessKind(node) !== 0 /* Read */;
|
|
17058
17062
|
}
|
|
17059
17063
|
function accessKind(node) {
|
|
17060
17064
|
const { parent: parent2 } = node;
|
|
@@ -18721,7 +18725,7 @@ ${lanes.join("\n")}
|
|
|
18721
18725
|
const tag = getJSDocSatisfiesTag(node);
|
|
18722
18726
|
return tag && tag.typeExpression && tag.typeExpression.type;
|
|
18723
18727
|
}
|
|
18724
|
-
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,
|
|
18728
|
+
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, objectAllocator, objectAllocatorPatchers, localizedDiagnosticMessages, reservedCharacterPattern, wildcardCharCodes, commonPackageFolders, implicitExcludePathRegexPattern, filesMatcher, directoriesMatcher, excludeMatcher, wildcardMatchers, supportedTSExtensions, supportedTSExtensionsFlat, supportedTSExtensionsWithJson, supportedTSExtensionsForExtractExtension, supportedJSExtensions, supportedJSExtensionsFlat, allSupportedExtensions, allSupportedExtensionsWithJson, supportedDeclarationExtensions, supportedTSImplementationExtensions, ModuleSpecifierEnding, extensionsToRemove, emptyFileSystemEntries;
|
|
18725
18729
|
var init_utilities = __esm({
|
|
18726
18730
|
"src/compiler/utilities.ts"() {
|
|
18727
18731
|
"use strict";
|
|
@@ -18825,12 +18829,6 @@ ${lanes.join("\n")}
|
|
|
18825
18829
|
base64Digits = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
|
|
18826
18830
|
carriageReturnLineFeed = "\r\n";
|
|
18827
18831
|
lineFeed = "\n";
|
|
18828
|
-
AccessKind = /* @__PURE__ */ ((AccessKind2) => {
|
|
18829
|
-
AccessKind2[AccessKind2["Read"] = 0] = "Read";
|
|
18830
|
-
AccessKind2[AccessKind2["Write"] = 1] = "Write";
|
|
18831
|
-
AccessKind2[AccessKind2["ReadWrite"] = 2] = "ReadWrite";
|
|
18832
|
-
return AccessKind2;
|
|
18833
|
-
})(AccessKind || {});
|
|
18834
18832
|
objectAllocator = {
|
|
18835
18833
|
getNodeConstructor: () => Node4,
|
|
18836
18834
|
getTokenConstructor: () => Token,
|
|
@@ -28298,7 +28296,7 @@ ${lanes.join("\n")}
|
|
|
28298
28296
|
}
|
|
28299
28297
|
sourceFlags = contextFlags;
|
|
28300
28298
|
nextToken();
|
|
28301
|
-
const statements = parseList(
|
|
28299
|
+
const statements = parseList(0 /* SourceElements */, parseStatement);
|
|
28302
28300
|
Debug.assert(token() === 1 /* EndOfFileToken */);
|
|
28303
28301
|
const endOfFileToken = addJSDocComment(parseTokenNode());
|
|
28304
28302
|
const sourceFile = createSourceFile2(fileName, languageVersion2, scriptKind2, isDeclarationFile, statements, endOfFileToken, sourceFlags, setExternalModuleIndicator2);
|
|
@@ -28361,7 +28359,7 @@ ${lanes.join("\n")}
|
|
|
28361
28359
|
nextToken();
|
|
28362
28360
|
while (token() !== 1 /* EndOfFileToken */) {
|
|
28363
28361
|
const startPos = scanner2.getStartPos();
|
|
28364
|
-
const statement = parseListElement(
|
|
28362
|
+
const statement = parseListElement(0 /* SourceElements */, parseStatement);
|
|
28365
28363
|
statements.push(statement);
|
|
28366
28364
|
if (startPos === scanner2.getStartPos()) {
|
|
28367
28365
|
nextToken();
|
|
@@ -29048,19 +29046,19 @@ ${lanes.join("\n")}
|
|
|
29048
29046
|
return true;
|
|
29049
29047
|
}
|
|
29050
29048
|
switch (parsingContext2) {
|
|
29051
|
-
case
|
|
29052
|
-
case
|
|
29053
|
-
case
|
|
29049
|
+
case 0 /* SourceElements */:
|
|
29050
|
+
case 1 /* BlockStatements */:
|
|
29051
|
+
case 3 /* SwitchClauseStatements */:
|
|
29054
29052
|
return !(token() === 26 /* SemicolonToken */ && inErrorRecovery) && isStartOfStatement();
|
|
29055
|
-
case
|
|
29053
|
+
case 2 /* SwitchClauses */:
|
|
29056
29054
|
return token() === 82 /* CaseKeyword */ || token() === 88 /* DefaultKeyword */;
|
|
29057
|
-
case
|
|
29055
|
+
case 4 /* TypeMembers */:
|
|
29058
29056
|
return lookAhead(isTypeMemberStart);
|
|
29059
|
-
case
|
|
29057
|
+
case 5 /* ClassMembers */:
|
|
29060
29058
|
return lookAhead(isClassMemberStart) || token() === 26 /* SemicolonToken */ && !inErrorRecovery;
|
|
29061
|
-
case
|
|
29059
|
+
case 6 /* EnumMembers */:
|
|
29062
29060
|
return token() === 22 /* OpenBracketToken */ || isLiteralPropertyName();
|
|
29063
|
-
case
|
|
29061
|
+
case 12 /* ObjectLiteralMembers */:
|
|
29064
29062
|
switch (token()) {
|
|
29065
29063
|
case 22 /* OpenBracketToken */:
|
|
29066
29064
|
case 41 /* AsteriskToken */:
|
|
@@ -29070,13 +29068,13 @@ ${lanes.join("\n")}
|
|
|
29070
29068
|
default:
|
|
29071
29069
|
return isLiteralPropertyName();
|
|
29072
29070
|
}
|
|
29073
|
-
case
|
|
29071
|
+
case 18 /* RestProperties */:
|
|
29074
29072
|
return isLiteralPropertyName();
|
|
29075
|
-
case
|
|
29073
|
+
case 9 /* ObjectBindingElements */:
|
|
29076
29074
|
return token() === 22 /* OpenBracketToken */ || token() === 25 /* DotDotDotToken */ || isLiteralPropertyName();
|
|
29077
|
-
case
|
|
29075
|
+
case 24 /* AssertEntries */:
|
|
29078
29076
|
return isAssertionKey2();
|
|
29079
|
-
case
|
|
29077
|
+
case 7 /* HeritageClauseElement */:
|
|
29080
29078
|
if (token() === 18 /* OpenBraceToken */) {
|
|
29081
29079
|
return lookAhead(isValidHeritageClauseObjectLiteral);
|
|
29082
29080
|
}
|
|
@@ -29085,40 +29083,40 @@ ${lanes.join("\n")}
|
|
|
29085
29083
|
} else {
|
|
29086
29084
|
return isIdentifier2() && !isHeritageClauseExtendsOrImplementsKeyword();
|
|
29087
29085
|
}
|
|
29088
|
-
case
|
|
29086
|
+
case 8 /* VariableDeclarations */:
|
|
29089
29087
|
return isBindingIdentifierOrPrivateIdentifierOrPattern();
|
|
29090
|
-
case
|
|
29088
|
+
case 10 /* ArrayBindingElements */:
|
|
29091
29089
|
return token() === 27 /* CommaToken */ || token() === 25 /* DotDotDotToken */ || isBindingIdentifierOrPrivateIdentifierOrPattern();
|
|
29092
|
-
case
|
|
29090
|
+
case 19 /* TypeParameters */:
|
|
29093
29091
|
return token() === 101 /* InKeyword */ || token() === 85 /* ConstKeyword */ || isIdentifier2();
|
|
29094
|
-
case
|
|
29092
|
+
case 15 /* ArrayLiteralMembers */:
|
|
29095
29093
|
switch (token()) {
|
|
29096
29094
|
case 27 /* CommaToken */:
|
|
29097
29095
|
case 24 /* DotToken */:
|
|
29098
29096
|
return true;
|
|
29099
29097
|
}
|
|
29100
|
-
case
|
|
29098
|
+
case 11 /* ArgumentExpressions */:
|
|
29101
29099
|
return token() === 25 /* DotDotDotToken */ || isStartOfExpression();
|
|
29102
|
-
case
|
|
29100
|
+
case 16 /* Parameters */:
|
|
29103
29101
|
return isStartOfParameter(
|
|
29104
29102
|
/*isJSDocParameter*/
|
|
29105
29103
|
false
|
|
29106
29104
|
);
|
|
29107
|
-
case
|
|
29105
|
+
case 17 /* JSDocParameters */:
|
|
29108
29106
|
return isStartOfParameter(
|
|
29109
29107
|
/*isJSDocParameter*/
|
|
29110
29108
|
true
|
|
29111
29109
|
);
|
|
29112
|
-
case
|
|
29113
|
-
case
|
|
29110
|
+
case 20 /* TypeArguments */:
|
|
29111
|
+
case 21 /* TupleElementTypes */:
|
|
29114
29112
|
return token() === 27 /* CommaToken */ || isStartOfType();
|
|
29115
|
-
case
|
|
29113
|
+
case 22 /* HeritageClauses */:
|
|
29116
29114
|
return isHeritageClause2();
|
|
29117
|
-
case
|
|
29115
|
+
case 23 /* ImportOrExportSpecifiers */:
|
|
29118
29116
|
return tokenIsIdentifierOrKeyword(token());
|
|
29119
|
-
case
|
|
29117
|
+
case 13 /* JsxAttributes */:
|
|
29120
29118
|
return tokenIsIdentifierOrKeyword(token()) || token() === 18 /* OpenBraceToken */;
|
|
29121
|
-
case
|
|
29119
|
+
case 14 /* JsxChildren */:
|
|
29122
29120
|
return true;
|
|
29123
29121
|
}
|
|
29124
29122
|
return Debug.fail("Non-exhaustive case in 'isListElement'.");
|
|
@@ -29162,41 +29160,41 @@ ${lanes.join("\n")}
|
|
|
29162
29160
|
return true;
|
|
29163
29161
|
}
|
|
29164
29162
|
switch (kind) {
|
|
29165
|
-
case
|
|
29166
|
-
case
|
|
29167
|
-
case
|
|
29168
|
-
case
|
|
29169
|
-
case
|
|
29170
|
-
case
|
|
29171
|
-
case
|
|
29172
|
-
case
|
|
29173
|
-
case
|
|
29163
|
+
case 1 /* BlockStatements */:
|
|
29164
|
+
case 2 /* SwitchClauses */:
|
|
29165
|
+
case 4 /* TypeMembers */:
|
|
29166
|
+
case 5 /* ClassMembers */:
|
|
29167
|
+
case 6 /* EnumMembers */:
|
|
29168
|
+
case 12 /* ObjectLiteralMembers */:
|
|
29169
|
+
case 9 /* ObjectBindingElements */:
|
|
29170
|
+
case 23 /* ImportOrExportSpecifiers */:
|
|
29171
|
+
case 24 /* AssertEntries */:
|
|
29174
29172
|
return token() === 19 /* CloseBraceToken */;
|
|
29175
|
-
case
|
|
29173
|
+
case 3 /* SwitchClauseStatements */:
|
|
29176
29174
|
return token() === 19 /* CloseBraceToken */ || token() === 82 /* CaseKeyword */ || token() === 88 /* DefaultKeyword */;
|
|
29177
|
-
case
|
|
29175
|
+
case 7 /* HeritageClauseElement */:
|
|
29178
29176
|
return token() === 18 /* OpenBraceToken */ || token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
|
|
29179
|
-
case
|
|
29177
|
+
case 8 /* VariableDeclarations */:
|
|
29180
29178
|
return isVariableDeclaratorListTerminator();
|
|
29181
|
-
case
|
|
29179
|
+
case 19 /* TypeParameters */:
|
|
29182
29180
|
return token() === 31 /* GreaterThanToken */ || token() === 20 /* OpenParenToken */ || token() === 18 /* OpenBraceToken */ || token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
|
|
29183
|
-
case
|
|
29181
|
+
case 11 /* ArgumentExpressions */:
|
|
29184
29182
|
return token() === 21 /* CloseParenToken */ || token() === 26 /* SemicolonToken */;
|
|
29185
|
-
case
|
|
29186
|
-
case
|
|
29187
|
-
case
|
|
29183
|
+
case 15 /* ArrayLiteralMembers */:
|
|
29184
|
+
case 21 /* TupleElementTypes */:
|
|
29185
|
+
case 10 /* ArrayBindingElements */:
|
|
29188
29186
|
return token() === 23 /* CloseBracketToken */;
|
|
29189
|
-
case
|
|
29190
|
-
case
|
|
29191
|
-
case
|
|
29187
|
+
case 17 /* JSDocParameters */:
|
|
29188
|
+
case 16 /* Parameters */:
|
|
29189
|
+
case 18 /* RestProperties */:
|
|
29192
29190
|
return token() === 21 /* CloseParenToken */ || token() === 23 /* CloseBracketToken */;
|
|
29193
|
-
case
|
|
29191
|
+
case 20 /* TypeArguments */:
|
|
29194
29192
|
return token() !== 27 /* CommaToken */;
|
|
29195
|
-
case
|
|
29193
|
+
case 22 /* HeritageClauses */:
|
|
29196
29194
|
return token() === 18 /* OpenBraceToken */ || token() === 19 /* CloseBraceToken */;
|
|
29197
|
-
case
|
|
29195
|
+
case 13 /* JsxAttributes */:
|
|
29198
29196
|
return token() === 31 /* GreaterThanToken */ || token() === 43 /* SlashToken */;
|
|
29199
|
-
case
|
|
29197
|
+
case 14 /* JsxChildren */:
|
|
29200
29198
|
return token() === 29 /* LessThanToken */ && lookAhead(nextTokenIsSlash);
|
|
29201
29199
|
default:
|
|
29202
29200
|
return false;
|
|
@@ -29215,7 +29213,7 @@ ${lanes.join("\n")}
|
|
|
29215
29213
|
return false;
|
|
29216
29214
|
}
|
|
29217
29215
|
function isInSomeParsingContext() {
|
|
29218
|
-
for (let kind = 0; kind <
|
|
29216
|
+
for (let kind = 0; kind < 25 /* Count */; kind++) {
|
|
29219
29217
|
if (parsingContext & 1 << kind) {
|
|
29220
29218
|
if (isListElement2(
|
|
29221
29219
|
kind,
|
|
@@ -29284,38 +29282,38 @@ ${lanes.join("\n")}
|
|
|
29284
29282
|
}
|
|
29285
29283
|
function isReusableParsingContext(parsingContext2) {
|
|
29286
29284
|
switch (parsingContext2) {
|
|
29287
|
-
case
|
|
29288
|
-
case
|
|
29289
|
-
case
|
|
29290
|
-
case
|
|
29291
|
-
case
|
|
29292
|
-
case
|
|
29293
|
-
case
|
|
29294
|
-
case
|
|
29295
|
-
case
|
|
29296
|
-
case
|
|
29285
|
+
case 5 /* ClassMembers */:
|
|
29286
|
+
case 2 /* SwitchClauses */:
|
|
29287
|
+
case 0 /* SourceElements */:
|
|
29288
|
+
case 1 /* BlockStatements */:
|
|
29289
|
+
case 3 /* SwitchClauseStatements */:
|
|
29290
|
+
case 6 /* EnumMembers */:
|
|
29291
|
+
case 4 /* TypeMembers */:
|
|
29292
|
+
case 8 /* VariableDeclarations */:
|
|
29293
|
+
case 17 /* JSDocParameters */:
|
|
29294
|
+
case 16 /* Parameters */:
|
|
29297
29295
|
return true;
|
|
29298
29296
|
}
|
|
29299
29297
|
return false;
|
|
29300
29298
|
}
|
|
29301
29299
|
function canReuseNode(node, parsingContext2) {
|
|
29302
29300
|
switch (parsingContext2) {
|
|
29303
|
-
case
|
|
29301
|
+
case 5 /* ClassMembers */:
|
|
29304
29302
|
return isReusableClassMember(node);
|
|
29305
|
-
case
|
|
29303
|
+
case 2 /* SwitchClauses */:
|
|
29306
29304
|
return isReusableSwitchClause(node);
|
|
29307
|
-
case
|
|
29308
|
-
case
|
|
29309
|
-
case
|
|
29305
|
+
case 0 /* SourceElements */:
|
|
29306
|
+
case 1 /* BlockStatements */:
|
|
29307
|
+
case 3 /* SwitchClauseStatements */:
|
|
29310
29308
|
return isReusableStatement(node);
|
|
29311
|
-
case
|
|
29309
|
+
case 6 /* EnumMembers */:
|
|
29312
29310
|
return isReusableEnumMember(node);
|
|
29313
|
-
case
|
|
29311
|
+
case 4 /* TypeMembers */:
|
|
29314
29312
|
return isReusableTypeMember(node);
|
|
29315
|
-
case
|
|
29313
|
+
case 8 /* VariableDeclarations */:
|
|
29316
29314
|
return isReusableVariableDeclaration(node);
|
|
29317
|
-
case
|
|
29318
|
-
case
|
|
29315
|
+
case 17 /* JSDocParameters */:
|
|
29316
|
+
case 16 /* Parameters */:
|
|
29319
29317
|
return isReusableParameter(node);
|
|
29320
29318
|
}
|
|
29321
29319
|
return false;
|
|
@@ -29425,56 +29423,56 @@ ${lanes.join("\n")}
|
|
|
29425
29423
|
}
|
|
29426
29424
|
function parsingContextErrors(context) {
|
|
29427
29425
|
switch (context) {
|
|
29428
|
-
case
|
|
29426
|
+
case 0 /* SourceElements */:
|
|
29429
29427
|
return token() === 88 /* DefaultKeyword */ ? parseErrorAtCurrentToken(Diagnostics._0_expected, tokenToString(93 /* ExportKeyword */)) : parseErrorAtCurrentToken(Diagnostics.Declaration_or_statement_expected);
|
|
29430
|
-
case
|
|
29428
|
+
case 1 /* BlockStatements */:
|
|
29431
29429
|
return parseErrorAtCurrentToken(Diagnostics.Declaration_or_statement_expected);
|
|
29432
|
-
case
|
|
29430
|
+
case 2 /* SwitchClauses */:
|
|
29433
29431
|
return parseErrorAtCurrentToken(Diagnostics.case_or_default_expected);
|
|
29434
|
-
case
|
|
29432
|
+
case 3 /* SwitchClauseStatements */:
|
|
29435
29433
|
return parseErrorAtCurrentToken(Diagnostics.Statement_expected);
|
|
29436
|
-
case
|
|
29437
|
-
case
|
|
29434
|
+
case 18 /* RestProperties */:
|
|
29435
|
+
case 4 /* TypeMembers */:
|
|
29438
29436
|
return parseErrorAtCurrentToken(Diagnostics.Property_or_signature_expected);
|
|
29439
|
-
case
|
|
29437
|
+
case 5 /* ClassMembers */:
|
|
29440
29438
|
return parseErrorAtCurrentToken(Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);
|
|
29441
|
-
case
|
|
29439
|
+
case 6 /* EnumMembers */:
|
|
29442
29440
|
return parseErrorAtCurrentToken(Diagnostics.Enum_member_expected);
|
|
29443
|
-
case
|
|
29441
|
+
case 7 /* HeritageClauseElement */:
|
|
29444
29442
|
return parseErrorAtCurrentToken(Diagnostics.Expression_expected);
|
|
29445
|
-
case
|
|
29443
|
+
case 8 /* VariableDeclarations */:
|
|
29446
29444
|
return isKeyword(token()) ? parseErrorAtCurrentToken(Diagnostics._0_is_not_allowed_as_a_variable_declaration_name, tokenToString(token())) : parseErrorAtCurrentToken(Diagnostics.Variable_declaration_expected);
|
|
29447
|
-
case
|
|
29445
|
+
case 9 /* ObjectBindingElements */:
|
|
29448
29446
|
return parseErrorAtCurrentToken(Diagnostics.Property_destructuring_pattern_expected);
|
|
29449
|
-
case
|
|
29447
|
+
case 10 /* ArrayBindingElements */:
|
|
29450
29448
|
return parseErrorAtCurrentToken(Diagnostics.Array_element_destructuring_pattern_expected);
|
|
29451
|
-
case
|
|
29449
|
+
case 11 /* ArgumentExpressions */:
|
|
29452
29450
|
return parseErrorAtCurrentToken(Diagnostics.Argument_expression_expected);
|
|
29453
|
-
case
|
|
29451
|
+
case 12 /* ObjectLiteralMembers */:
|
|
29454
29452
|
return parseErrorAtCurrentToken(Diagnostics.Property_assignment_expected);
|
|
29455
|
-
case
|
|
29453
|
+
case 15 /* ArrayLiteralMembers */:
|
|
29456
29454
|
return parseErrorAtCurrentToken(Diagnostics.Expression_or_comma_expected);
|
|
29457
|
-
case
|
|
29455
|
+
case 17 /* JSDocParameters */:
|
|
29458
29456
|
return parseErrorAtCurrentToken(Diagnostics.Parameter_declaration_expected);
|
|
29459
|
-
case
|
|
29457
|
+
case 16 /* Parameters */:
|
|
29460
29458
|
return isKeyword(token()) ? parseErrorAtCurrentToken(Diagnostics._0_is_not_allowed_as_a_parameter_name, tokenToString(token())) : parseErrorAtCurrentToken(Diagnostics.Parameter_declaration_expected);
|
|
29461
|
-
case
|
|
29459
|
+
case 19 /* TypeParameters */:
|
|
29462
29460
|
return parseErrorAtCurrentToken(Diagnostics.Type_parameter_declaration_expected);
|
|
29463
|
-
case
|
|
29461
|
+
case 20 /* TypeArguments */:
|
|
29464
29462
|
return parseErrorAtCurrentToken(Diagnostics.Type_argument_expected);
|
|
29465
|
-
case
|
|
29463
|
+
case 21 /* TupleElementTypes */:
|
|
29466
29464
|
return parseErrorAtCurrentToken(Diagnostics.Type_expected);
|
|
29467
|
-
case
|
|
29465
|
+
case 22 /* HeritageClauses */:
|
|
29468
29466
|
return parseErrorAtCurrentToken(Diagnostics.Unexpected_token_expected);
|
|
29469
|
-
case
|
|
29467
|
+
case 23 /* ImportOrExportSpecifiers */:
|
|
29470
29468
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
|
|
29471
|
-
case
|
|
29469
|
+
case 13 /* JsxAttributes */:
|
|
29472
29470
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
|
|
29473
|
-
case
|
|
29471
|
+
case 14 /* JsxChildren */:
|
|
29474
29472
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
|
|
29475
|
-
case
|
|
29473
|
+
case 24 /* AssertEntries */:
|
|
29476
29474
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_or_string_literal_expected);
|
|
29477
|
-
case
|
|
29475
|
+
case 25 /* Count */:
|
|
29478
29476
|
return Debug.fail("ParsingContext.Count used as a context");
|
|
29479
29477
|
default:
|
|
29480
29478
|
Debug.assertNever(context);
|
|
@@ -29533,7 +29531,7 @@ ${lanes.join("\n")}
|
|
|
29533
29531
|
);
|
|
29534
29532
|
}
|
|
29535
29533
|
function getExpectedCommaDiagnostic(kind) {
|
|
29536
|
-
return kind ===
|
|
29534
|
+
return kind === 6 /* EnumMembers */ ? Diagnostics.An_enum_member_name_must_be_followed_by_a_or : void 0;
|
|
29537
29535
|
}
|
|
29538
29536
|
function createMissingList() {
|
|
29539
29537
|
const list = createNodeArray([], getNodePos());
|
|
@@ -29727,7 +29725,7 @@ ${lanes.join("\n")}
|
|
|
29727
29725
|
}
|
|
29728
29726
|
function parseTypeArgumentsOfTypeReference() {
|
|
29729
29727
|
if (!scanner2.hasPrecedingLineBreak() && reScanLessThanToken() === 29 /* LessThanToken */) {
|
|
29730
|
-
return parseBracketedList(
|
|
29728
|
+
return parseBracketedList(20 /* TypeArguments */, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
|
|
29731
29729
|
}
|
|
29732
29730
|
}
|
|
29733
29731
|
function parseTypeReference() {
|
|
@@ -29909,7 +29907,7 @@ ${lanes.join("\n")}
|
|
|
29909
29907
|
}
|
|
29910
29908
|
function parseTypeParameters() {
|
|
29911
29909
|
if (token() === 29 /* LessThanToken */) {
|
|
29912
|
-
return parseBracketedList(
|
|
29910
|
+
return parseBracketedList(19 /* TypeParameters */, parseTypeParameter, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
|
|
29913
29911
|
}
|
|
29914
29912
|
}
|
|
29915
29913
|
function isStartOfParameter(isJSDocParameter) {
|
|
@@ -30015,7 +30013,7 @@ ${lanes.join("\n")}
|
|
|
30015
30013
|
const savedAwaitContext = inAwaitContext();
|
|
30016
30014
|
setYieldContext(!!(flags & 1 /* Yield */));
|
|
30017
30015
|
setAwaitContext(!!(flags & 2 /* Await */));
|
|
30018
|
-
const parameters = flags & 32 /* JSDoc */ ? parseDelimitedList(
|
|
30016
|
+
const parameters = flags & 32 /* JSDoc */ ? parseDelimitedList(17 /* JSDocParameters */, parseJSDocParameter) : parseDelimitedList(16 /* Parameters */, () => allowAmbiguity ? parseParameter(savedAwaitContext) : parseParameterForSpeculation(savedAwaitContext));
|
|
30019
30017
|
setYieldContext(savedYieldContext);
|
|
30020
30018
|
setAwaitContext(savedAwaitContext);
|
|
30021
30019
|
return parameters;
|
|
@@ -30083,7 +30081,7 @@ ${lanes.join("\n")}
|
|
|
30083
30081
|
return token() === 58 /* ColonToken */ || token() === 27 /* CommaToken */ || token() === 23 /* CloseBracketToken */;
|
|
30084
30082
|
}
|
|
30085
30083
|
function parseIndexSignatureDeclaration(pos, hasJSDoc, modifiers) {
|
|
30086
|
-
const parameters = parseBracketedList(
|
|
30084
|
+
const parameters = parseBracketedList(16 /* Parameters */, () => parseParameter(
|
|
30087
30085
|
/*inOuterAwaitContext*/
|
|
30088
30086
|
false
|
|
30089
30087
|
), 22 /* OpenBracketToken */, 23 /* CloseBracketToken */);
|
|
@@ -30182,7 +30180,7 @@ ${lanes.join("\n")}
|
|
|
30182
30180
|
function parseObjectTypeMembers() {
|
|
30183
30181
|
let members;
|
|
30184
30182
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
30185
|
-
members = parseList(
|
|
30183
|
+
members = parseList(4 /* TypeMembers */, parseTypeMember);
|
|
30186
30184
|
parseExpected(19 /* CloseBraceToken */);
|
|
30187
30185
|
} else {
|
|
30188
30186
|
members = createMissingList();
|
|
@@ -30236,7 +30234,7 @@ ${lanes.join("\n")}
|
|
|
30236
30234
|
}
|
|
30237
30235
|
const type = parseTypeAnnotation();
|
|
30238
30236
|
parseSemicolon();
|
|
30239
|
-
const members = parseList(
|
|
30237
|
+
const members = parseList(4 /* TypeMembers */, parseTypeMember);
|
|
30240
30238
|
parseExpected(19 /* CloseBraceToken */);
|
|
30241
30239
|
return finishNode(factory2.createMappedTypeNode(readonlyToken, typeParameter, nameType, questionToken, type, members), pos);
|
|
30242
30240
|
}
|
|
@@ -30281,7 +30279,7 @@ ${lanes.join("\n")}
|
|
|
30281
30279
|
const pos = getNodePos();
|
|
30282
30280
|
return finishNode(
|
|
30283
30281
|
factory2.createTupleTypeNode(
|
|
30284
|
-
parseBracketedList(
|
|
30282
|
+
parseBracketedList(21 /* TupleElementTypes */, parseTupleElementNameOrTupleElementType, 22 /* OpenBracketToken */, 23 /* CloseBracketToken */)
|
|
30285
30283
|
),
|
|
30286
30284
|
pos
|
|
30287
30285
|
);
|
|
@@ -30909,10 +30907,10 @@ ${lanes.join("\n")}
|
|
|
30909
30907
|
}
|
|
30910
30908
|
function tryParseParenthesizedArrowFunctionExpression(allowReturnTypeInArrowFunction) {
|
|
30911
30909
|
const triState = isParenthesizedArrowFunctionExpression();
|
|
30912
|
-
if (triState ===
|
|
30910
|
+
if (triState === 0 /* False */) {
|
|
30913
30911
|
return void 0;
|
|
30914
30912
|
}
|
|
30915
|
-
return triState ===
|
|
30913
|
+
return triState === 1 /* True */ ? parseParenthesizedArrowFunctionExpression(
|
|
30916
30914
|
/*allowAmbiguity*/
|
|
30917
30915
|
true,
|
|
30918
30916
|
/*allowReturnTypeInArrowFunction*/
|
|
@@ -30924,18 +30922,18 @@ ${lanes.join("\n")}
|
|
|
30924
30922
|
return lookAhead(isParenthesizedArrowFunctionExpressionWorker);
|
|
30925
30923
|
}
|
|
30926
30924
|
if (token() === 38 /* EqualsGreaterThanToken */) {
|
|
30927
|
-
return
|
|
30925
|
+
return 1 /* True */;
|
|
30928
30926
|
}
|
|
30929
|
-
return
|
|
30927
|
+
return 0 /* False */;
|
|
30930
30928
|
}
|
|
30931
30929
|
function isParenthesizedArrowFunctionExpressionWorker() {
|
|
30932
30930
|
if (token() === 132 /* AsyncKeyword */) {
|
|
30933
30931
|
nextToken();
|
|
30934
30932
|
if (scanner2.hasPrecedingLineBreak()) {
|
|
30935
|
-
return
|
|
30933
|
+
return 0 /* False */;
|
|
30936
30934
|
}
|
|
30937
30935
|
if (token() !== 20 /* OpenParenToken */ && token() !== 29 /* LessThanToken */) {
|
|
30938
|
-
return
|
|
30936
|
+
return 0 /* False */;
|
|
30939
30937
|
}
|
|
30940
30938
|
}
|
|
30941
30939
|
const first2 = token();
|
|
@@ -30947,45 +30945,45 @@ ${lanes.join("\n")}
|
|
|
30947
30945
|
case 38 /* EqualsGreaterThanToken */:
|
|
30948
30946
|
case 58 /* ColonToken */:
|
|
30949
30947
|
case 18 /* OpenBraceToken */:
|
|
30950
|
-
return
|
|
30948
|
+
return 1 /* True */;
|
|
30951
30949
|
default:
|
|
30952
|
-
return
|
|
30950
|
+
return 0 /* False */;
|
|
30953
30951
|
}
|
|
30954
30952
|
}
|
|
30955
30953
|
if (second === 22 /* OpenBracketToken */ || second === 18 /* OpenBraceToken */) {
|
|
30956
|
-
return
|
|
30954
|
+
return 2 /* Unknown */;
|
|
30957
30955
|
}
|
|
30958
30956
|
if (second === 25 /* DotDotDotToken */) {
|
|
30959
|
-
return
|
|
30957
|
+
return 1 /* True */;
|
|
30960
30958
|
}
|
|
30961
30959
|
if (isModifierKind(second) && second !== 132 /* AsyncKeyword */ && lookAhead(nextTokenIsIdentifier)) {
|
|
30962
30960
|
if (nextToken() === 128 /* AsKeyword */) {
|
|
30963
|
-
return
|
|
30961
|
+
return 0 /* False */;
|
|
30964
30962
|
}
|
|
30965
|
-
return
|
|
30963
|
+
return 1 /* True */;
|
|
30966
30964
|
}
|
|
30967
30965
|
if (!isIdentifier2() && second !== 108 /* ThisKeyword */) {
|
|
30968
|
-
return
|
|
30966
|
+
return 0 /* False */;
|
|
30969
30967
|
}
|
|
30970
30968
|
switch (nextToken()) {
|
|
30971
30969
|
case 58 /* ColonToken */:
|
|
30972
|
-
return
|
|
30970
|
+
return 1 /* True */;
|
|
30973
30971
|
case 57 /* QuestionToken */:
|
|
30974
30972
|
nextToken();
|
|
30975
30973
|
if (token() === 58 /* ColonToken */ || token() === 27 /* CommaToken */ || token() === 63 /* EqualsToken */ || token() === 21 /* CloseParenToken */) {
|
|
30976
|
-
return
|
|
30974
|
+
return 1 /* True */;
|
|
30977
30975
|
}
|
|
30978
|
-
return
|
|
30976
|
+
return 0 /* False */;
|
|
30979
30977
|
case 27 /* CommaToken */:
|
|
30980
30978
|
case 63 /* EqualsToken */:
|
|
30981
30979
|
case 21 /* CloseParenToken */:
|
|
30982
|
-
return
|
|
30980
|
+
return 2 /* Unknown */;
|
|
30983
30981
|
}
|
|
30984
|
-
return
|
|
30982
|
+
return 0 /* False */;
|
|
30985
30983
|
} else {
|
|
30986
30984
|
Debug.assert(first2 === 29 /* LessThanToken */);
|
|
30987
30985
|
if (!isIdentifier2() && token() !== 85 /* ConstKeyword */) {
|
|
30988
|
-
return
|
|
30986
|
+
return 0 /* False */;
|
|
30989
30987
|
}
|
|
30990
30988
|
if (languageVariant === 1 /* JSX */) {
|
|
30991
30989
|
const isArrowFunctionInJsx = lookAhead(() => {
|
|
@@ -31007,11 +31005,11 @@ ${lanes.join("\n")}
|
|
|
31007
31005
|
return false;
|
|
31008
31006
|
});
|
|
31009
31007
|
if (isArrowFunctionInJsx) {
|
|
31010
|
-
return
|
|
31008
|
+
return 1 /* True */;
|
|
31011
31009
|
}
|
|
31012
|
-
return
|
|
31010
|
+
return 0 /* False */;
|
|
31013
31011
|
}
|
|
31014
|
-
return
|
|
31012
|
+
return 2 /* Unknown */;
|
|
31015
31013
|
}
|
|
31016
31014
|
}
|
|
31017
31015
|
function parsePossibleParenthesizedArrowFunctionExpression(allowReturnTypeInArrowFunction) {
|
|
@@ -31031,7 +31029,7 @@ ${lanes.join("\n")}
|
|
|
31031
31029
|
}
|
|
31032
31030
|
function tryParseAsyncSimpleArrowFunctionExpression(allowReturnTypeInArrowFunction) {
|
|
31033
31031
|
if (token() === 132 /* AsyncKeyword */) {
|
|
31034
|
-
if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) ===
|
|
31032
|
+
if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) === 1 /* True */) {
|
|
31035
31033
|
const pos = getNodePos();
|
|
31036
31034
|
const asyncModifier = parseModifiersForArrowFunction();
|
|
31037
31035
|
const expr = parseBinaryExpressionOrHigher(0 /* Lowest */);
|
|
@@ -31044,14 +31042,14 @@ ${lanes.join("\n")}
|
|
|
31044
31042
|
if (token() === 132 /* AsyncKeyword */) {
|
|
31045
31043
|
nextToken();
|
|
31046
31044
|
if (scanner2.hasPrecedingLineBreak() || token() === 38 /* EqualsGreaterThanToken */) {
|
|
31047
|
-
return
|
|
31045
|
+
return 0 /* False */;
|
|
31048
31046
|
}
|
|
31049
31047
|
const expr = parseBinaryExpressionOrHigher(0 /* Lowest */);
|
|
31050
31048
|
if (!scanner2.hasPrecedingLineBreak() && expr.kind === 79 /* Identifier */ && token() === 38 /* EqualsGreaterThanToken */) {
|
|
31051
|
-
return
|
|
31049
|
+
return 1 /* True */;
|
|
31052
31050
|
}
|
|
31053
31051
|
}
|
|
31054
|
-
return
|
|
31052
|
+
return 0 /* False */;
|
|
31055
31053
|
}
|
|
31056
31054
|
function parseParenthesizedArrowFunctionExpression(allowAmbiguity, allowReturnTypeInArrowFunction) {
|
|
31057
31055
|
const pos = getNodePos();
|
|
@@ -31459,7 +31457,7 @@ ${lanes.join("\n")}
|
|
|
31459
31457
|
const list = [];
|
|
31460
31458
|
const listPos = getNodePos();
|
|
31461
31459
|
const saveParsingContext = parsingContext;
|
|
31462
|
-
parsingContext |= 1 <<
|
|
31460
|
+
parsingContext |= 1 << 14 /* JsxChildren */;
|
|
31463
31461
|
while (true) {
|
|
31464
31462
|
const child = parseJsxChild(openingTag, currentToken = scanner2.reScanJsxToken());
|
|
31465
31463
|
if (!child)
|
|
@@ -31474,7 +31472,7 @@ ${lanes.join("\n")}
|
|
|
31474
31472
|
}
|
|
31475
31473
|
function parseJsxAttributes() {
|
|
31476
31474
|
const pos = getNodePos();
|
|
31477
|
-
return finishNode(factory2.createJsxAttributes(parseList(
|
|
31475
|
+
return finishNode(factory2.createJsxAttributes(parseList(13 /* JsxAttributes */, parseJsxAttribute)), pos);
|
|
31478
31476
|
}
|
|
31479
31477
|
function parseJsxOpeningOrSelfClosingElementOrOpeningFragment(inExpressionContext) {
|
|
31480
31478
|
const pos = getNodePos();
|
|
@@ -31802,7 +31800,7 @@ ${lanes.join("\n")}
|
|
|
31802
31800
|
}
|
|
31803
31801
|
function parseArgumentList() {
|
|
31804
31802
|
parseExpected(20 /* OpenParenToken */);
|
|
31805
|
-
const result = parseDelimitedList(
|
|
31803
|
+
const result = parseDelimitedList(11 /* ArgumentExpressions */, parseArgumentExpression);
|
|
31806
31804
|
parseExpected(21 /* CloseParenToken */);
|
|
31807
31805
|
return result;
|
|
31808
31806
|
}
|
|
@@ -31814,7 +31812,7 @@ ${lanes.join("\n")}
|
|
|
31814
31812
|
return void 0;
|
|
31815
31813
|
}
|
|
31816
31814
|
nextToken();
|
|
31817
|
-
const typeArguments = parseDelimitedList(
|
|
31815
|
+
const typeArguments = parseDelimitedList(20 /* TypeArguments */, parseType);
|
|
31818
31816
|
if (reScanGreaterToken() !== 31 /* GreaterThanToken */) {
|
|
31819
31817
|
return void 0;
|
|
31820
31818
|
}
|
|
@@ -31914,7 +31912,7 @@ ${lanes.join("\n")}
|
|
|
31914
31912
|
const openBracketPosition = scanner2.getTokenPos();
|
|
31915
31913
|
const openBracketParsed = parseExpected(22 /* OpenBracketToken */);
|
|
31916
31914
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
31917
|
-
const elements = parseDelimitedList(
|
|
31915
|
+
const elements = parseDelimitedList(15 /* ArrayLiteralMembers */, parseArgumentOrArrayLiteralElement);
|
|
31918
31916
|
parseExpectedMatchingBrackets(22 /* OpenBracketToken */, 23 /* CloseBracketToken */, openBracketParsed, openBracketPosition);
|
|
31919
31917
|
return finishNode(factory2.createArrayLiteralExpression(elements, multiLine), pos);
|
|
31920
31918
|
}
|
|
@@ -31975,7 +31973,7 @@ ${lanes.join("\n")}
|
|
|
31975
31973
|
const openBraceParsed = parseExpected(18 /* OpenBraceToken */);
|
|
31976
31974
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
31977
31975
|
const properties = parseDelimitedList(
|
|
31978
|
-
|
|
31976
|
+
12 /* ObjectLiteralMembers */,
|
|
31979
31977
|
parseObjectLiteralElement,
|
|
31980
31978
|
/*considerSemicolonAsDelimiter*/
|
|
31981
31979
|
true
|
|
@@ -32047,7 +32045,7 @@ ${lanes.join("\n")}
|
|
|
32047
32045
|
const openBraceParsed = parseExpected(18 /* OpenBraceToken */, diagnosticMessage);
|
|
32048
32046
|
if (openBraceParsed || ignoreMissingOpenBrace) {
|
|
32049
32047
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
32050
|
-
const statements = parseList(
|
|
32048
|
+
const statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
32051
32049
|
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
32052
32050
|
const result = withJSDoc(finishNode(factory2.createBlock(statements, multiLine), pos), hasJSDoc);
|
|
32053
32051
|
if (token() === 63 /* EqualsToken */) {
|
|
@@ -32205,14 +32203,14 @@ ${lanes.join("\n")}
|
|
|
32205
32203
|
parseExpected(82 /* CaseKeyword */);
|
|
32206
32204
|
const expression = allowInAnd(parseExpression);
|
|
32207
32205
|
parseExpected(58 /* ColonToken */);
|
|
32208
|
-
const statements = parseList(
|
|
32206
|
+
const statements = parseList(3 /* SwitchClauseStatements */, parseStatement);
|
|
32209
32207
|
return withJSDoc(finishNode(factory2.createCaseClause(expression, statements), pos), hasJSDoc);
|
|
32210
32208
|
}
|
|
32211
32209
|
function parseDefaultClause() {
|
|
32212
32210
|
const pos = getNodePos();
|
|
32213
32211
|
parseExpected(88 /* DefaultKeyword */);
|
|
32214
32212
|
parseExpected(58 /* ColonToken */);
|
|
32215
|
-
const statements = parseList(
|
|
32213
|
+
const statements = parseList(3 /* SwitchClauseStatements */, parseStatement);
|
|
32216
32214
|
return finishNode(factory2.createDefaultClause(statements), pos);
|
|
32217
32215
|
}
|
|
32218
32216
|
function parseCaseOrDefaultClause() {
|
|
@@ -32221,7 +32219,7 @@ ${lanes.join("\n")}
|
|
|
32221
32219
|
function parseCaseBlock() {
|
|
32222
32220
|
const pos = getNodePos();
|
|
32223
32221
|
parseExpected(18 /* OpenBraceToken */);
|
|
32224
|
-
const clauses = parseList(
|
|
32222
|
+
const clauses = parseList(2 /* SwitchClauses */, parseCaseOrDefaultClause);
|
|
32225
32223
|
parseExpected(19 /* CloseBraceToken */);
|
|
32226
32224
|
return finishNode(factory2.createCaseBlock(clauses), pos);
|
|
32227
32225
|
}
|
|
@@ -32662,14 +32660,14 @@ ${lanes.join("\n")}
|
|
|
32662
32660
|
function parseObjectBindingPattern() {
|
|
32663
32661
|
const pos = getNodePos();
|
|
32664
32662
|
parseExpected(18 /* OpenBraceToken */);
|
|
32665
|
-
const elements = parseDelimitedList(
|
|
32663
|
+
const elements = parseDelimitedList(9 /* ObjectBindingElements */, parseObjectBindingElement);
|
|
32666
32664
|
parseExpected(19 /* CloseBraceToken */);
|
|
32667
32665
|
return finishNode(factory2.createObjectBindingPattern(elements), pos);
|
|
32668
32666
|
}
|
|
32669
32667
|
function parseArrayBindingPattern() {
|
|
32670
32668
|
const pos = getNodePos();
|
|
32671
32669
|
parseExpected(22 /* OpenBracketToken */);
|
|
32672
|
-
const elements = parseDelimitedList(
|
|
32670
|
+
const elements = parseDelimitedList(10 /* ArrayBindingElements */, parseArrayBindingElement);
|
|
32673
32671
|
parseExpected(23 /* CloseBracketToken */);
|
|
32674
32672
|
return finishNode(factory2.createArrayBindingPattern(elements), pos);
|
|
32675
32673
|
}
|
|
@@ -32727,7 +32725,7 @@ ${lanes.join("\n")}
|
|
|
32727
32725
|
const savedDisallowIn = inDisallowInContext();
|
|
32728
32726
|
setDisallowInContext(inForStatementInitializer);
|
|
32729
32727
|
declarations = parseDelimitedList(
|
|
32730
|
-
|
|
32728
|
+
8 /* VariableDeclarations */,
|
|
32731
32729
|
inForStatementInitializer ? parseVariableDeclaration : parseVariableDeclarationAllowExclamation
|
|
32732
32730
|
);
|
|
32733
32731
|
setDisallowInContext(savedDisallowIn);
|
|
@@ -33130,7 +33128,7 @@ ${lanes.join("\n")}
|
|
|
33130
33128
|
}
|
|
33131
33129
|
function parseHeritageClauses() {
|
|
33132
33130
|
if (isHeritageClause2()) {
|
|
33133
|
-
return parseList(
|
|
33131
|
+
return parseList(22 /* HeritageClauses */, parseHeritageClause);
|
|
33134
33132
|
}
|
|
33135
33133
|
return void 0;
|
|
33136
33134
|
}
|
|
@@ -33139,7 +33137,7 @@ ${lanes.join("\n")}
|
|
|
33139
33137
|
const tok = token();
|
|
33140
33138
|
Debug.assert(tok === 94 /* ExtendsKeyword */ || tok === 117 /* ImplementsKeyword */);
|
|
33141
33139
|
nextToken();
|
|
33142
|
-
const types = parseDelimitedList(
|
|
33140
|
+
const types = parseDelimitedList(7 /* HeritageClauseElement */, parseExpressionWithTypeArguments);
|
|
33143
33141
|
return finishNode(factory2.createHeritageClause(tok, types), pos);
|
|
33144
33142
|
}
|
|
33145
33143
|
function parseExpressionWithTypeArguments() {
|
|
@@ -33152,13 +33150,13 @@ ${lanes.join("\n")}
|
|
|
33152
33150
|
return finishNode(factory2.createExpressionWithTypeArguments(expression, typeArguments), pos);
|
|
33153
33151
|
}
|
|
33154
33152
|
function tryParseTypeArguments() {
|
|
33155
|
-
return token() === 29 /* LessThanToken */ ? parseBracketedList(
|
|
33153
|
+
return token() === 29 /* LessThanToken */ ? parseBracketedList(20 /* TypeArguments */, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */) : void 0;
|
|
33156
33154
|
}
|
|
33157
33155
|
function isHeritageClause2() {
|
|
33158
33156
|
return token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
|
|
33159
33157
|
}
|
|
33160
33158
|
function parseClassMembers() {
|
|
33161
|
-
return parseList(
|
|
33159
|
+
return parseList(5 /* ClassMembers */, parseClassElement);
|
|
33162
33160
|
}
|
|
33163
33161
|
function parseInterfaceDeclaration(pos, hasJSDoc, modifiers) {
|
|
33164
33162
|
parseExpected(118 /* InterfaceKeyword */);
|
|
@@ -33191,7 +33189,7 @@ ${lanes.join("\n")}
|
|
|
33191
33189
|
const name = parseIdentifier();
|
|
33192
33190
|
let members;
|
|
33193
33191
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
33194
|
-
members = doOutsideOfYieldAndAwaitContext(() => parseDelimitedList(
|
|
33192
|
+
members = doOutsideOfYieldAndAwaitContext(() => parseDelimitedList(6 /* EnumMembers */, parseEnumMember));
|
|
33195
33193
|
parseExpected(19 /* CloseBraceToken */);
|
|
33196
33194
|
} else {
|
|
33197
33195
|
members = createMissingList();
|
|
@@ -33203,7 +33201,7 @@ ${lanes.join("\n")}
|
|
|
33203
33201
|
const pos = getNodePos();
|
|
33204
33202
|
let statements;
|
|
33205
33203
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
33206
|
-
statements = parseList(
|
|
33204
|
+
statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
33207
33205
|
parseExpected(19 /* CloseBraceToken */);
|
|
33208
33206
|
} else {
|
|
33209
33207
|
statements = createMissingList();
|
|
@@ -33328,7 +33326,7 @@ ${lanes.join("\n")}
|
|
|
33328
33326
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
33329
33327
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
33330
33328
|
const elements = parseDelimitedList(
|
|
33331
|
-
|
|
33329
|
+
24 /* AssertEntries */,
|
|
33332
33330
|
parseAssertEntry,
|
|
33333
33331
|
/*considerSemicolonAsDelimiter*/
|
|
33334
33332
|
true
|
|
@@ -33412,7 +33410,7 @@ ${lanes.join("\n")}
|
|
|
33412
33410
|
}
|
|
33413
33411
|
function parseNamedImportsOrExports(kind) {
|
|
33414
33412
|
const pos = getNodePos();
|
|
33415
|
-
const node = kind === 272 /* NamedImports */ ? factory2.createNamedImports(parseBracketedList(
|
|
33413
|
+
const node = kind === 272 /* NamedImports */ ? factory2.createNamedImports(parseBracketedList(23 /* ImportOrExportSpecifiers */, parseImportSpecifier, 18 /* OpenBraceToken */, 19 /* CloseBraceToken */)) : factory2.createNamedExports(parseBracketedList(23 /* ImportOrExportSpecifiers */, parseExportSpecifier, 18 /* OpenBraceToken */, 19 /* CloseBraceToken */));
|
|
33416
33414
|
return finishNode(node, pos);
|
|
33417
33415
|
}
|
|
33418
33416
|
function parseExportSpecifier() {
|
|
@@ -34861,7 +34859,7 @@ ${lanes.join("\n")}
|
|
|
34861
34859
|
let currentArrayIndex = 0;
|
|
34862
34860
|
Debug.assert(currentArrayIndex < currentArray.length);
|
|
34863
34861
|
let current = currentArray[currentArrayIndex];
|
|
34864
|
-
let lastQueriedPosition =
|
|
34862
|
+
let lastQueriedPosition = -1 /* Value */;
|
|
34865
34863
|
return {
|
|
34866
34864
|
currentNode(position) {
|
|
34867
34865
|
if (position !== lastQueriedPosition) {
|
|
@@ -34880,7 +34878,7 @@ ${lanes.join("\n")}
|
|
|
34880
34878
|
};
|
|
34881
34879
|
function findHighestListElementThatStartsAtPosition(position) {
|
|
34882
34880
|
currentArray = void 0;
|
|
34883
|
-
currentArrayIndex =
|
|
34881
|
+
currentArrayIndex = -1 /* Value */;
|
|
34884
34882
|
current = void 0;
|
|
34885
34883
|
forEachChild(sourceFile, visitNode3, visitArray2);
|
|
34886
34884
|
return;
|
|
@@ -38467,9 +38465,9 @@ ${lanes.join("\n")}
|
|
|
38467
38465
|
const affectingLocations = [];
|
|
38468
38466
|
let features = getNodeResolutionFeatures(options);
|
|
38469
38467
|
if (resolutionMode === 99 /* ESNext */ && (getEmitModuleResolutionKind(options) === 3 /* Node16 */ || getEmitModuleResolutionKind(options) === 99 /* NodeNext */)) {
|
|
38470
|
-
features |=
|
|
38468
|
+
features |= 32 /* EsmMode */;
|
|
38471
38469
|
}
|
|
38472
|
-
const conditions = features &
|
|
38470
|
+
const conditions = features & 8 /* Exports */ ? getConditions(options, !!(features & 32 /* EsmMode */)) : [];
|
|
38473
38471
|
const diagnostics = [];
|
|
38474
38472
|
const moduleResolutionState = {
|
|
38475
38473
|
compilerOptions: options,
|
|
@@ -38602,27 +38600,27 @@ ${lanes.join("\n")}
|
|
|
38602
38600
|
}
|
|
38603
38601
|
}
|
|
38604
38602
|
function getNodeResolutionFeatures(options) {
|
|
38605
|
-
let features =
|
|
38603
|
+
let features = 0 /* None */;
|
|
38606
38604
|
switch (getEmitModuleResolutionKind(options)) {
|
|
38607
38605
|
case 3 /* Node16 */:
|
|
38608
|
-
features =
|
|
38606
|
+
features = 30 /* Node16Default */;
|
|
38609
38607
|
break;
|
|
38610
38608
|
case 99 /* NodeNext */:
|
|
38611
|
-
features =
|
|
38609
|
+
features = 30 /* NodeNextDefault */;
|
|
38612
38610
|
break;
|
|
38613
38611
|
case 100 /* Bundler */:
|
|
38614
|
-
features =
|
|
38612
|
+
features = 30 /* BundlerDefault */;
|
|
38615
38613
|
break;
|
|
38616
38614
|
}
|
|
38617
38615
|
if (options.resolvePackageJsonExports) {
|
|
38618
|
-
features |=
|
|
38616
|
+
features |= 8 /* Exports */;
|
|
38619
38617
|
} else if (options.resolvePackageJsonExports === false) {
|
|
38620
|
-
features &= ~
|
|
38618
|
+
features &= ~8 /* Exports */;
|
|
38621
38619
|
}
|
|
38622
38620
|
if (options.resolvePackageJsonImports) {
|
|
38623
|
-
features |=
|
|
38621
|
+
features |= 2 /* Imports */;
|
|
38624
38622
|
} else if (options.resolvePackageJsonImports === false) {
|
|
38625
|
-
features &= ~
|
|
38623
|
+
features &= ~2 /* Imports */;
|
|
38626
38624
|
}
|
|
38627
38625
|
return features;
|
|
38628
38626
|
}
|
|
@@ -40184,18 +40182,24 @@ ${lanes.join("\n")}
|
|
|
40184
40182
|
)));
|
|
40185
40183
|
} else if (typeof target === "object" && target !== null) {
|
|
40186
40184
|
if (!Array.isArray(target)) {
|
|
40185
|
+
traceIfEnabled(state, Diagnostics.Entering_conditional_exports);
|
|
40187
40186
|
for (const condition of getOwnKeys(target)) {
|
|
40188
40187
|
if (condition === "default" || state.conditions.indexOf(condition) >= 0 || isApplicableVersionedTypesKey(state.conditions, condition)) {
|
|
40189
40188
|
traceIfEnabled(state, Diagnostics.Matched_0_condition_1, isImports ? "imports" : "exports", condition);
|
|
40190
40189
|
const subTarget = target[condition];
|
|
40191
40190
|
const result = loadModuleFromTargetImportOrExport(subTarget, subpath, pattern, key);
|
|
40192
40191
|
if (result) {
|
|
40192
|
+
traceIfEnabled(state, Diagnostics.Resolved_under_condition_0, condition);
|
|
40193
|
+
traceIfEnabled(state, Diagnostics.Exiting_conditional_exports);
|
|
40193
40194
|
return result;
|
|
40195
|
+
} else {
|
|
40196
|
+
traceIfEnabled(state, Diagnostics.Failed_to_resolve_under_condition_0, condition);
|
|
40194
40197
|
}
|
|
40195
40198
|
} else {
|
|
40196
40199
|
traceIfEnabled(state, Diagnostics.Saw_non_matching_condition_0, condition);
|
|
40197
40200
|
}
|
|
40198
40201
|
}
|
|
40202
|
+
traceIfEnabled(state, Diagnostics.Exiting_conditional_exports);
|
|
40199
40203
|
return void 0;
|
|
40200
40204
|
} else {
|
|
40201
40205
|
if (!length(target)) {
|
|
@@ -43900,7 +43904,7 @@ ${lanes.join("\n")}
|
|
|
43900
43904
|
let redirectPathsSpecifiers;
|
|
43901
43905
|
let relativeSpecifiers;
|
|
43902
43906
|
for (const modulePath of modulePaths) {
|
|
43903
|
-
const specifier = tryGetModuleNameAsNodeModule(
|
|
43907
|
+
const specifier = modulePath.isInNodeModules ? tryGetModuleNameAsNodeModule(
|
|
43904
43908
|
modulePath,
|
|
43905
43909
|
info,
|
|
43906
43910
|
importingSourceFile,
|
|
@@ -43910,7 +43914,7 @@ ${lanes.join("\n")}
|
|
|
43910
43914
|
/*packageNameOnly*/
|
|
43911
43915
|
void 0,
|
|
43912
43916
|
options.overrideImportMode
|
|
43913
|
-
);
|
|
43917
|
+
) : void 0;
|
|
43914
43918
|
nodeModulesSpecifiers = append(nodeModulesSpecifiers, specifier);
|
|
43915
43919
|
if (specifier && modulePath.isRedirect) {
|
|
43916
43920
|
return nodeModulesSpecifiers;
|
|
@@ -49890,7 +49894,7 @@ ${lanes.join("\n")}
|
|
|
49890
49894
|
if (signature.thisParameter) {
|
|
49891
49895
|
return symbolToParameterDeclaration(signature.thisParameter, context);
|
|
49892
49896
|
}
|
|
49893
|
-
if (signature.declaration) {
|
|
49897
|
+
if (signature.declaration && isInJSFile(signature.declaration)) {
|
|
49894
49898
|
const thisTag = getJSDocThisTag(signature.declaration);
|
|
49895
49899
|
if (thisTag && thisTag.typeExpression) {
|
|
49896
49900
|
return factory.createParameterDeclaration(
|
|
@@ -52871,7 +52875,7 @@ ${lanes.join("\n")}
|
|
|
52871
52875
|
function getWidenedTypeForAssignmentDeclaration(symbol, resolvedSymbol) {
|
|
52872
52876
|
const container = getAssignedExpandoInitializer(symbol.valueDeclaration);
|
|
52873
52877
|
if (container) {
|
|
52874
|
-
const tag = getJSDocTypeTag(container);
|
|
52878
|
+
const tag = isInJSFile(container) ? getJSDocTypeTag(container) : void 0;
|
|
52875
52879
|
if (tag && tag.typeExpression) {
|
|
52876
52880
|
return getTypeFromTypeNode(tag.typeExpression);
|
|
52877
52881
|
}
|
|
@@ -63718,7 +63722,17 @@ ${lanes.join("\n")}
|
|
|
63718
63722
|
return propType;
|
|
63719
63723
|
}
|
|
63720
63724
|
if (everyType(type, isTupleType)) {
|
|
63721
|
-
return mapType(type, (t) =>
|
|
63725
|
+
return mapType(type, (t) => {
|
|
63726
|
+
const tupleType = t;
|
|
63727
|
+
const restType = getRestTypeOfTupleType(tupleType);
|
|
63728
|
+
if (!restType) {
|
|
63729
|
+
return undefinedType;
|
|
63730
|
+
}
|
|
63731
|
+
if (compilerOptions.noUncheckedIndexedAccess && index >= tupleType.target.fixedLength + getEndElementCount(tupleType.target, 3 /* Fixed */)) {
|
|
63732
|
+
return getUnionType([restType, undefinedType]);
|
|
63733
|
+
}
|
|
63734
|
+
return restType;
|
|
63735
|
+
});
|
|
63722
63736
|
}
|
|
63723
63737
|
return void 0;
|
|
63724
63738
|
}
|
|
@@ -66360,7 +66374,7 @@ ${lanes.join("\n")}
|
|
|
66360
66374
|
}
|
|
66361
66375
|
return declaredType;
|
|
66362
66376
|
}
|
|
66363
|
-
if (isVariableDeclaration(node) && node.parent.parent.kind === 246 /* ForInStatement */ && isMatchingReference(reference, node.parent.parent.expression)) {
|
|
66377
|
+
if (isVariableDeclaration(node) && node.parent.parent.kind === 246 /* ForInStatement */ && (isMatchingReference(reference, node.parent.parent.expression) || optionalChainContainsReference(node.parent.parent.expression, reference))) {
|
|
66364
66378
|
return getNonNullableTypeIfNeeded(finalizeEvolvingArrayType(getTypeFromFlowType(getTypeAtFlowNode(flow.antecedent))));
|
|
66365
66379
|
}
|
|
66366
66380
|
return void 0;
|
|
@@ -67046,34 +67060,29 @@ ${lanes.join("\n")}
|
|
|
67046
67060
|
if (!isTypeDerivedFrom(rightType, globalFunctionType)) {
|
|
67047
67061
|
return type;
|
|
67048
67062
|
}
|
|
67049
|
-
|
|
67050
|
-
|
|
67051
|
-
if (prototypeProperty) {
|
|
67052
|
-
const prototypePropertyType = getTypeOfSymbol(prototypeProperty);
|
|
67053
|
-
if (!isTypeAny(prototypePropertyType)) {
|
|
67054
|
-
targetType = prototypePropertyType;
|
|
67055
|
-
}
|
|
67056
|
-
}
|
|
67057
|
-
if (isTypeAny(type) && (targetType === globalObjectType || targetType === globalFunctionType)) {
|
|
67063
|
+
const instanceType = mapType(rightType, getInstanceType);
|
|
67064
|
+
if (isTypeAny(type) && (instanceType === globalObjectType || instanceType === globalFunctionType) || !assumeTrue && !(instanceType.flags & 524288 /* Object */ && !isEmptyAnonymousObjectType(instanceType))) {
|
|
67058
67065
|
return type;
|
|
67059
67066
|
}
|
|
67060
|
-
if (!targetType) {
|
|
67061
|
-
const constructSignatures = getSignaturesOfType(rightType, 1 /* Construct */);
|
|
67062
|
-
targetType = constructSignatures.length ? getUnionType(map(constructSignatures, (signature) => getReturnTypeOfSignature(getErasedSignature(signature)))) : emptyObjectType;
|
|
67063
|
-
}
|
|
67064
|
-
if (!assumeTrue && rightType.flags & 1048576 /* Union */) {
|
|
67065
|
-
const nonConstructorTypeInUnion = find(rightType.types, (t) => !isConstructorType(t));
|
|
67066
|
-
if (!nonConstructorTypeInUnion)
|
|
67067
|
-
return type;
|
|
67068
|
-
}
|
|
67069
67067
|
return getNarrowedType(
|
|
67070
67068
|
type,
|
|
67071
|
-
|
|
67069
|
+
instanceType,
|
|
67072
67070
|
assumeTrue,
|
|
67073
67071
|
/*checkDerived*/
|
|
67074
67072
|
true
|
|
67075
67073
|
);
|
|
67076
67074
|
}
|
|
67075
|
+
function getInstanceType(constructorType) {
|
|
67076
|
+
const prototypePropertyType = getTypeOfPropertyOfType(constructorType, "prototype");
|
|
67077
|
+
if (prototypePropertyType && !isTypeAny(prototypePropertyType)) {
|
|
67078
|
+
return prototypePropertyType;
|
|
67079
|
+
}
|
|
67080
|
+
const constructSignatures = getSignaturesOfType(constructorType, 1 /* Construct */);
|
|
67081
|
+
if (constructSignatures.length) {
|
|
67082
|
+
return getUnionType(map(constructSignatures, (signature) => getReturnTypeOfSignature(getErasedSignature(signature))));
|
|
67083
|
+
}
|
|
67084
|
+
return emptyObjectType;
|
|
67085
|
+
}
|
|
67077
67086
|
function getNarrowedType(type, candidate, assumeTrue, checkDerived) {
|
|
67078
67087
|
var _a3;
|
|
67079
67088
|
const key2 = type.flags & 1048576 /* Union */ ? `N${getTypeId(type)},${getTypeId(candidate)},${(assumeTrue ? 1 : 0) | (checkDerived ? 2 : 0)}` : void 0;
|
|
@@ -103232,6 +103241,9 @@ ${lanes.join("\n")}
|
|
|
103232
103241
|
return visitEachChild(node, visitor, context);
|
|
103233
103242
|
}
|
|
103234
103243
|
function visitImportCallExpression(node) {
|
|
103244
|
+
if (moduleKind === 0 /* None */ && languageVersion >= 7 /* ES2020 */) {
|
|
103245
|
+
return visitEachChild(node, visitor, context);
|
|
103246
|
+
}
|
|
103235
103247
|
const externalModuleName = getExternalModuleNameLiteral(factory2, node, currentSourceFile, host, resolver, compilerOptions);
|
|
103236
103248
|
const firstArgument = visitNode(firstOrUndefined(node.arguments), visitor, isExpression);
|
|
103237
103249
|
const argument = externalModuleName && (!firstArgument || !isStringLiteral(firstArgument) || firstArgument.text !== externalModuleName.text) ? externalModuleName : firstArgument;
|
|
@@ -109535,9 +109547,9 @@ ${lanes.join("\n")}
|
|
|
109535
109547
|
formattedNameTempFlagsStack = [];
|
|
109536
109548
|
formattedNameTempFlags = /* @__PURE__ */ new Map();
|
|
109537
109549
|
privateNameTempFlagsStack = [];
|
|
109538
|
-
privateNameTempFlags =
|
|
109550
|
+
privateNameTempFlags = 0 /* Auto */;
|
|
109539
109551
|
tempFlagsStack = [];
|
|
109540
|
-
tempFlags =
|
|
109552
|
+
tempFlags = 0 /* Auto */;
|
|
109541
109553
|
reservedNamesStack = [];
|
|
109542
109554
|
reservedNames = void 0;
|
|
109543
109555
|
reservedPrivateNamesStack = [];
|
|
@@ -110506,7 +110518,7 @@ ${lanes.join("\n")}
|
|
|
110506
110518
|
}
|
|
110507
110519
|
function emitTypeLiteral(node) {
|
|
110508
110520
|
pushPrivateNameGenerationScope(
|
|
110509
|
-
|
|
110521
|
+
0 /* Auto */,
|
|
110510
110522
|
/*newReservedMemberNames*/
|
|
110511
110523
|
void 0
|
|
110512
110524
|
);
|
|
@@ -110695,7 +110707,7 @@ ${lanes.join("\n")}
|
|
|
110695
110707
|
}
|
|
110696
110708
|
function emitObjectLiteralExpression(node) {
|
|
110697
110709
|
pushPrivateNameGenerationScope(
|
|
110698
|
-
|
|
110710
|
+
0 /* Auto */,
|
|
110699
110711
|
/*newReservedMemberNames*/
|
|
110700
110712
|
void 0
|
|
110701
110713
|
);
|
|
@@ -111461,7 +111473,7 @@ ${lanes.join("\n")}
|
|
|
111461
111473
|
}
|
|
111462
111474
|
function emitClassDeclarationOrExpression(node) {
|
|
111463
111475
|
pushPrivateNameGenerationScope(
|
|
111464
|
-
|
|
111476
|
+
0 /* Auto */,
|
|
111465
111477
|
/*newReservedMemberNames*/
|
|
111466
111478
|
void 0
|
|
111467
111479
|
);
|
|
@@ -111494,7 +111506,7 @@ ${lanes.join("\n")}
|
|
|
111494
111506
|
}
|
|
111495
111507
|
function emitInterfaceDeclaration(node) {
|
|
111496
111508
|
pushPrivateNameGenerationScope(
|
|
111497
|
-
|
|
111509
|
+
0 /* Auto */,
|
|
111498
111510
|
/*newReservedMemberNames*/
|
|
111499
111511
|
void 0
|
|
111500
111512
|
);
|
|
@@ -112937,7 +112949,7 @@ ${lanes.join("\n")}
|
|
|
112937
112949
|
return;
|
|
112938
112950
|
}
|
|
112939
112951
|
tempFlagsStack.push(tempFlags);
|
|
112940
|
-
tempFlags =
|
|
112952
|
+
tempFlags = 0 /* Auto */;
|
|
112941
112953
|
formattedNameTempFlagsStack.push(formattedNameTempFlags);
|
|
112942
112954
|
formattedNameTempFlags = void 0;
|
|
112943
112955
|
reservedNamesStack.push(reservedNames);
|
|
@@ -113123,7 +113135,7 @@ ${lanes.join("\n")}
|
|
|
113123
113135
|
case "#":
|
|
113124
113136
|
return privateNameTempFlags;
|
|
113125
113137
|
default:
|
|
113126
|
-
return (_a2 = formattedNameTempFlags == null ? void 0 : formattedNameTempFlags.get(formattedNameKey)) != null ? _a2 :
|
|
113138
|
+
return (_a2 = formattedNameTempFlags == null ? void 0 : formattedNameTempFlags.get(formattedNameKey)) != null ? _a2 : 0 /* Auto */;
|
|
113127
113139
|
}
|
|
113128
113140
|
}
|
|
113129
113141
|
function setTempFlags(formattedNameKey, flags) {
|
|
@@ -113147,7 +113159,7 @@ ${lanes.join("\n")}
|
|
|
113147
113159
|
const key = formatGeneratedName(privateName, prefix, "", suffix);
|
|
113148
113160
|
let tempFlags2 = getTempFlags(key);
|
|
113149
113161
|
if (flags && !(tempFlags2 & flags)) {
|
|
113150
|
-
const name = flags ===
|
|
113162
|
+
const name = flags === 268435456 /* _i */ ? "_i" : "_n";
|
|
113151
113163
|
const fullName = formatGeneratedName(privateName, prefix, name, suffix);
|
|
113152
113164
|
if (isUniqueName(fullName, privateName)) {
|
|
113153
113165
|
tempFlags2 |= flags;
|
|
@@ -113161,7 +113173,7 @@ ${lanes.join("\n")}
|
|
|
113161
113173
|
}
|
|
113162
113174
|
}
|
|
113163
113175
|
while (true) {
|
|
113164
|
-
const count = tempFlags2 &
|
|
113176
|
+
const count = tempFlags2 & 268435455 /* CountMask */;
|
|
113165
113177
|
tempFlags2++;
|
|
113166
113178
|
if (count !== 8 && count !== 13) {
|
|
113167
113179
|
const name = count < 26 ? "_" + String.fromCharCode(97 /* a */ + count) : "_" + (count - 26);
|
|
@@ -113305,7 +113317,7 @@ ${lanes.join("\n")}
|
|
|
113305
113317
|
return generateNameCached(node.name, privateName);
|
|
113306
113318
|
}
|
|
113307
113319
|
return makeTempVariableName(
|
|
113308
|
-
|
|
113320
|
+
0 /* Auto */,
|
|
113309
113321
|
/*reservedInNestedScopes*/
|
|
113310
113322
|
false,
|
|
113311
113323
|
privateName,
|
|
@@ -113362,7 +113374,7 @@ ${lanes.join("\n")}
|
|
|
113362
113374
|
return generateNameForMethodOrAccessor(node, privateName, prefix, suffix);
|
|
113363
113375
|
case 164 /* ComputedPropertyName */:
|
|
113364
113376
|
return makeTempVariableName(
|
|
113365
|
-
|
|
113377
|
+
0 /* Auto */,
|
|
113366
113378
|
/*reserveInNestedScopes*/
|
|
113367
113379
|
true,
|
|
113368
113380
|
privateName,
|
|
@@ -113371,7 +113383,7 @@ ${lanes.join("\n")}
|
|
|
113371
113383
|
);
|
|
113372
113384
|
default:
|
|
113373
113385
|
return makeTempVariableName(
|
|
113374
|
-
|
|
113386
|
+
0 /* Auto */,
|
|
113375
113387
|
/*reserveInNestedScopes*/
|
|
113376
113388
|
false,
|
|
113377
113389
|
privateName,
|
|
@@ -113386,11 +113398,11 @@ ${lanes.join("\n")}
|
|
|
113386
113398
|
const suffix = formatGeneratedNamePart(autoGenerate.suffix);
|
|
113387
113399
|
switch (autoGenerate.flags & 7 /* KindMask */) {
|
|
113388
113400
|
case 1 /* Auto */:
|
|
113389
|
-
return makeTempVariableName(
|
|
113401
|
+
return makeTempVariableName(0 /* Auto */, !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */), isPrivateIdentifier(name), prefix, suffix);
|
|
113390
113402
|
case 2 /* Loop */:
|
|
113391
113403
|
Debug.assertNode(name, isIdentifier);
|
|
113392
113404
|
return makeTempVariableName(
|
|
113393
|
-
|
|
113405
|
+
268435456 /* _i */,
|
|
113394
113406
|
!!(autoGenerate.flags & 8 /* ReservedInNestedScopes */),
|
|
113395
113407
|
/*privateName*/
|
|
113396
113408
|
false,
|
|
@@ -113872,7 +113884,7 @@ ${lanes.join("\n")}
|
|
|
113872
113884
|
function getEmitListItem(emit, parenthesizerRule) {
|
|
113873
113885
|
return emit.length === 1 ? emitListItemNoParenthesizer : typeof parenthesizerRule === "object" ? emitListItemWithParenthesizerRuleSelector : emitListItemWithParenthesizerRule;
|
|
113874
113886
|
}
|
|
113875
|
-
var brackets, notImplementedResolver, createPrinterWithDefaults, createPrinterWithRemoveComments, createPrinterWithRemoveCommentsNeverAsciiEscape, createPrinterWithRemoveCommentsOmitTrailingSemicolon
|
|
113887
|
+
var brackets, notImplementedResolver, createPrinterWithDefaults, createPrinterWithRemoveComments, createPrinterWithRemoveCommentsNeverAsciiEscape, createPrinterWithRemoveCommentsOmitTrailingSemicolon;
|
|
113876
113888
|
var init_emitter = __esm({
|
|
113877
113889
|
"src/compiler/emitter.ts"() {
|
|
113878
113890
|
"use strict";
|
|
@@ -113927,12 +113939,6 @@ ${lanes.join("\n")}
|
|
|
113927
113939
|
createPrinterWithRemoveComments = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true }));
|
|
113928
113940
|
createPrinterWithRemoveCommentsNeverAsciiEscape = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true, neverAsciiEscape: true }));
|
|
113929
113941
|
createPrinterWithRemoveCommentsOmitTrailingSemicolon = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true, omitTrailingSemicolon: true }));
|
|
113930
|
-
TempFlags = /* @__PURE__ */ ((TempFlags2) => {
|
|
113931
|
-
TempFlags2[TempFlags2["Auto"] = 0] = "Auto";
|
|
113932
|
-
TempFlags2[TempFlags2["CountMask"] = 268435455] = "CountMask";
|
|
113933
|
-
TempFlags2[TempFlags2["_i"] = 268435456] = "_i";
|
|
113934
|
-
return TempFlags2;
|
|
113935
|
-
})(TempFlags || {});
|
|
113936
113942
|
}
|
|
113937
113943
|
});
|
|
113938
113944
|
|
|
@@ -114886,14 +114892,14 @@ ${lanes.join("\n")}
|
|
|
114886
114892
|
function createModuleResolutionLoader(containingFile, redirectedReference, options, host, cache) {
|
|
114887
114893
|
return {
|
|
114888
114894
|
nameAndMode: moduleResolutionNameAndModeGetter,
|
|
114889
|
-
resolve: (moduleName,
|
|
114895
|
+
resolve: (moduleName, resolutionMode) => resolveModuleName(
|
|
114890
114896
|
moduleName,
|
|
114891
114897
|
containingFile,
|
|
114892
114898
|
options,
|
|
114893
114899
|
host,
|
|
114894
114900
|
cache,
|
|
114895
114901
|
redirectedReference,
|
|
114896
|
-
|
|
114902
|
+
resolutionMode
|
|
114897
114903
|
)
|
|
114898
114904
|
};
|
|
114899
114905
|
}
|
|
@@ -126604,7 +126610,7 @@ ${lanes.join("\n")}
|
|
|
126604
126610
|
);
|
|
126605
126611
|
}
|
|
126606
126612
|
function makeStringLiteral(text, quotePreference) {
|
|
126607
|
-
return factory.createStringLiteral(text, quotePreference ===
|
|
126613
|
+
return factory.createStringLiteral(text, quotePreference === 0 /* Single */);
|
|
126608
126614
|
}
|
|
126609
126615
|
function quotePreferenceFromString(str, sourceFile) {
|
|
126610
126616
|
return isStringDoubleQuoted(str, sourceFile) ? 1 /* Double */ : 0 /* Single */;
|
|
@@ -127506,7 +127512,13 @@ ${lanes.join("\n")}
|
|
|
127506
127512
|
function createPackageJsonImportFilter(fromFile, preferences, host) {
|
|
127507
127513
|
const packageJsons = (host.getPackageJsonsVisibleToFile && host.getPackageJsonsVisibleToFile(fromFile.fileName) || getPackageJsonsVisibleToFile(fromFile.fileName, host)).filter((p) => p.parseable);
|
|
127508
127514
|
let usesNodeCoreModules;
|
|
127509
|
-
|
|
127515
|
+
let ambientModuleCache;
|
|
127516
|
+
let sourceFileCache;
|
|
127517
|
+
return {
|
|
127518
|
+
allowsImportingAmbientModule,
|
|
127519
|
+
allowsImportingSourceFile,
|
|
127520
|
+
allowsImportingSpecifier
|
|
127521
|
+
};
|
|
127510
127522
|
function moduleSpecifierIsCoveredByPackageJson(specifier) {
|
|
127511
127523
|
const packageName = getNodeModuleRootSpecifier(specifier);
|
|
127512
127524
|
for (const packageJson of packageJsons) {
|
|
@@ -127520,26 +127532,49 @@ ${lanes.join("\n")}
|
|
|
127520
127532
|
if (!packageJsons.length || !moduleSymbol.valueDeclaration) {
|
|
127521
127533
|
return true;
|
|
127522
127534
|
}
|
|
127523
|
-
|
|
127524
|
-
|
|
127525
|
-
|
|
127526
|
-
|
|
127535
|
+
if (!ambientModuleCache) {
|
|
127536
|
+
ambientModuleCache = /* @__PURE__ */ new Map();
|
|
127537
|
+
} else {
|
|
127538
|
+
const cached = ambientModuleCache.get(moduleSymbol);
|
|
127539
|
+
if (cached !== void 0) {
|
|
127540
|
+
return cached;
|
|
127541
|
+
}
|
|
127527
127542
|
}
|
|
127528
127543
|
const declaredModuleSpecifier = stripQuotes(moduleSymbol.getName());
|
|
127529
127544
|
if (isAllowedCoreNodeModulesImport(declaredModuleSpecifier)) {
|
|
127545
|
+
ambientModuleCache.set(moduleSymbol, true);
|
|
127546
|
+
return true;
|
|
127547
|
+
}
|
|
127548
|
+
const declaringSourceFile = moduleSymbol.valueDeclaration.getSourceFile();
|
|
127549
|
+
const declaringNodeModuleName = getNodeModulesPackageNameFromFileName(declaringSourceFile.fileName, moduleSpecifierResolutionHost);
|
|
127550
|
+
if (typeof declaringNodeModuleName === "undefined") {
|
|
127551
|
+
ambientModuleCache.set(moduleSymbol, true);
|
|
127530
127552
|
return true;
|
|
127531
127553
|
}
|
|
127532
|
-
|
|
127554
|
+
const result = moduleSpecifierIsCoveredByPackageJson(declaringNodeModuleName) || moduleSpecifierIsCoveredByPackageJson(declaredModuleSpecifier);
|
|
127555
|
+
ambientModuleCache.set(moduleSymbol, result);
|
|
127556
|
+
return result;
|
|
127533
127557
|
}
|
|
127534
127558
|
function allowsImportingSourceFile(sourceFile, moduleSpecifierResolutionHost) {
|
|
127535
127559
|
if (!packageJsons.length) {
|
|
127536
127560
|
return true;
|
|
127537
127561
|
}
|
|
127562
|
+
if (!sourceFileCache) {
|
|
127563
|
+
sourceFileCache = /* @__PURE__ */ new Map();
|
|
127564
|
+
} else {
|
|
127565
|
+
const cached = sourceFileCache.get(sourceFile);
|
|
127566
|
+
if (cached !== void 0) {
|
|
127567
|
+
return cached;
|
|
127568
|
+
}
|
|
127569
|
+
}
|
|
127538
127570
|
const moduleSpecifier = getNodeModulesPackageNameFromFileName(sourceFile.fileName, moduleSpecifierResolutionHost);
|
|
127539
127571
|
if (!moduleSpecifier) {
|
|
127572
|
+
sourceFileCache.set(sourceFile, true);
|
|
127540
127573
|
return true;
|
|
127541
127574
|
}
|
|
127542
|
-
|
|
127575
|
+
const result = moduleSpecifierIsCoveredByPackageJson(moduleSpecifier);
|
|
127576
|
+
sourceFileCache.set(sourceFile, result);
|
|
127577
|
+
return result;
|
|
127543
127578
|
}
|
|
127544
127579
|
function allowsImportingSpecifier(moduleSpecifier) {
|
|
127545
127580
|
if (!packageJsons.length || isAllowedCoreNodeModulesImport(moduleSpecifier)) {
|
|
@@ -127759,6 +127794,64 @@ ${lanes.join("\n")}
|
|
|
127759
127794
|
function isSourceFileFromLibrary(program, node) {
|
|
127760
127795
|
return program.isSourceFileFromExternalLibrary(node) || program.isSourceFileDefaultLibrary(node);
|
|
127761
127796
|
}
|
|
127797
|
+
function newCaseClauseTracker(checker, clauses) {
|
|
127798
|
+
const existingStrings = /* @__PURE__ */ new Set();
|
|
127799
|
+
const existingNumbers = /* @__PURE__ */ new Set();
|
|
127800
|
+
const existingBigInts = /* @__PURE__ */ new Set();
|
|
127801
|
+
for (const clause of clauses) {
|
|
127802
|
+
if (!isDefaultClause(clause)) {
|
|
127803
|
+
if (isLiteralExpression(clause.expression)) {
|
|
127804
|
+
const expression = clause.expression;
|
|
127805
|
+
switch (expression.kind) {
|
|
127806
|
+
case 14 /* NoSubstitutionTemplateLiteral */:
|
|
127807
|
+
case 10 /* StringLiteral */:
|
|
127808
|
+
existingStrings.add(expression.text);
|
|
127809
|
+
break;
|
|
127810
|
+
case 8 /* NumericLiteral */:
|
|
127811
|
+
existingNumbers.add(parseInt(expression.text));
|
|
127812
|
+
break;
|
|
127813
|
+
case 9 /* BigIntLiteral */:
|
|
127814
|
+
const parsedBigInt = parseBigInt(endsWith(expression.text, "n") ? expression.text.slice(0, -1) : expression.text);
|
|
127815
|
+
if (parsedBigInt) {
|
|
127816
|
+
existingBigInts.add(pseudoBigIntToString(parsedBigInt));
|
|
127817
|
+
}
|
|
127818
|
+
break;
|
|
127819
|
+
}
|
|
127820
|
+
} else {
|
|
127821
|
+
const symbol = checker.getSymbolAtLocation(clause.expression);
|
|
127822
|
+
if (symbol && symbol.valueDeclaration && isEnumMember(symbol.valueDeclaration)) {
|
|
127823
|
+
const enumValue = checker.getConstantValue(symbol.valueDeclaration);
|
|
127824
|
+
if (enumValue !== void 0) {
|
|
127825
|
+
addValue(enumValue);
|
|
127826
|
+
}
|
|
127827
|
+
}
|
|
127828
|
+
}
|
|
127829
|
+
}
|
|
127830
|
+
}
|
|
127831
|
+
return {
|
|
127832
|
+
addValue,
|
|
127833
|
+
hasValue
|
|
127834
|
+
};
|
|
127835
|
+
function addValue(value) {
|
|
127836
|
+
switch (typeof value) {
|
|
127837
|
+
case "string":
|
|
127838
|
+
existingStrings.add(value);
|
|
127839
|
+
break;
|
|
127840
|
+
case "number":
|
|
127841
|
+
existingNumbers.add(value);
|
|
127842
|
+
}
|
|
127843
|
+
}
|
|
127844
|
+
function hasValue(value) {
|
|
127845
|
+
switch (typeof value) {
|
|
127846
|
+
case "string":
|
|
127847
|
+
return existingStrings.has(value);
|
|
127848
|
+
case "number":
|
|
127849
|
+
return existingNumbers.has(value);
|
|
127850
|
+
case "object":
|
|
127851
|
+
return existingBigInts.has(pseudoBigIntToString(value));
|
|
127852
|
+
}
|
|
127853
|
+
}
|
|
127854
|
+
}
|
|
127762
127855
|
var scanner, SemanticMeaning, tripleSlashDirectivePrefixRegex, typeKeywords, QuotePreference, displayPartWriter, lineFeed2, ANONYMOUS, syntaxMayBeASICandidate;
|
|
127763
127856
|
var init_utilities4 = __esm({
|
|
127764
127857
|
"src/services/utilities.ts"() {
|
|
@@ -139268,13 +139361,13 @@ ${lanes.join("\n")}
|
|
|
139268
139361
|
var _a2, _b;
|
|
139269
139362
|
const { fix, symbolName: symbolName2 } = info;
|
|
139270
139363
|
switch (fix.kind) {
|
|
139271
|
-
case
|
|
139364
|
+
case 0 /* UseNamespace */:
|
|
139272
139365
|
addToNamespace.push(fix);
|
|
139273
139366
|
break;
|
|
139274
|
-
case
|
|
139367
|
+
case 1 /* JsdocTypeImport */:
|
|
139275
139368
|
importType.push(fix);
|
|
139276
139369
|
break;
|
|
139277
|
-
case
|
|
139370
|
+
case 2 /* AddToExisting */: {
|
|
139278
139371
|
const { importClauseOrBindingPattern, importKind, addAsTypeOnly } = fix;
|
|
139279
139372
|
const key = String(getNodeId(importClauseOrBindingPattern));
|
|
139280
139373
|
let entry = addToExisting.get(key);
|
|
@@ -139293,7 +139386,7 @@ ${lanes.join("\n")}
|
|
|
139293
139386
|
}
|
|
139294
139387
|
break;
|
|
139295
139388
|
}
|
|
139296
|
-
case
|
|
139389
|
+
case 3 /* AddNew */: {
|
|
139297
139390
|
const { moduleSpecifier, importKind, useRequire, addAsTypeOnly } = fix;
|
|
139298
139391
|
const entry = getNewImportEntry(moduleSpecifier, importKind, useRequire, addAsTypeOnly);
|
|
139299
139392
|
Debug.assert(entry.useRequire === useRequire, "(Add new) Tried to add an `import` and a `require` for the same module");
|
|
@@ -139314,7 +139407,7 @@ ${lanes.join("\n")}
|
|
|
139314
139407
|
}
|
|
139315
139408
|
break;
|
|
139316
139409
|
}
|
|
139317
|
-
case
|
|
139410
|
+
case 4 /* PromoteTypeOnly */:
|
|
139318
139411
|
break;
|
|
139319
139412
|
default:
|
|
139320
139413
|
Debug.assertNever(fix, `fix wasn't never - got kind ${fix.kind}`);
|
|
@@ -139341,13 +139434,13 @@ ${lanes.join("\n")}
|
|
|
139341
139434
|
namespaceLikeImport: void 0,
|
|
139342
139435
|
useRequire
|
|
139343
139436
|
};
|
|
139344
|
-
if (importKind === 1 /* Default */ && addAsTypeOnly ===
|
|
139437
|
+
if (importKind === 1 /* Default */ && addAsTypeOnly === 2 /* Required */) {
|
|
139345
139438
|
if (typeOnlyEntry)
|
|
139346
139439
|
return typeOnlyEntry;
|
|
139347
139440
|
newImports.set(typeOnlyKey, newEntry);
|
|
139348
139441
|
return newEntry;
|
|
139349
139442
|
}
|
|
139350
|
-
if (addAsTypeOnly ===
|
|
139443
|
+
if (addAsTypeOnly === 1 /* Allowed */ && (typeOnlyEntry || nonTypeOnlyEntry)) {
|
|
139351
139444
|
return typeOnlyEntry || nonTypeOnlyEntry;
|
|
139352
139445
|
}
|
|
139353
139446
|
if (nonTypeOnlyEntry) {
|
|
@@ -140354,7 +140447,7 @@ ${lanes.join("\n")}
|
|
|
140354
140447
|
}
|
|
140355
140448
|
return !isStringANonContextualKeyword(res) ? res || "_" : `_${res}`;
|
|
140356
140449
|
}
|
|
140357
|
-
var importFixName, importFixId, errorCodes17
|
|
140450
|
+
var importFixName, importFixId, errorCodes17;
|
|
140358
140451
|
var init_importFixes = __esm({
|
|
140359
140452
|
"src/services/codefixes/importFixes.ts"() {
|
|
140360
140453
|
"use strict";
|
|
@@ -140413,20 +140506,6 @@ ${lanes.join("\n")}
|
|
|
140413
140506
|
return createCombinedCodeActions(ts_textChanges_exports.ChangeTracker.with(context, importAdder.writeFixes));
|
|
140414
140507
|
}
|
|
140415
140508
|
});
|
|
140416
|
-
ImportFixKind = /* @__PURE__ */ ((ImportFixKind2) => {
|
|
140417
|
-
ImportFixKind2[ImportFixKind2["UseNamespace"] = 0] = "UseNamespace";
|
|
140418
|
-
ImportFixKind2[ImportFixKind2["JsdocTypeImport"] = 1] = "JsdocTypeImport";
|
|
140419
|
-
ImportFixKind2[ImportFixKind2["AddToExisting"] = 2] = "AddToExisting";
|
|
140420
|
-
ImportFixKind2[ImportFixKind2["AddNew"] = 3] = "AddNew";
|
|
140421
|
-
ImportFixKind2[ImportFixKind2["PromoteTypeOnly"] = 4] = "PromoteTypeOnly";
|
|
140422
|
-
return ImportFixKind2;
|
|
140423
|
-
})(ImportFixKind || {});
|
|
140424
|
-
AddAsTypeOnly = /* @__PURE__ */ ((AddAsTypeOnly2) => {
|
|
140425
|
-
AddAsTypeOnly2[AddAsTypeOnly2["Allowed"] = 1] = "Allowed";
|
|
140426
|
-
AddAsTypeOnly2[AddAsTypeOnly2["Required"] = 2] = "Required";
|
|
140427
|
-
AddAsTypeOnly2[AddAsTypeOnly2["NotAllowed"] = 4] = "NotAllowed";
|
|
140428
|
-
return AddAsTypeOnly2;
|
|
140429
|
-
})(AddAsTypeOnly || {});
|
|
140430
140509
|
}
|
|
140431
140510
|
});
|
|
140432
140511
|
|
|
@@ -146730,19 +146809,19 @@ ${lanes.join("\n")}
|
|
|
146730
146809
|
return void 0;
|
|
146731
146810
|
}
|
|
146732
146811
|
switch (completionData.kind) {
|
|
146733
|
-
case
|
|
146812
|
+
case 0 /* Data */:
|
|
146734
146813
|
const response = completionInfoFromData(sourceFile, host, program, compilerOptions, log, completionData, preferences, formatContext, position);
|
|
146735
146814
|
if (response == null ? void 0 : response.isIncomplete) {
|
|
146736
146815
|
incompleteCompletionsCache == null ? void 0 : incompleteCompletionsCache.set(response);
|
|
146737
146816
|
}
|
|
146738
146817
|
return response;
|
|
146739
|
-
case
|
|
146818
|
+
case 1 /* JsDocTagName */:
|
|
146740
146819
|
return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocTagNameCompletions());
|
|
146741
|
-
case
|
|
146820
|
+
case 2 /* JsDocTag */:
|
|
146742
146821
|
return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocTagCompletions());
|
|
146743
|
-
case
|
|
146822
|
+
case 3 /* JsDocParameterName */:
|
|
146744
146823
|
return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocParameterNameCompletions(completionData.tag));
|
|
146745
|
-
case
|
|
146824
|
+
case 4 /* Keywords */:
|
|
146746
146825
|
return specificKeywordCompletionInfo(completionData.keywordCompletions, completionData.isNewIdentifierLocation);
|
|
146747
146826
|
default:
|
|
146748
146827
|
return Debug.assertNever(completionData);
|
|
@@ -146845,7 +146924,7 @@ ${lanes.join("\n")}
|
|
|
146845
146924
|
}
|
|
146846
146925
|
function keywordCompletionData(keywordFilters, filterOutTsOnlyKeywords, isNewIdentifierLocation) {
|
|
146847
146926
|
return {
|
|
146848
|
-
kind:
|
|
146927
|
+
kind: 4 /* Keywords */,
|
|
146849
146928
|
keywordCompletions: getKeywordCompletions(keywordFilters, filterOutTsOnlyKeywords),
|
|
146850
146929
|
isNewIdentifierLocation
|
|
146851
146930
|
};
|
|
@@ -147075,64 +147154,6 @@ ${lanes.join("\n")}
|
|
|
147075
147154
|
}
|
|
147076
147155
|
return void 0;
|
|
147077
147156
|
}
|
|
147078
|
-
function newCaseClauseTracker(checker, clauses) {
|
|
147079
|
-
const existingStrings = /* @__PURE__ */ new Set();
|
|
147080
|
-
const existingNumbers = /* @__PURE__ */ new Set();
|
|
147081
|
-
const existingBigInts = /* @__PURE__ */ new Set();
|
|
147082
|
-
for (const clause of clauses) {
|
|
147083
|
-
if (!isDefaultClause(clause)) {
|
|
147084
|
-
if (isLiteralExpression(clause.expression)) {
|
|
147085
|
-
const expression = clause.expression;
|
|
147086
|
-
switch (expression.kind) {
|
|
147087
|
-
case 14 /* NoSubstitutionTemplateLiteral */:
|
|
147088
|
-
case 10 /* StringLiteral */:
|
|
147089
|
-
existingStrings.add(expression.text);
|
|
147090
|
-
break;
|
|
147091
|
-
case 8 /* NumericLiteral */:
|
|
147092
|
-
existingNumbers.add(parseInt(expression.text));
|
|
147093
|
-
break;
|
|
147094
|
-
case 9 /* BigIntLiteral */:
|
|
147095
|
-
const parsedBigInt = parseBigInt(endsWith(expression.text, "n") ? expression.text.slice(0, -1) : expression.text);
|
|
147096
|
-
if (parsedBigInt) {
|
|
147097
|
-
existingBigInts.add(pseudoBigIntToString(parsedBigInt));
|
|
147098
|
-
}
|
|
147099
|
-
break;
|
|
147100
|
-
}
|
|
147101
|
-
} else {
|
|
147102
|
-
const symbol = checker.getSymbolAtLocation(clause.expression);
|
|
147103
|
-
if (symbol && symbol.valueDeclaration && isEnumMember(symbol.valueDeclaration)) {
|
|
147104
|
-
const enumValue = checker.getConstantValue(symbol.valueDeclaration);
|
|
147105
|
-
if (enumValue !== void 0) {
|
|
147106
|
-
addValue(enumValue);
|
|
147107
|
-
}
|
|
147108
|
-
}
|
|
147109
|
-
}
|
|
147110
|
-
}
|
|
147111
|
-
}
|
|
147112
|
-
return {
|
|
147113
|
-
addValue,
|
|
147114
|
-
hasValue
|
|
147115
|
-
};
|
|
147116
|
-
function addValue(value) {
|
|
147117
|
-
switch (typeof value) {
|
|
147118
|
-
case "string":
|
|
147119
|
-
existingStrings.add(value);
|
|
147120
|
-
break;
|
|
147121
|
-
case "number":
|
|
147122
|
-
existingNumbers.add(value);
|
|
147123
|
-
}
|
|
147124
|
-
}
|
|
147125
|
-
function hasValue(value) {
|
|
147126
|
-
switch (typeof value) {
|
|
147127
|
-
case "string":
|
|
147128
|
-
return existingStrings.has(value);
|
|
147129
|
-
case "number":
|
|
147130
|
-
return existingNumbers.has(value);
|
|
147131
|
-
case "object":
|
|
147132
|
-
return existingBigInts.has(pseudoBigIntToString(value));
|
|
147133
|
-
}
|
|
147134
|
-
}
|
|
147135
|
-
}
|
|
147136
147157
|
function typeNodeToExpression(typeNode, languageVersion, quotePreference) {
|
|
147137
147158
|
switch (typeNode.kind) {
|
|
147138
147159
|
case 180 /* TypeReference */:
|
|
@@ -147180,9 +147201,9 @@ ${lanes.join("\n")}
|
|
|
147180
147201
|
}
|
|
147181
147202
|
function isMemberCompletionKind(kind) {
|
|
147182
147203
|
switch (kind) {
|
|
147183
|
-
case
|
|
147184
|
-
case
|
|
147185
|
-
case
|
|
147204
|
+
case 0 /* ObjectPropertyDeclaration */:
|
|
147205
|
+
case 3 /* MemberLike */:
|
|
147206
|
+
case 2 /* PropertyAccess */:
|
|
147186
147207
|
return true;
|
|
147187
147208
|
default:
|
|
147188
147209
|
return false;
|
|
@@ -147298,7 +147319,7 @@ ${lanes.join("\n")}
|
|
|
147298
147319
|
if ((origin == null ? void 0 : origin.kind) === 64 /* TypeOnlyAlias */) {
|
|
147299
147320
|
hasAction = true;
|
|
147300
147321
|
}
|
|
147301
|
-
if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind ===
|
|
147322
|
+
if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind === 3 /* MemberLike */ && isClassLikeMemberCompletion(symbol, location, sourceFile)) {
|
|
147302
147323
|
let importAdder;
|
|
147303
147324
|
({ insertText, isSnippet, importAdder, replacementSpan } = getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, position, contextToken, formatContext));
|
|
147304
147325
|
sortText = SortText.ClassMemberSnippets;
|
|
@@ -147833,7 +147854,7 @@ ${lanes.join("\n")}
|
|
|
147833
147854
|
const symbol = symbols[i];
|
|
147834
147855
|
const origin = symbolToOriginInfoMap == null ? void 0 : symbolToOriginInfoMap[i];
|
|
147835
147856
|
const info = getCompletionEntryDisplayNameForSymbol(symbol, target, origin, kind, !!jsxIdentifierExpected);
|
|
147836
|
-
if (!info || uniques.get(info.name) && (!origin || !originIsObjectLiteralMethod(origin)) || kind ===
|
|
147857
|
+
if (!info || uniques.get(info.name) && (!origin || !originIsObjectLiteralMethod(origin)) || kind === 1 /* Global */ && symbolToSortTextMap && !shouldIncludeSymbol(symbol, symbolToSortTextMap)) {
|
|
147837
147858
|
continue;
|
|
147838
147859
|
}
|
|
147839
147860
|
const { name, needsConvertPropertyAccess } = info;
|
|
@@ -147972,7 +147993,7 @@ ${lanes.join("\n")}
|
|
|
147972
147993
|
if (!completionData) {
|
|
147973
147994
|
return { type: "none" };
|
|
147974
147995
|
}
|
|
147975
|
-
if (completionData.kind !==
|
|
147996
|
+
if (completionData.kind !== 0 /* Data */) {
|
|
147976
147997
|
return { type: "request", request: completionData };
|
|
147977
147998
|
}
|
|
147978
147999
|
const { symbols, literals, location, completionKind, symbolToOriginInfoMap, contextToken, previousToken, isJsxInitializer, isTypeOnlyLocation } = completionData;
|
|
@@ -147998,13 +148019,13 @@ ${lanes.join("\n")}
|
|
|
147998
148019
|
case "request": {
|
|
147999
148020
|
const { request } = symbolCompletion;
|
|
148000
148021
|
switch (request.kind) {
|
|
148001
|
-
case
|
|
148022
|
+
case 1 /* JsDocTagName */:
|
|
148002
148023
|
return ts_JsDoc_exports.getJSDocTagNameCompletionDetails(name);
|
|
148003
|
-
case
|
|
148024
|
+
case 2 /* JsDocTag */:
|
|
148004
148025
|
return ts_JsDoc_exports.getJSDocTagCompletionDetails(name);
|
|
148005
|
-
case
|
|
148026
|
+
case 3 /* JsDocParameterName */:
|
|
148006
148027
|
return ts_JsDoc_exports.getJSDocParameterNameCompletionDetails(name);
|
|
148007
|
-
case
|
|
148028
|
+
case 4 /* Keywords */:
|
|
148008
148029
|
return some(request.keywordCompletions, (c) => c.name === name) ? createSimpleDetails(name, "keyword" /* keyword */, 5 /* keyword */) : void 0;
|
|
148009
148030
|
default:
|
|
148010
148031
|
return Debug.assertNever(request);
|
|
@@ -150010,7 +150031,7 @@ ${lanes.join("\n")}
|
|
|
150010
150031
|
}
|
|
150011
150032
|
return charCode;
|
|
150012
150033
|
}
|
|
150013
|
-
var moduleSpecifierResolutionLimit, moduleSpecifierResolutionCacheAttemptLimit, SortText, CompletionSource, SymbolOriginInfoKind,
|
|
150034
|
+
var moduleSpecifierResolutionLimit, moduleSpecifierResolutionCacheAttemptLimit, SortText, CompletionSource, SymbolOriginInfoKind, CompletionKind, _keywordCompletions, allKeywordsCompletions;
|
|
150014
150035
|
var init_completions = __esm({
|
|
150015
150036
|
"src/services/completions.ts"() {
|
|
150016
150037
|
"use strict";
|
|
@@ -150062,14 +150083,6 @@ ${lanes.join("\n")}
|
|
|
150062
150083
|
SymbolOriginInfoKind2[SymbolOriginInfoKind2["SymbolMemberExport"] = 6] = "SymbolMemberExport";
|
|
150063
150084
|
return SymbolOriginInfoKind2;
|
|
150064
150085
|
})(SymbolOriginInfoKind || {});
|
|
150065
|
-
CompletionDataKind = /* @__PURE__ */ ((CompletionDataKind2) => {
|
|
150066
|
-
CompletionDataKind2[CompletionDataKind2["Data"] = 0] = "Data";
|
|
150067
|
-
CompletionDataKind2[CompletionDataKind2["JsDocTagName"] = 1] = "JsDocTagName";
|
|
150068
|
-
CompletionDataKind2[CompletionDataKind2["JsDocTag"] = 2] = "JsDocTag";
|
|
150069
|
-
CompletionDataKind2[CompletionDataKind2["JsDocParameterName"] = 3] = "JsDocParameterName";
|
|
150070
|
-
CompletionDataKind2[CompletionDataKind2["Keywords"] = 4] = "Keywords";
|
|
150071
|
-
return CompletionDataKind2;
|
|
150072
|
-
})(CompletionDataKind || {});
|
|
150073
150086
|
CompletionKind = /* @__PURE__ */ ((CompletionKind2) => {
|
|
150074
150087
|
CompletionKind2[CompletionKind2["ObjectPropertyDeclaration"] = 0] = "ObjectPropertyDeclaration";
|
|
150075
150088
|
CompletionKind2[CompletionKind2["Global"] = 1] = "Global";
|
|
@@ -150128,9 +150141,9 @@ ${lanes.join("\n")}
|
|
|
150128
150141
|
}
|
|
150129
150142
|
const optionalReplacementSpan = createTextSpanFromStringLiteralLikeContent(contextToken);
|
|
150130
150143
|
switch (completion.kind) {
|
|
150131
|
-
case
|
|
150144
|
+
case 0 /* Paths */:
|
|
150132
150145
|
return convertPathCompletions(completion.paths);
|
|
150133
|
-
case
|
|
150146
|
+
case 1 /* Properties */: {
|
|
150134
150147
|
const entries = createSortedArray();
|
|
150135
150148
|
getCompletionEntriesFromSymbols(
|
|
150136
150149
|
completion.symbols,
|
|
@@ -150152,7 +150165,7 @@ ${lanes.join("\n")}
|
|
|
150152
150165
|
);
|
|
150153
150166
|
return { isGlobalCompletion: false, isMemberCompletion: true, isNewIdentifierLocation: completion.hasIndexSignature, optionalReplacementSpan, entries };
|
|
150154
150167
|
}
|
|
150155
|
-
case
|
|
150168
|
+
case 2 /* Types */: {
|
|
150156
150169
|
const entries = completion.types.map((type) => ({
|
|
150157
150170
|
name: type.value,
|
|
150158
150171
|
kindModifiers: "" /* none */,
|
|
@@ -150174,16 +150187,16 @@ ${lanes.join("\n")}
|
|
|
150174
150187
|
}
|
|
150175
150188
|
function stringLiteralCompletionDetails(name, location, completion, sourceFile, checker, cancellationToken) {
|
|
150176
150189
|
switch (completion.kind) {
|
|
150177
|
-
case
|
|
150190
|
+
case 0 /* Paths */: {
|
|
150178
150191
|
const match = find(completion.paths, (p) => p.name === name);
|
|
150179
150192
|
return match && createCompletionDetails(name, kindModifiersFromExtension(match.extension), match.kind, [textPart(name)]);
|
|
150180
150193
|
}
|
|
150181
|
-
case
|
|
150194
|
+
case 1 /* Properties */: {
|
|
150182
150195
|
const match = find(completion.symbols, (s) => s.name === name);
|
|
150183
150196
|
return match && createCompletionDetailsForSymbol(match, checker, sourceFile, location, cancellationToken);
|
|
150184
150197
|
}
|
|
150185
|
-
case
|
|
150186
|
-
return find(completion.types, (t) => t.value === name) ? createCompletionDetails(name, "" /* none */, "
|
|
150198
|
+
case 2 /* Types */:
|
|
150199
|
+
return find(completion.types, (t) => t.value === name) ? createCompletionDetails(name, "" /* none */, "string" /* string */, [textPart(name)]) : void 0;
|
|
150187
150200
|
default:
|
|
150188
150201
|
return Debug.assertNever(completion);
|
|
150189
150202
|
}
|
|
@@ -150285,6 +150298,10 @@ ${lanes.join("\n")}
|
|
|
150285
150298
|
case 275 /* ExportDeclaration */:
|
|
150286
150299
|
case 280 /* ExternalModuleReference */:
|
|
150287
150300
|
return { kind: 0 /* Paths */, paths: getStringLiteralCompletionsFromModuleNames(sourceFile, node, compilerOptions, host, typeChecker, preferences) };
|
|
150301
|
+
case 292 /* CaseClause */:
|
|
150302
|
+
const tracker = newCaseClauseTracker(typeChecker, node.parent.parent.clauses);
|
|
150303
|
+
const literals = fromContextualType().types.filter((literal) => !tracker.hasValue(literal.value));
|
|
150304
|
+
return { kind: 2 /* Types */, types: literals, isNewIdentifier: false };
|
|
150288
150305
|
default:
|
|
150289
150306
|
return fromContextualType();
|
|
150290
150307
|
}
|
|
@@ -150380,7 +150397,7 @@ ${lanes.join("\n")}
|
|
|
150380
150397
|
const mode = isStringLiteralLike(node) ? getModeForUsageLocation(sourceFile, node) : void 0;
|
|
150381
150398
|
const scriptPath = sourceFile.path;
|
|
150382
150399
|
const scriptDirectory = getDirectoryPath(scriptPath);
|
|
150383
|
-
const extensionOptions = getExtensionOptions(compilerOptions,
|
|
150400
|
+
const extensionOptions = getExtensionOptions(compilerOptions, 1 /* ModuleSpecifier */, sourceFile, typeChecker, preferences, mode);
|
|
150384
150401
|
return isPathRelativeToScript(literalValue) || !compilerOptions.baseUrl && (isRootedDiskPath(literalValue) || isUrl(literalValue)) ? getCompletionEntriesForRelativeModules(literalValue, scriptDirectory, compilerOptions, host, scriptPath, extensionOptions) : getCompletionEntriesForNonRelativeModules(literalValue, scriptDirectory, mode, compilerOptions, host, extensionOptions, typeChecker);
|
|
150385
150402
|
}
|
|
150386
150403
|
function getExtensionOptions(compilerOptions, referenceKind, importingSourceFile, typeChecker, preferences, resolutionMode) {
|
|
@@ -150896,7 +150913,7 @@ ${lanes.join("\n")}
|
|
|
150896
150913
|
function isRequireCallArgument(node) {
|
|
150897
150914
|
return isCallExpression(node.parent) && firstOrUndefined(node.parent.arguments) === node && isIdentifier(node.parent.expression) && node.parent.expression.escapedText === "require";
|
|
150898
150915
|
}
|
|
150899
|
-
var kindPrecedence,
|
|
150916
|
+
var kindPrecedence, tripleSlashDirectiveFragmentRegex, nodeModulesDependencyKeys;
|
|
150900
150917
|
var init_stringCompletions = __esm({
|
|
150901
150918
|
"src/services/stringCompletions.ts"() {
|
|
150902
150919
|
"use strict";
|
|
@@ -150907,17 +150924,6 @@ ${lanes.join("\n")}
|
|
|
150907
150924
|
["script" /* scriptElement */]: 1,
|
|
150908
150925
|
["external module name" /* externalModuleName */]: 2
|
|
150909
150926
|
};
|
|
150910
|
-
StringLiteralCompletionKind = /* @__PURE__ */ ((StringLiteralCompletionKind2) => {
|
|
150911
|
-
StringLiteralCompletionKind2[StringLiteralCompletionKind2["Paths"] = 0] = "Paths";
|
|
150912
|
-
StringLiteralCompletionKind2[StringLiteralCompletionKind2["Properties"] = 1] = "Properties";
|
|
150913
|
-
StringLiteralCompletionKind2[StringLiteralCompletionKind2["Types"] = 2] = "Types";
|
|
150914
|
-
return StringLiteralCompletionKind2;
|
|
150915
|
-
})(StringLiteralCompletionKind || {});
|
|
150916
|
-
ReferenceKind = /* @__PURE__ */ ((ReferenceKind2) => {
|
|
150917
|
-
ReferenceKind2[ReferenceKind2["Filename"] = 0] = "Filename";
|
|
150918
|
-
ReferenceKind2[ReferenceKind2["ModuleSpecifier"] = 1] = "ModuleSpecifier";
|
|
150919
|
-
return ReferenceKind2;
|
|
150920
|
-
})(ReferenceKind || {});
|
|
150921
150927
|
tripleSlashDirectiveFragmentRegex = /^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/;
|
|
150922
150928
|
nodeModulesDependencyKeys = ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"];
|
|
150923
150929
|
}
|
|
@@ -152268,7 +152274,7 @@ ${lanes.join("\n")}
|
|
|
152268
152274
|
) || originalSymbol;
|
|
152269
152275
|
const searchMeaning = node ? getIntersectingMeaningFromDeclarations(node, symbol) : 7 /* All */;
|
|
152270
152276
|
const result = [];
|
|
152271
|
-
const state = new State(sourceFiles, sourceFilesSet, node ? getSpecialSearchKind(node) :
|
|
152277
|
+
const state = new State(sourceFiles, sourceFilesSet, node ? getSpecialSearchKind(node) : 0 /* None */, checker, cancellationToken, searchMeaning, options, result);
|
|
152272
152278
|
const exportSpecifier = !isForRenameWithPrefixAndSuffixText(options) || !symbol.declarations ? void 0 : find(symbol.declarations, isExportSpecifier);
|
|
152273
152279
|
if (exportSpecifier) {
|
|
152274
152280
|
getReferencesAtExportSpecifier(
|
|
@@ -152324,14 +152330,14 @@ ${lanes.join("\n")}
|
|
|
152324
152330
|
switch (node.kind) {
|
|
152325
152331
|
case 173 /* Constructor */:
|
|
152326
152332
|
case 135 /* ConstructorKeyword */:
|
|
152327
|
-
return
|
|
152333
|
+
return 1 /* Constructor */;
|
|
152328
152334
|
case 79 /* Identifier */:
|
|
152329
152335
|
if (isClassLike(node.parent)) {
|
|
152330
152336
|
Debug.assert(node.parent.name === node);
|
|
152331
|
-
return
|
|
152337
|
+
return 2 /* Class */;
|
|
152332
152338
|
}
|
|
152333
152339
|
default:
|
|
152334
|
-
return
|
|
152340
|
+
return 0 /* None */;
|
|
152335
152341
|
}
|
|
152336
152342
|
}
|
|
152337
152343
|
function skipPastExportOrImportSpecifierOrUnion(symbol, node, checker, useLocalSymbolForExportSpecifier) {
|
|
@@ -159397,10 +159403,10 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
159397
159403
|
const scopeDescription = isFunctionLikeDeclaration(scope) ? getDescriptionForFunctionLikeDeclaration(scope) : isClassLike(scope) ? getDescriptionForClassLikeDeclaration(scope) : getDescriptionForModuleLikeDeclaration(scope);
|
|
159398
159404
|
let functionDescription;
|
|
159399
159405
|
let constantDescription;
|
|
159400
|
-
if (scopeDescription ===
|
|
159406
|
+
if (scopeDescription === 1 /* Global */) {
|
|
159401
159407
|
functionDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [functionDescriptionPart, "global"]);
|
|
159402
159408
|
constantDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [constantDescriptionPart, "global"]);
|
|
159403
|
-
} else if (scopeDescription ===
|
|
159409
|
+
} else if (scopeDescription === 0 /* Module */) {
|
|
159404
159410
|
functionDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [functionDescriptionPart, "module"]);
|
|
159405
159411
|
constantDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [constantDescriptionPart, "module"]);
|
|
159406
159412
|
} else {
|
|
@@ -159466,7 +159472,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
159466
159472
|
return scope.kind === 260 /* ClassDeclaration */ ? scope.name ? `class '${scope.name.text}'` : "anonymous class declaration" : scope.name ? `class expression '${scope.name.text}'` : "anonymous class expression";
|
|
159467
159473
|
}
|
|
159468
159474
|
function getDescriptionForModuleLikeDeclaration(scope) {
|
|
159469
|
-
return scope.kind === 265 /* ModuleBlock */ ? `namespace '${scope.parent.name.getText()}'` : scope.externalModuleIndicator ?
|
|
159475
|
+
return scope.kind === 265 /* ModuleBlock */ ? `namespace '${scope.parent.name.getText()}'` : scope.externalModuleIndicator ? 0 /* Module */ : 1 /* Global */;
|
|
159470
159476
|
}
|
|
159471
159477
|
function extractFunctionInScope(node, scope, { usages: usagesInScope, typeParameterUsages, substitutions }, exposedVariableDeclarations, range, context) {
|
|
159472
159478
|
const checker = context.program.getTypeChecker();
|
|
@@ -159499,7 +159505,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
159499
159505
|
typeNode
|
|
159500
159506
|
);
|
|
159501
159507
|
parameters.push(paramDecl);
|
|
159502
|
-
if (usage.usage ===
|
|
159508
|
+
if (usage.usage === 2 /* Write */) {
|
|
159503
159509
|
(writes || (writes = [])).push(usage);
|
|
159504
159510
|
}
|
|
159505
159511
|
callArguments.push(factory.createIdentifier(name));
|
|
@@ -160457,7 +160463,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
160457
160463
|
function isStringLiteralJsxAttribute(node) {
|
|
160458
160464
|
return isStringLiteral(node) && node.parent && isJsxAttribute(node.parent);
|
|
160459
160465
|
}
|
|
160460
|
-
var refactorName11, extractConstantAction, extractFunctionAction, Messages, RangeFacts
|
|
160466
|
+
var refactorName11, extractConstantAction, extractFunctionAction, Messages, RangeFacts;
|
|
160461
160467
|
var init_extractSymbol = __esm({
|
|
160462
160468
|
"src/services/refactors/extractSymbol.ts"() {
|
|
160463
160469
|
"use strict";
|
|
@@ -160520,16 +160526,6 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
160520
160526
|
RangeFacts2[RangeFacts2["InStaticRegion"] = 32] = "InStaticRegion";
|
|
160521
160527
|
return RangeFacts2;
|
|
160522
160528
|
})(RangeFacts || {});
|
|
160523
|
-
SpecialScope = /* @__PURE__ */ ((SpecialScope2) => {
|
|
160524
|
-
SpecialScope2[SpecialScope2["Module"] = 0] = "Module";
|
|
160525
|
-
SpecialScope2[SpecialScope2["Global"] = 1] = "Global";
|
|
160526
|
-
return SpecialScope2;
|
|
160527
|
-
})(SpecialScope || {});
|
|
160528
|
-
Usage = /* @__PURE__ */ ((Usage2) => {
|
|
160529
|
-
Usage2[Usage2["Read"] = 1] = "Read";
|
|
160530
|
-
Usage2[Usage2["Write"] = 2] = "Write";
|
|
160531
|
-
return Usage2;
|
|
160532
|
-
})(Usage || {});
|
|
160533
160529
|
}
|
|
160534
160530
|
});
|
|
160535
160531
|
|
|
@@ -160961,7 +160957,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
160961
160957
|
if (!candidateInfo) {
|
|
160962
160958
|
return isSourceFileJS(sourceFile) ? createJSSignatureHelpItems(argumentInfo, program, cancellationToken) : void 0;
|
|
160963
160959
|
}
|
|
160964
|
-
return typeChecker.runWithCancellationToken(cancellationToken, (typeChecker2) => candidateInfo.kind ===
|
|
160960
|
+
return typeChecker.runWithCancellationToken(cancellationToken, (typeChecker2) => candidateInfo.kind === 0 /* Candidate */ ? createSignatureHelpItems(candidateInfo.candidates, candidateInfo.resolvedSignature, argumentInfo, sourceFile, typeChecker2) : createTypeHelpItems(candidateInfo.symbol, argumentInfo, sourceFile, typeChecker2));
|
|
160965
160961
|
}
|
|
160966
160962
|
function getCandidateOrTypeInfo({ invocation, argumentCount }, checker, sourceFile, startingToken, onlyUseSyntacticOwners) {
|
|
160967
160963
|
switch (invocation.kind) {
|
|
@@ -161433,16 +161429,11 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
161433
161429
|
});
|
|
161434
161430
|
return { name: typeParameter.symbol.name, documentation: typeParameter.symbol.getDocumentationComment(checker), displayParts, isOptional: false, isRest: false };
|
|
161435
161431
|
}
|
|
161436
|
-
var
|
|
161432
|
+
var signatureHelpNodeBuilderFlags, separatorDisplayParts;
|
|
161437
161433
|
var init_signatureHelp = __esm({
|
|
161438
161434
|
"src/services/signatureHelp.ts"() {
|
|
161439
161435
|
"use strict";
|
|
161440
161436
|
init_ts4();
|
|
161441
|
-
CandidateOrTypeKind = /* @__PURE__ */ ((CandidateOrTypeKind2) => {
|
|
161442
|
-
CandidateOrTypeKind2[CandidateOrTypeKind2["Candidate"] = 0] = "Candidate";
|
|
161443
|
-
CandidateOrTypeKind2[CandidateOrTypeKind2["Type"] = 1] = "Type";
|
|
161444
|
-
return CandidateOrTypeKind2;
|
|
161445
|
-
})(CandidateOrTypeKind || {});
|
|
161446
161437
|
signatureHelpNodeBuilderFlags = 8192 /* OmitParameterModifiers */ | 70221824 /* IgnoreErrors */ | 16384 /* UseAliasDefinedOutsideCurrentScope */;
|
|
161447
161438
|
separatorDisplayParts = [punctuationPart(27 /* CommaToken */), spacePart()];
|
|
161448
161439
|
}
|
|
@@ -165447,7 +165438,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165447
165438
|
if (currentTokenInfo.leadingTrivia) {
|
|
165448
165439
|
processTrivia(currentTokenInfo.leadingTrivia, parent2, childContextNode, dynamicIndentation);
|
|
165449
165440
|
}
|
|
165450
|
-
let lineAction =
|
|
165441
|
+
let lineAction = 0 /* None */;
|
|
165451
165442
|
const isTokenInRange = rangeContainsRange(originalRange, currentTokenInfo.token);
|
|
165452
165443
|
const tokenStart = sourceFile.getLineAndCharacterOfPosition(currentTokenInfo.token.pos);
|
|
165453
165444
|
if (isTokenInRange) {
|
|
@@ -165455,11 +165446,11 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165455
165446
|
const savePreviousRange = previousRange;
|
|
165456
165447
|
lineAction = processRange(currentTokenInfo.token, tokenStart, parent2, childContextNode, dynamicIndentation);
|
|
165457
165448
|
if (!rangeHasError) {
|
|
165458
|
-
if (lineAction ===
|
|
165449
|
+
if (lineAction === 0 /* None */) {
|
|
165459
165450
|
const prevEndLine = savePreviousRange && sourceFile.getLineAndCharacterOfPosition(savePreviousRange.end).line;
|
|
165460
165451
|
indentToken = lastTriviaWasNewLine && tokenStart.line !== prevEndLine;
|
|
165461
165452
|
} else {
|
|
165462
|
-
indentToken = lineAction ===
|
|
165453
|
+
indentToken = lineAction === 1 /* LineAdded */;
|
|
165463
165454
|
}
|
|
165464
165455
|
}
|
|
165465
165456
|
}
|
|
@@ -165485,7 +165476,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165485
165476
|
);
|
|
165486
165477
|
}
|
|
165487
165478
|
if (tokenIndentation !== -1 /* Unknown */ && indentNextTokenOrTrivia) {
|
|
165488
|
-
insertIndentation(currentTokenInfo.token.pos, tokenIndentation, lineAction ===
|
|
165479
|
+
insertIndentation(currentTokenInfo.token.pos, tokenIndentation, lineAction === 1 /* LineAdded */);
|
|
165489
165480
|
lastIndentedLine = tokenStart.line;
|
|
165490
165481
|
indentationOnLastIndentedLine = tokenIndentation;
|
|
165491
165482
|
}
|
|
@@ -165532,7 +165523,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165532
165523
|
}
|
|
165533
165524
|
function processRange(range, rangeStart, parent2, contextNode, dynamicIndentation) {
|
|
165534
165525
|
const rangeHasError = rangeContainsError(range);
|
|
165535
|
-
let lineAction =
|
|
165526
|
+
let lineAction = 0 /* None */;
|
|
165536
165527
|
if (!rangeHasError) {
|
|
165537
165528
|
if (!previousRange) {
|
|
165538
165529
|
const originalStart = sourceFile.getLineAndCharacterOfPosition(originalRange.pos);
|
|
@@ -165551,13 +165542,13 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165551
165542
|
formattingContext.updateContext(previousItem, previousParent2, currentItem, currentParent, contextNode);
|
|
165552
165543
|
const rules = getRules(formattingContext);
|
|
165553
165544
|
let trimTrailingWhitespaces = formattingContext.options.trimTrailingWhitespace !== false;
|
|
165554
|
-
let lineAction =
|
|
165545
|
+
let lineAction = 0 /* None */;
|
|
165555
165546
|
if (rules) {
|
|
165556
165547
|
forEachRight(rules, (rule2) => {
|
|
165557
165548
|
lineAction = applyRuleEdits(rule2, previousItem, previousStartLine, currentItem, currentStartLine);
|
|
165558
165549
|
if (dynamicIndentation) {
|
|
165559
165550
|
switch (lineAction) {
|
|
165560
|
-
case
|
|
165551
|
+
case 2 /* LineRemoved */:
|
|
165561
165552
|
if (currentParent.getStart(sourceFile) === currentItem.pos) {
|
|
165562
165553
|
dynamicIndentation.recomputeIndentation(
|
|
165563
165554
|
/*lineAddedByFormatting*/
|
|
@@ -165566,7 +165557,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165566
165557
|
);
|
|
165567
165558
|
}
|
|
165568
165559
|
break;
|
|
165569
|
-
case
|
|
165560
|
+
case 1 /* LineAdded */:
|
|
165570
165561
|
if (currentParent.getStart(sourceFile) === currentItem.pos) {
|
|
165571
165562
|
dynamicIndentation.recomputeIndentation(
|
|
165572
165563
|
/*lineAddedByFormatting*/
|
|
@@ -165576,7 +165567,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165576
165567
|
}
|
|
165577
165568
|
break;
|
|
165578
165569
|
default:
|
|
165579
|
-
Debug.assert(lineAction ===
|
|
165570
|
+
Debug.assert(lineAction === 0 /* None */);
|
|
165580
165571
|
}
|
|
165581
165572
|
}
|
|
165582
165573
|
trimTrailingWhitespaces = trimTrailingWhitespaces && !(rule2.action & 16 /* DeleteSpace */) && rule2.flags !== 1 /* CanDeleteNewLines */;
|
|
@@ -165723,11 +165714,11 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165723
165714
|
const onLaterLine = currentStartLine !== previousStartLine;
|
|
165724
165715
|
switch (rule2.action) {
|
|
165725
165716
|
case 1 /* StopProcessingSpaceActions */:
|
|
165726
|
-
return
|
|
165717
|
+
return 0 /* None */;
|
|
165727
165718
|
case 16 /* DeleteSpace */:
|
|
165728
165719
|
if (previousRange2.end !== currentRange.pos) {
|
|
165729
165720
|
recordDelete(previousRange2.end, currentRange.pos - previousRange2.end);
|
|
165730
|
-
return onLaterLine ?
|
|
165721
|
+
return onLaterLine ? 2 /* LineRemoved */ : 0 /* None */;
|
|
165731
165722
|
}
|
|
165732
165723
|
break;
|
|
165733
165724
|
case 32 /* DeleteToken */:
|
|
@@ -165735,28 +165726,28 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165735
165726
|
break;
|
|
165736
165727
|
case 8 /* InsertNewLine */:
|
|
165737
165728
|
if (rule2.flags !== 1 /* CanDeleteNewLines */ && previousStartLine !== currentStartLine) {
|
|
165738
|
-
return
|
|
165729
|
+
return 0 /* None */;
|
|
165739
165730
|
}
|
|
165740
165731
|
const lineDelta = currentStartLine - previousStartLine;
|
|
165741
165732
|
if (lineDelta !== 1) {
|
|
165742
165733
|
recordReplace(previousRange2.end, currentRange.pos - previousRange2.end, getNewLineOrDefaultFromHost(host, options));
|
|
165743
|
-
return onLaterLine ?
|
|
165734
|
+
return onLaterLine ? 0 /* None */ : 1 /* LineAdded */;
|
|
165744
165735
|
}
|
|
165745
165736
|
break;
|
|
165746
165737
|
case 4 /* InsertSpace */:
|
|
165747
165738
|
if (rule2.flags !== 1 /* CanDeleteNewLines */ && previousStartLine !== currentStartLine) {
|
|
165748
|
-
return
|
|
165739
|
+
return 0 /* None */;
|
|
165749
165740
|
}
|
|
165750
165741
|
const posDelta = currentRange.pos - previousRange2.end;
|
|
165751
165742
|
if (posDelta !== 1 || sourceFile.text.charCodeAt(previousRange2.end) !== 32 /* space */) {
|
|
165752
165743
|
recordReplace(previousRange2.end, currentRange.pos - previousRange2.end, " ");
|
|
165753
|
-
return onLaterLine ?
|
|
165744
|
+
return onLaterLine ? 2 /* LineRemoved */ : 0 /* None */;
|
|
165754
165745
|
}
|
|
165755
165746
|
break;
|
|
165756
165747
|
case 64 /* InsertTrailingSemicolon */:
|
|
165757
165748
|
recordInsert(previousRange2.end, ";");
|
|
165758
165749
|
}
|
|
165759
|
-
return
|
|
165750
|
+
return 0 /* None */;
|
|
165760
165751
|
}
|
|
165761
165752
|
}
|
|
165762
165753
|
function getRangeOfEnclosingComment(sourceFile, position, precedingToken, tokenAtPosition = getTokenAtPosition(sourceFile, position)) {
|
|
@@ -165882,18 +165873,12 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165882
165873
|
return remainder ? spacesString + repeatString(" ", remainder) : spacesString;
|
|
165883
165874
|
}
|
|
165884
165875
|
}
|
|
165885
|
-
var
|
|
165876
|
+
var internedSizes, internedTabsIndentation, internedSpacesIndentation;
|
|
165886
165877
|
var init_formatting = __esm({
|
|
165887
165878
|
"src/services/formatting/formatting.ts"() {
|
|
165888
165879
|
"use strict";
|
|
165889
165880
|
init_ts4();
|
|
165890
165881
|
init_ts_formatting();
|
|
165891
|
-
LineAction = /* @__PURE__ */ ((LineAction2) => {
|
|
165892
|
-
LineAction2[LineAction2["None"] = 0] = "None";
|
|
165893
|
-
LineAction2[LineAction2["LineAdded"] = 1] = "LineAdded";
|
|
165894
|
-
LineAction2[LineAction2["LineRemoved"] = 2] = "LineRemoved";
|
|
165895
|
-
return LineAction2;
|
|
165896
|
-
})(LineAction || {});
|
|
165897
165882
|
}
|
|
165898
165883
|
});
|
|
165899
165884
|
|
|
@@ -165997,7 +165982,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
165997
165982
|
)) {
|
|
165998
165983
|
const currentStart = getStartLineAndCharacterForNode(current, sourceFile);
|
|
165999
165984
|
const nextTokenKind = nextTokenIsCurlyBraceOnSameLineAsCursor(precedingToken, current, lineAtPosition, sourceFile);
|
|
166000
|
-
const indentationDelta = nextTokenKind !==
|
|
165985
|
+
const indentationDelta = nextTokenKind !== 0 /* Unknown */ ? assumeNewLineBeforeCloseBrace && nextTokenKind === 2 /* CloseBrace */ ? options.indentSize : 0 : lineAtPosition !== currentStart.line ? options.indentSize : 0;
|
|
166001
165986
|
return getIndentationForNodeWorker(
|
|
166002
165987
|
current,
|
|
166003
165988
|
currentStart,
|
|
@@ -173650,6 +173635,10 @@ ${json}${newLine}`;
|
|
|
173650
173635
|
continue;
|
|
173651
173636
|
if (isLocationProjectReferenceRedirect(project, location))
|
|
173652
173637
|
continue;
|
|
173638
|
+
updateProjectIfDirty(project);
|
|
173639
|
+
if (!project.containsFile(toNormalizedPath(location.fileName))) {
|
|
173640
|
+
continue;
|
|
173641
|
+
}
|
|
173653
173642
|
const projectResults = searchPosition(project, location);
|
|
173654
173643
|
resultsMap.set(project, projectResults != null ? projectResults : emptyArray2);
|
|
173655
173644
|
searchedProjectKeys.add(getProjectKey(project));
|
|
@@ -179332,6 +179321,7 @@ ${e.message}`;
|
|
|
179332
179321
|
mutateMapSkippingNewValues: () => mutateMapSkippingNewValues,
|
|
179333
179322
|
needsParentheses: () => needsParentheses,
|
|
179334
179323
|
needsScopeMarker: () => needsScopeMarker,
|
|
179324
|
+
newCaseClauseTracker: () => newCaseClauseTracker,
|
|
179335
179325
|
newPrivateEnvironment: () => newPrivateEnvironment,
|
|
179336
179326
|
noEmitNotification: () => noEmitNotification,
|
|
179337
179327
|
noEmitSubstitution: () => noEmitSubstitution,
|
|
@@ -181690,6 +181680,7 @@ ${e.message}`;
|
|
|
181690
181680
|
mutateMapSkippingNewValues: () => mutateMapSkippingNewValues,
|
|
181691
181681
|
needsParentheses: () => needsParentheses,
|
|
181692
181682
|
needsScopeMarker: () => needsScopeMarker,
|
|
181683
|
+
newCaseClauseTracker: () => newCaseClauseTracker,
|
|
181693
181684
|
newPrivateEnvironment: () => newPrivateEnvironment,
|
|
181694
181685
|
noEmitNotification: () => noEmitNotification,
|
|
181695
181686
|
noEmitSubstitution: () => noEmitSubstitution,
|