@typescript-deploys/pr-build 5.0.0-pr-52282-27 → 5.0.0-pr-52667-13
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 +219 -252
- package/lib/tsserver.js +276 -345
- package/lib/tsserverlibrary.js +283 -352
- package/lib/typescript.js +283 -352
- package/lib/typingsInstaller.js +174 -186
- package/package.json +1 -1
package/lib/tsserver.js
CHANGED
|
@@ -2287,7 +2287,7 @@ module.exports = __toCommonJS(server_exports);
|
|
|
2287
2287
|
|
|
2288
2288
|
// src/compiler/corePublic.ts
|
|
2289
2289
|
var versionMajorMinor = "5.0";
|
|
2290
|
-
var version = `${versionMajorMinor}.0-insiders.
|
|
2290
|
+
var version = `${versionMajorMinor}.0-insiders.20230208`;
|
|
2291
2291
|
var Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
2292
2292
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
2293
2293
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -7704,7 +7704,7 @@ function createUseFsEventsOnParentDirectoryWatchFile(fsWatch, useCaseSensitiveFi
|
|
|
7704
7704
|
function createDirectoryWatcher(dirName, dirPath, fallbackOptions) {
|
|
7705
7705
|
const watcher = fsWatch(
|
|
7706
7706
|
dirName,
|
|
7707
|
-
|
|
7707
|
+
1 /* Directory */,
|
|
7708
7708
|
(_eventName, relativeFileName, modifiedTime) => {
|
|
7709
7709
|
if (!isString(relativeFileName))
|
|
7710
7710
|
return;
|
|
@@ -7904,7 +7904,7 @@ function createDirectoryWatcherSupportingRecursive({
|
|
|
7904
7904
|
}
|
|
7905
7905
|
function nonSyncUpdateChildWatches(dirName, dirPath, fileName, options) {
|
|
7906
7906
|
const parentWatcher = cache.get(dirPath);
|
|
7907
|
-
if (parentWatcher && fileSystemEntryExists(dirName,
|
|
7907
|
+
if (parentWatcher && fileSystemEntryExists(dirName, 1 /* Directory */)) {
|
|
7908
7908
|
scheduleUpdateChildWatches(dirName, dirPath, fileName, options);
|
|
7909
7909
|
return;
|
|
7910
7910
|
}
|
|
@@ -7969,7 +7969,7 @@ function createDirectoryWatcherSupportingRecursive({
|
|
|
7969
7969
|
return false;
|
|
7970
7970
|
let newChildWatches;
|
|
7971
7971
|
const hasChanges = enumerateInsertsAndDeletes(
|
|
7972
|
-
fileSystemEntryExists(parentDir,
|
|
7972
|
+
fileSystemEntryExists(parentDir, 1 /* Directory */) ? mapDefined(getAccessibleSortedChildDirectories(parentDir), (child) => {
|
|
7973
7973
|
const childFullName = getNormalizedAbsolutePath(child, parentDir);
|
|
7974
7974
|
return !isIgnoredPath(childFullName, options) && filePathComparer(childFullName, normalizePath(realpath(childFullName))) === 0 /* EqualTo */ ? childFullName : void 0;
|
|
7975
7975
|
}) : emptyArray,
|
|
@@ -19315,17 +19315,11 @@ function getCombinedLocalAndExportSymbolFlags(symbol) {
|
|
|
19315
19315
|
return symbol.exportSymbol ? symbol.exportSymbol.flags | symbol.flags : symbol.flags;
|
|
19316
19316
|
}
|
|
19317
19317
|
function isWriteOnlyAccess(node) {
|
|
19318
|
-
return accessKind(node) ===
|
|
19318
|
+
return accessKind(node) === 1 /* Write */;
|
|
19319
19319
|
}
|
|
19320
19320
|
function isWriteAccess(node) {
|
|
19321
|
-
return accessKind(node) !==
|
|
19322
|
-
}
|
|
19323
|
-
var AccessKind = /* @__PURE__ */ ((AccessKind2) => {
|
|
19324
|
-
AccessKind2[AccessKind2["Read"] = 0] = "Read";
|
|
19325
|
-
AccessKind2[AccessKind2["Write"] = 1] = "Write";
|
|
19326
|
-
AccessKind2[AccessKind2["ReadWrite"] = 2] = "ReadWrite";
|
|
19327
|
-
return AccessKind2;
|
|
19328
|
-
})(AccessKind || {});
|
|
19321
|
+
return accessKind(node) !== 0 /* Read */;
|
|
19322
|
+
}
|
|
19329
19323
|
function accessKind(node) {
|
|
19330
19324
|
const { parent: parent2 } = node;
|
|
19331
19325
|
if (!parent2)
|
|
@@ -30191,7 +30185,7 @@ var Parser;
|
|
|
30191
30185
|
}
|
|
30192
30186
|
sourceFlags = contextFlags;
|
|
30193
30187
|
nextToken();
|
|
30194
|
-
const statements = parseList(
|
|
30188
|
+
const statements = parseList(0 /* SourceElements */, parseStatement);
|
|
30195
30189
|
Debug.assert(token() === 1 /* EndOfFileToken */);
|
|
30196
30190
|
const endOfFileToken = addJSDocComment(parseTokenNode());
|
|
30197
30191
|
const sourceFile = createSourceFile2(fileName, languageVersion2, scriptKind2, isDeclarationFile, statements, endOfFileToken, sourceFlags, setExternalModuleIndicator2);
|
|
@@ -30254,7 +30248,7 @@ var Parser;
|
|
|
30254
30248
|
nextToken();
|
|
30255
30249
|
while (token() !== 1 /* EndOfFileToken */) {
|
|
30256
30250
|
const startPos = scanner2.getStartPos();
|
|
30257
|
-
const statement = parseListElement(
|
|
30251
|
+
const statement = parseListElement(0 /* SourceElements */, parseStatement);
|
|
30258
30252
|
statements.push(statement);
|
|
30259
30253
|
if (startPos === scanner2.getStartPos()) {
|
|
30260
30254
|
nextToken();
|
|
@@ -30941,19 +30935,19 @@ var Parser;
|
|
|
30941
30935
|
return true;
|
|
30942
30936
|
}
|
|
30943
30937
|
switch (parsingContext2) {
|
|
30944
|
-
case
|
|
30945
|
-
case
|
|
30946
|
-
case
|
|
30938
|
+
case 0 /* SourceElements */:
|
|
30939
|
+
case 1 /* BlockStatements */:
|
|
30940
|
+
case 3 /* SwitchClauseStatements */:
|
|
30947
30941
|
return !(token() === 26 /* SemicolonToken */ && inErrorRecovery) && isStartOfStatement();
|
|
30948
|
-
case
|
|
30942
|
+
case 2 /* SwitchClauses */:
|
|
30949
30943
|
return token() === 82 /* CaseKeyword */ || token() === 88 /* DefaultKeyword */;
|
|
30950
|
-
case
|
|
30944
|
+
case 4 /* TypeMembers */:
|
|
30951
30945
|
return lookAhead(isTypeMemberStart);
|
|
30952
|
-
case
|
|
30946
|
+
case 5 /* ClassMembers */:
|
|
30953
30947
|
return lookAhead(isClassMemberStart) || token() === 26 /* SemicolonToken */ && !inErrorRecovery;
|
|
30954
|
-
case
|
|
30948
|
+
case 6 /* EnumMembers */:
|
|
30955
30949
|
return token() === 22 /* OpenBracketToken */ || isLiteralPropertyName();
|
|
30956
|
-
case
|
|
30950
|
+
case 12 /* ObjectLiteralMembers */:
|
|
30957
30951
|
switch (token()) {
|
|
30958
30952
|
case 22 /* OpenBracketToken */:
|
|
30959
30953
|
case 41 /* AsteriskToken */:
|
|
@@ -30963,13 +30957,13 @@ var Parser;
|
|
|
30963
30957
|
default:
|
|
30964
30958
|
return isLiteralPropertyName();
|
|
30965
30959
|
}
|
|
30966
|
-
case
|
|
30960
|
+
case 18 /* RestProperties */:
|
|
30967
30961
|
return isLiteralPropertyName();
|
|
30968
|
-
case
|
|
30962
|
+
case 9 /* ObjectBindingElements */:
|
|
30969
30963
|
return token() === 22 /* OpenBracketToken */ || token() === 25 /* DotDotDotToken */ || isLiteralPropertyName();
|
|
30970
|
-
case
|
|
30964
|
+
case 24 /* AssertEntries */:
|
|
30971
30965
|
return isAssertionKey2();
|
|
30972
|
-
case
|
|
30966
|
+
case 7 /* HeritageClauseElement */:
|
|
30973
30967
|
if (token() === 18 /* OpenBraceToken */) {
|
|
30974
30968
|
return lookAhead(isValidHeritageClauseObjectLiteral);
|
|
30975
30969
|
}
|
|
@@ -30978,40 +30972,40 @@ var Parser;
|
|
|
30978
30972
|
} else {
|
|
30979
30973
|
return isIdentifier2() && !isHeritageClauseExtendsOrImplementsKeyword();
|
|
30980
30974
|
}
|
|
30981
|
-
case
|
|
30975
|
+
case 8 /* VariableDeclarations */:
|
|
30982
30976
|
return isBindingIdentifierOrPrivateIdentifierOrPattern();
|
|
30983
|
-
case
|
|
30977
|
+
case 10 /* ArrayBindingElements */:
|
|
30984
30978
|
return token() === 27 /* CommaToken */ || token() === 25 /* DotDotDotToken */ || isBindingIdentifierOrPrivateIdentifierOrPattern();
|
|
30985
|
-
case
|
|
30979
|
+
case 19 /* TypeParameters */:
|
|
30986
30980
|
return token() === 101 /* InKeyword */ || token() === 85 /* ConstKeyword */ || isIdentifier2();
|
|
30987
|
-
case
|
|
30981
|
+
case 15 /* ArrayLiteralMembers */:
|
|
30988
30982
|
switch (token()) {
|
|
30989
30983
|
case 27 /* CommaToken */:
|
|
30990
30984
|
case 24 /* DotToken */:
|
|
30991
30985
|
return true;
|
|
30992
30986
|
}
|
|
30993
|
-
case
|
|
30987
|
+
case 11 /* ArgumentExpressions */:
|
|
30994
30988
|
return token() === 25 /* DotDotDotToken */ || isStartOfExpression();
|
|
30995
|
-
case
|
|
30989
|
+
case 16 /* Parameters */:
|
|
30996
30990
|
return isStartOfParameter(
|
|
30997
30991
|
/*isJSDocParameter*/
|
|
30998
30992
|
false
|
|
30999
30993
|
);
|
|
31000
|
-
case
|
|
30994
|
+
case 17 /* JSDocParameters */:
|
|
31001
30995
|
return isStartOfParameter(
|
|
31002
30996
|
/*isJSDocParameter*/
|
|
31003
30997
|
true
|
|
31004
30998
|
);
|
|
31005
|
-
case
|
|
31006
|
-
case
|
|
30999
|
+
case 20 /* TypeArguments */:
|
|
31000
|
+
case 21 /* TupleElementTypes */:
|
|
31007
31001
|
return token() === 27 /* CommaToken */ || isStartOfType();
|
|
31008
|
-
case
|
|
31002
|
+
case 22 /* HeritageClauses */:
|
|
31009
31003
|
return isHeritageClause2();
|
|
31010
|
-
case
|
|
31004
|
+
case 23 /* ImportOrExportSpecifiers */:
|
|
31011
31005
|
return tokenIsIdentifierOrKeyword(token());
|
|
31012
|
-
case
|
|
31006
|
+
case 13 /* JsxAttributes */:
|
|
31013
31007
|
return tokenIsIdentifierOrKeyword(token()) || token() === 18 /* OpenBraceToken */;
|
|
31014
|
-
case
|
|
31008
|
+
case 14 /* JsxChildren */:
|
|
31015
31009
|
return true;
|
|
31016
31010
|
}
|
|
31017
31011
|
return Debug.fail("Non-exhaustive case in 'isListElement'.");
|
|
@@ -31055,41 +31049,41 @@ var Parser;
|
|
|
31055
31049
|
return true;
|
|
31056
31050
|
}
|
|
31057
31051
|
switch (kind) {
|
|
31058
|
-
case
|
|
31059
|
-
case
|
|
31060
|
-
case
|
|
31061
|
-
case
|
|
31062
|
-
case
|
|
31063
|
-
case
|
|
31064
|
-
case
|
|
31065
|
-
case
|
|
31066
|
-
case
|
|
31052
|
+
case 1 /* BlockStatements */:
|
|
31053
|
+
case 2 /* SwitchClauses */:
|
|
31054
|
+
case 4 /* TypeMembers */:
|
|
31055
|
+
case 5 /* ClassMembers */:
|
|
31056
|
+
case 6 /* EnumMembers */:
|
|
31057
|
+
case 12 /* ObjectLiteralMembers */:
|
|
31058
|
+
case 9 /* ObjectBindingElements */:
|
|
31059
|
+
case 23 /* ImportOrExportSpecifiers */:
|
|
31060
|
+
case 24 /* AssertEntries */:
|
|
31067
31061
|
return token() === 19 /* CloseBraceToken */;
|
|
31068
|
-
case
|
|
31062
|
+
case 3 /* SwitchClauseStatements */:
|
|
31069
31063
|
return token() === 19 /* CloseBraceToken */ || token() === 82 /* CaseKeyword */ || token() === 88 /* DefaultKeyword */;
|
|
31070
|
-
case
|
|
31064
|
+
case 7 /* HeritageClauseElement */:
|
|
31071
31065
|
return token() === 18 /* OpenBraceToken */ || token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
|
|
31072
|
-
case
|
|
31066
|
+
case 8 /* VariableDeclarations */:
|
|
31073
31067
|
return isVariableDeclaratorListTerminator();
|
|
31074
|
-
case
|
|
31068
|
+
case 19 /* TypeParameters */:
|
|
31075
31069
|
return token() === 31 /* GreaterThanToken */ || token() === 20 /* OpenParenToken */ || token() === 18 /* OpenBraceToken */ || token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
|
|
31076
|
-
case
|
|
31070
|
+
case 11 /* ArgumentExpressions */:
|
|
31077
31071
|
return token() === 21 /* CloseParenToken */ || token() === 26 /* SemicolonToken */;
|
|
31078
|
-
case
|
|
31079
|
-
case
|
|
31080
|
-
case
|
|
31072
|
+
case 15 /* ArrayLiteralMembers */:
|
|
31073
|
+
case 21 /* TupleElementTypes */:
|
|
31074
|
+
case 10 /* ArrayBindingElements */:
|
|
31081
31075
|
return token() === 23 /* CloseBracketToken */;
|
|
31082
|
-
case
|
|
31083
|
-
case
|
|
31084
|
-
case
|
|
31076
|
+
case 17 /* JSDocParameters */:
|
|
31077
|
+
case 16 /* Parameters */:
|
|
31078
|
+
case 18 /* RestProperties */:
|
|
31085
31079
|
return token() === 21 /* CloseParenToken */ || token() === 23 /* CloseBracketToken */;
|
|
31086
|
-
case
|
|
31080
|
+
case 20 /* TypeArguments */:
|
|
31087
31081
|
return token() !== 27 /* CommaToken */;
|
|
31088
|
-
case
|
|
31082
|
+
case 22 /* HeritageClauses */:
|
|
31089
31083
|
return token() === 18 /* OpenBraceToken */ || token() === 19 /* CloseBraceToken */;
|
|
31090
|
-
case
|
|
31084
|
+
case 13 /* JsxAttributes */:
|
|
31091
31085
|
return token() === 31 /* GreaterThanToken */ || token() === 43 /* SlashToken */;
|
|
31092
|
-
case
|
|
31086
|
+
case 14 /* JsxChildren */:
|
|
31093
31087
|
return token() === 29 /* LessThanToken */ && lookAhead(nextTokenIsSlash);
|
|
31094
31088
|
default:
|
|
31095
31089
|
return false;
|
|
@@ -31108,7 +31102,7 @@ var Parser;
|
|
|
31108
31102
|
return false;
|
|
31109
31103
|
}
|
|
31110
31104
|
function isInSomeParsingContext() {
|
|
31111
|
-
for (let kind = 0; kind <
|
|
31105
|
+
for (let kind = 0; kind < 25 /* Count */; kind++) {
|
|
31112
31106
|
if (parsingContext & 1 << kind) {
|
|
31113
31107
|
if (isListElement2(
|
|
31114
31108
|
kind,
|
|
@@ -31177,38 +31171,38 @@ var Parser;
|
|
|
31177
31171
|
}
|
|
31178
31172
|
function isReusableParsingContext(parsingContext2) {
|
|
31179
31173
|
switch (parsingContext2) {
|
|
31180
|
-
case
|
|
31181
|
-
case
|
|
31182
|
-
case
|
|
31183
|
-
case
|
|
31184
|
-
case
|
|
31185
|
-
case
|
|
31186
|
-
case
|
|
31187
|
-
case
|
|
31188
|
-
case
|
|
31189
|
-
case
|
|
31174
|
+
case 5 /* ClassMembers */:
|
|
31175
|
+
case 2 /* SwitchClauses */:
|
|
31176
|
+
case 0 /* SourceElements */:
|
|
31177
|
+
case 1 /* BlockStatements */:
|
|
31178
|
+
case 3 /* SwitchClauseStatements */:
|
|
31179
|
+
case 6 /* EnumMembers */:
|
|
31180
|
+
case 4 /* TypeMembers */:
|
|
31181
|
+
case 8 /* VariableDeclarations */:
|
|
31182
|
+
case 17 /* JSDocParameters */:
|
|
31183
|
+
case 16 /* Parameters */:
|
|
31190
31184
|
return true;
|
|
31191
31185
|
}
|
|
31192
31186
|
return false;
|
|
31193
31187
|
}
|
|
31194
31188
|
function canReuseNode(node, parsingContext2) {
|
|
31195
31189
|
switch (parsingContext2) {
|
|
31196
|
-
case
|
|
31190
|
+
case 5 /* ClassMembers */:
|
|
31197
31191
|
return isReusableClassMember(node);
|
|
31198
|
-
case
|
|
31192
|
+
case 2 /* SwitchClauses */:
|
|
31199
31193
|
return isReusableSwitchClause(node);
|
|
31200
|
-
case
|
|
31201
|
-
case
|
|
31202
|
-
case
|
|
31194
|
+
case 0 /* SourceElements */:
|
|
31195
|
+
case 1 /* BlockStatements */:
|
|
31196
|
+
case 3 /* SwitchClauseStatements */:
|
|
31203
31197
|
return isReusableStatement(node);
|
|
31204
|
-
case
|
|
31198
|
+
case 6 /* EnumMembers */:
|
|
31205
31199
|
return isReusableEnumMember(node);
|
|
31206
|
-
case
|
|
31200
|
+
case 4 /* TypeMembers */:
|
|
31207
31201
|
return isReusableTypeMember(node);
|
|
31208
|
-
case
|
|
31202
|
+
case 8 /* VariableDeclarations */:
|
|
31209
31203
|
return isReusableVariableDeclaration(node);
|
|
31210
|
-
case
|
|
31211
|
-
case
|
|
31204
|
+
case 17 /* JSDocParameters */:
|
|
31205
|
+
case 16 /* Parameters */:
|
|
31212
31206
|
return isReusableParameter(node);
|
|
31213
31207
|
}
|
|
31214
31208
|
return false;
|
|
@@ -31318,56 +31312,56 @@ var Parser;
|
|
|
31318
31312
|
}
|
|
31319
31313
|
function parsingContextErrors(context) {
|
|
31320
31314
|
switch (context) {
|
|
31321
|
-
case
|
|
31315
|
+
case 0 /* SourceElements */:
|
|
31322
31316
|
return token() === 88 /* DefaultKeyword */ ? parseErrorAtCurrentToken(Diagnostics._0_expected, tokenToString(93 /* ExportKeyword */)) : parseErrorAtCurrentToken(Diagnostics.Declaration_or_statement_expected);
|
|
31323
|
-
case
|
|
31317
|
+
case 1 /* BlockStatements */:
|
|
31324
31318
|
return parseErrorAtCurrentToken(Diagnostics.Declaration_or_statement_expected);
|
|
31325
|
-
case
|
|
31319
|
+
case 2 /* SwitchClauses */:
|
|
31326
31320
|
return parseErrorAtCurrentToken(Diagnostics.case_or_default_expected);
|
|
31327
|
-
case
|
|
31321
|
+
case 3 /* SwitchClauseStatements */:
|
|
31328
31322
|
return parseErrorAtCurrentToken(Diagnostics.Statement_expected);
|
|
31329
|
-
case
|
|
31330
|
-
case
|
|
31323
|
+
case 18 /* RestProperties */:
|
|
31324
|
+
case 4 /* TypeMembers */:
|
|
31331
31325
|
return parseErrorAtCurrentToken(Diagnostics.Property_or_signature_expected);
|
|
31332
|
-
case
|
|
31326
|
+
case 5 /* ClassMembers */:
|
|
31333
31327
|
return parseErrorAtCurrentToken(Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);
|
|
31334
|
-
case
|
|
31328
|
+
case 6 /* EnumMembers */:
|
|
31335
31329
|
return parseErrorAtCurrentToken(Diagnostics.Enum_member_expected);
|
|
31336
|
-
case
|
|
31330
|
+
case 7 /* HeritageClauseElement */:
|
|
31337
31331
|
return parseErrorAtCurrentToken(Diagnostics.Expression_expected);
|
|
31338
|
-
case
|
|
31332
|
+
case 8 /* VariableDeclarations */:
|
|
31339
31333
|
return isKeyword(token()) ? parseErrorAtCurrentToken(Diagnostics._0_is_not_allowed_as_a_variable_declaration_name, tokenToString(token())) : parseErrorAtCurrentToken(Diagnostics.Variable_declaration_expected);
|
|
31340
|
-
case
|
|
31334
|
+
case 9 /* ObjectBindingElements */:
|
|
31341
31335
|
return parseErrorAtCurrentToken(Diagnostics.Property_destructuring_pattern_expected);
|
|
31342
|
-
case
|
|
31336
|
+
case 10 /* ArrayBindingElements */:
|
|
31343
31337
|
return parseErrorAtCurrentToken(Diagnostics.Array_element_destructuring_pattern_expected);
|
|
31344
|
-
case
|
|
31338
|
+
case 11 /* ArgumentExpressions */:
|
|
31345
31339
|
return parseErrorAtCurrentToken(Diagnostics.Argument_expression_expected);
|
|
31346
|
-
case
|
|
31340
|
+
case 12 /* ObjectLiteralMembers */:
|
|
31347
31341
|
return parseErrorAtCurrentToken(Diagnostics.Property_assignment_expected);
|
|
31348
|
-
case
|
|
31342
|
+
case 15 /* ArrayLiteralMembers */:
|
|
31349
31343
|
return parseErrorAtCurrentToken(Diagnostics.Expression_or_comma_expected);
|
|
31350
|
-
case
|
|
31344
|
+
case 17 /* JSDocParameters */:
|
|
31351
31345
|
return parseErrorAtCurrentToken(Diagnostics.Parameter_declaration_expected);
|
|
31352
|
-
case
|
|
31346
|
+
case 16 /* Parameters */:
|
|
31353
31347
|
return isKeyword(token()) ? parseErrorAtCurrentToken(Diagnostics._0_is_not_allowed_as_a_parameter_name, tokenToString(token())) : parseErrorAtCurrentToken(Diagnostics.Parameter_declaration_expected);
|
|
31354
|
-
case
|
|
31348
|
+
case 19 /* TypeParameters */:
|
|
31355
31349
|
return parseErrorAtCurrentToken(Diagnostics.Type_parameter_declaration_expected);
|
|
31356
|
-
case
|
|
31350
|
+
case 20 /* TypeArguments */:
|
|
31357
31351
|
return parseErrorAtCurrentToken(Diagnostics.Type_argument_expected);
|
|
31358
|
-
case
|
|
31352
|
+
case 21 /* TupleElementTypes */:
|
|
31359
31353
|
return parseErrorAtCurrentToken(Diagnostics.Type_expected);
|
|
31360
|
-
case
|
|
31354
|
+
case 22 /* HeritageClauses */:
|
|
31361
31355
|
return parseErrorAtCurrentToken(Diagnostics.Unexpected_token_expected);
|
|
31362
|
-
case
|
|
31356
|
+
case 23 /* ImportOrExportSpecifiers */:
|
|
31363
31357
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
|
|
31364
|
-
case
|
|
31358
|
+
case 13 /* JsxAttributes */:
|
|
31365
31359
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
|
|
31366
|
-
case
|
|
31360
|
+
case 14 /* JsxChildren */:
|
|
31367
31361
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
|
|
31368
|
-
case
|
|
31362
|
+
case 24 /* AssertEntries */:
|
|
31369
31363
|
return parseErrorAtCurrentToken(Diagnostics.Identifier_or_string_literal_expected);
|
|
31370
|
-
case
|
|
31364
|
+
case 25 /* Count */:
|
|
31371
31365
|
return Debug.fail("ParsingContext.Count used as a context");
|
|
31372
31366
|
default:
|
|
31373
31367
|
Debug.assertNever(context);
|
|
@@ -31426,7 +31420,7 @@ var Parser;
|
|
|
31426
31420
|
);
|
|
31427
31421
|
}
|
|
31428
31422
|
function getExpectedCommaDiagnostic(kind) {
|
|
31429
|
-
return kind ===
|
|
31423
|
+
return kind === 6 /* EnumMembers */ ? Diagnostics.An_enum_member_name_must_be_followed_by_a_or : void 0;
|
|
31430
31424
|
}
|
|
31431
31425
|
function createMissingList() {
|
|
31432
31426
|
const list = createNodeArray([], getNodePos());
|
|
@@ -31620,7 +31614,7 @@ var Parser;
|
|
|
31620
31614
|
}
|
|
31621
31615
|
function parseTypeArgumentsOfTypeReference() {
|
|
31622
31616
|
if (!scanner2.hasPrecedingLineBreak() && reScanLessThanToken() === 29 /* LessThanToken */) {
|
|
31623
|
-
return parseBracketedList(
|
|
31617
|
+
return parseBracketedList(20 /* TypeArguments */, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
|
|
31624
31618
|
}
|
|
31625
31619
|
}
|
|
31626
31620
|
function parseTypeReference() {
|
|
@@ -31802,7 +31796,7 @@ var Parser;
|
|
|
31802
31796
|
}
|
|
31803
31797
|
function parseTypeParameters() {
|
|
31804
31798
|
if (token() === 29 /* LessThanToken */) {
|
|
31805
|
-
return parseBracketedList(
|
|
31799
|
+
return parseBracketedList(19 /* TypeParameters */, parseTypeParameter, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
|
|
31806
31800
|
}
|
|
31807
31801
|
}
|
|
31808
31802
|
function isStartOfParameter(isJSDocParameter) {
|
|
@@ -31908,7 +31902,7 @@ var Parser;
|
|
|
31908
31902
|
const savedAwaitContext = inAwaitContext();
|
|
31909
31903
|
setYieldContext(!!(flags & 1 /* Yield */));
|
|
31910
31904
|
setAwaitContext(!!(flags & 2 /* Await */));
|
|
31911
|
-
const parameters = flags & 32 /* JSDoc */ ? parseDelimitedList(
|
|
31905
|
+
const parameters = flags & 32 /* JSDoc */ ? parseDelimitedList(17 /* JSDocParameters */, parseJSDocParameter) : parseDelimitedList(16 /* Parameters */, () => allowAmbiguity ? parseParameter(savedAwaitContext) : parseParameterForSpeculation(savedAwaitContext));
|
|
31912
31906
|
setYieldContext(savedYieldContext);
|
|
31913
31907
|
setAwaitContext(savedAwaitContext);
|
|
31914
31908
|
return parameters;
|
|
@@ -31976,7 +31970,7 @@ var Parser;
|
|
|
31976
31970
|
return token() === 58 /* ColonToken */ || token() === 27 /* CommaToken */ || token() === 23 /* CloseBracketToken */;
|
|
31977
31971
|
}
|
|
31978
31972
|
function parseIndexSignatureDeclaration(pos, hasJSDoc, modifiers) {
|
|
31979
|
-
const parameters = parseBracketedList(
|
|
31973
|
+
const parameters = parseBracketedList(16 /* Parameters */, () => parseParameter(
|
|
31980
31974
|
/*inOuterAwaitContext*/
|
|
31981
31975
|
false
|
|
31982
31976
|
), 22 /* OpenBracketToken */, 23 /* CloseBracketToken */);
|
|
@@ -32075,7 +32069,7 @@ var Parser;
|
|
|
32075
32069
|
function parseObjectTypeMembers() {
|
|
32076
32070
|
let members;
|
|
32077
32071
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
32078
|
-
members = parseList(
|
|
32072
|
+
members = parseList(4 /* TypeMembers */, parseTypeMember);
|
|
32079
32073
|
parseExpected(19 /* CloseBraceToken */);
|
|
32080
32074
|
} else {
|
|
32081
32075
|
members = createMissingList();
|
|
@@ -32129,7 +32123,7 @@ var Parser;
|
|
|
32129
32123
|
}
|
|
32130
32124
|
const type = parseTypeAnnotation();
|
|
32131
32125
|
parseSemicolon();
|
|
32132
|
-
const members = parseList(
|
|
32126
|
+
const members = parseList(4 /* TypeMembers */, parseTypeMember);
|
|
32133
32127
|
parseExpected(19 /* CloseBraceToken */);
|
|
32134
32128
|
return finishNode(factory2.createMappedTypeNode(readonlyToken, typeParameter, nameType, questionToken, type, members), pos);
|
|
32135
32129
|
}
|
|
@@ -32174,7 +32168,7 @@ var Parser;
|
|
|
32174
32168
|
const pos = getNodePos();
|
|
32175
32169
|
return finishNode(
|
|
32176
32170
|
factory2.createTupleTypeNode(
|
|
32177
|
-
parseBracketedList(
|
|
32171
|
+
parseBracketedList(21 /* TupleElementTypes */, parseTupleElementNameOrTupleElementType, 22 /* OpenBracketToken */, 23 /* CloseBracketToken */)
|
|
32178
32172
|
),
|
|
32179
32173
|
pos
|
|
32180
32174
|
);
|
|
@@ -32802,10 +32796,10 @@ var Parser;
|
|
|
32802
32796
|
}
|
|
32803
32797
|
function tryParseParenthesizedArrowFunctionExpression(allowReturnTypeInArrowFunction) {
|
|
32804
32798
|
const triState = isParenthesizedArrowFunctionExpression();
|
|
32805
|
-
if (triState ===
|
|
32799
|
+
if (triState === 0 /* False */) {
|
|
32806
32800
|
return void 0;
|
|
32807
32801
|
}
|
|
32808
|
-
return triState ===
|
|
32802
|
+
return triState === 1 /* True */ ? parseParenthesizedArrowFunctionExpression(
|
|
32809
32803
|
/*allowAmbiguity*/
|
|
32810
32804
|
true,
|
|
32811
32805
|
/*allowReturnTypeInArrowFunction*/
|
|
@@ -32817,18 +32811,18 @@ var Parser;
|
|
|
32817
32811
|
return lookAhead(isParenthesizedArrowFunctionExpressionWorker);
|
|
32818
32812
|
}
|
|
32819
32813
|
if (token() === 38 /* EqualsGreaterThanToken */) {
|
|
32820
|
-
return
|
|
32814
|
+
return 1 /* True */;
|
|
32821
32815
|
}
|
|
32822
|
-
return
|
|
32816
|
+
return 0 /* False */;
|
|
32823
32817
|
}
|
|
32824
32818
|
function isParenthesizedArrowFunctionExpressionWorker() {
|
|
32825
32819
|
if (token() === 132 /* AsyncKeyword */) {
|
|
32826
32820
|
nextToken();
|
|
32827
32821
|
if (scanner2.hasPrecedingLineBreak()) {
|
|
32828
|
-
return
|
|
32822
|
+
return 0 /* False */;
|
|
32829
32823
|
}
|
|
32830
32824
|
if (token() !== 20 /* OpenParenToken */ && token() !== 29 /* LessThanToken */) {
|
|
32831
|
-
return
|
|
32825
|
+
return 0 /* False */;
|
|
32832
32826
|
}
|
|
32833
32827
|
}
|
|
32834
32828
|
const first2 = token();
|
|
@@ -32840,45 +32834,45 @@ var Parser;
|
|
|
32840
32834
|
case 38 /* EqualsGreaterThanToken */:
|
|
32841
32835
|
case 58 /* ColonToken */:
|
|
32842
32836
|
case 18 /* OpenBraceToken */:
|
|
32843
|
-
return
|
|
32837
|
+
return 1 /* True */;
|
|
32844
32838
|
default:
|
|
32845
|
-
return
|
|
32839
|
+
return 0 /* False */;
|
|
32846
32840
|
}
|
|
32847
32841
|
}
|
|
32848
32842
|
if (second === 22 /* OpenBracketToken */ || second === 18 /* OpenBraceToken */) {
|
|
32849
|
-
return
|
|
32843
|
+
return 2 /* Unknown */;
|
|
32850
32844
|
}
|
|
32851
32845
|
if (second === 25 /* DotDotDotToken */) {
|
|
32852
|
-
return
|
|
32846
|
+
return 1 /* True */;
|
|
32853
32847
|
}
|
|
32854
32848
|
if (isModifierKind(second) && second !== 132 /* AsyncKeyword */ && lookAhead(nextTokenIsIdentifier)) {
|
|
32855
32849
|
if (nextToken() === 128 /* AsKeyword */) {
|
|
32856
|
-
return
|
|
32850
|
+
return 0 /* False */;
|
|
32857
32851
|
}
|
|
32858
|
-
return
|
|
32852
|
+
return 1 /* True */;
|
|
32859
32853
|
}
|
|
32860
32854
|
if (!isIdentifier2() && second !== 108 /* ThisKeyword */) {
|
|
32861
|
-
return
|
|
32855
|
+
return 0 /* False */;
|
|
32862
32856
|
}
|
|
32863
32857
|
switch (nextToken()) {
|
|
32864
32858
|
case 58 /* ColonToken */:
|
|
32865
|
-
return
|
|
32859
|
+
return 1 /* True */;
|
|
32866
32860
|
case 57 /* QuestionToken */:
|
|
32867
32861
|
nextToken();
|
|
32868
32862
|
if (token() === 58 /* ColonToken */ || token() === 27 /* CommaToken */ || token() === 63 /* EqualsToken */ || token() === 21 /* CloseParenToken */) {
|
|
32869
|
-
return
|
|
32863
|
+
return 1 /* True */;
|
|
32870
32864
|
}
|
|
32871
|
-
return
|
|
32865
|
+
return 0 /* False */;
|
|
32872
32866
|
case 27 /* CommaToken */:
|
|
32873
32867
|
case 63 /* EqualsToken */:
|
|
32874
32868
|
case 21 /* CloseParenToken */:
|
|
32875
|
-
return
|
|
32869
|
+
return 2 /* Unknown */;
|
|
32876
32870
|
}
|
|
32877
|
-
return
|
|
32871
|
+
return 0 /* False */;
|
|
32878
32872
|
} else {
|
|
32879
32873
|
Debug.assert(first2 === 29 /* LessThanToken */);
|
|
32880
32874
|
if (!isIdentifier2() && token() !== 85 /* ConstKeyword */) {
|
|
32881
|
-
return
|
|
32875
|
+
return 0 /* False */;
|
|
32882
32876
|
}
|
|
32883
32877
|
if (languageVariant === 1 /* JSX */) {
|
|
32884
32878
|
const isArrowFunctionInJsx = lookAhead(() => {
|
|
@@ -32900,11 +32894,11 @@ var Parser;
|
|
|
32900
32894
|
return false;
|
|
32901
32895
|
});
|
|
32902
32896
|
if (isArrowFunctionInJsx) {
|
|
32903
|
-
return
|
|
32897
|
+
return 1 /* True */;
|
|
32904
32898
|
}
|
|
32905
|
-
return
|
|
32899
|
+
return 0 /* False */;
|
|
32906
32900
|
}
|
|
32907
|
-
return
|
|
32901
|
+
return 2 /* Unknown */;
|
|
32908
32902
|
}
|
|
32909
32903
|
}
|
|
32910
32904
|
function parsePossibleParenthesizedArrowFunctionExpression(allowReturnTypeInArrowFunction) {
|
|
@@ -32924,7 +32918,7 @@ var Parser;
|
|
|
32924
32918
|
}
|
|
32925
32919
|
function tryParseAsyncSimpleArrowFunctionExpression(allowReturnTypeInArrowFunction) {
|
|
32926
32920
|
if (token() === 132 /* AsyncKeyword */) {
|
|
32927
|
-
if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) ===
|
|
32921
|
+
if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) === 1 /* True */) {
|
|
32928
32922
|
const pos = getNodePos();
|
|
32929
32923
|
const asyncModifier = parseModifiersForArrowFunction();
|
|
32930
32924
|
const expr = parseBinaryExpressionOrHigher(0 /* Lowest */);
|
|
@@ -32937,14 +32931,14 @@ var Parser;
|
|
|
32937
32931
|
if (token() === 132 /* AsyncKeyword */) {
|
|
32938
32932
|
nextToken();
|
|
32939
32933
|
if (scanner2.hasPrecedingLineBreak() || token() === 38 /* EqualsGreaterThanToken */) {
|
|
32940
|
-
return
|
|
32934
|
+
return 0 /* False */;
|
|
32941
32935
|
}
|
|
32942
32936
|
const expr = parseBinaryExpressionOrHigher(0 /* Lowest */);
|
|
32943
32937
|
if (!scanner2.hasPrecedingLineBreak() && expr.kind === 79 /* Identifier */ && token() === 38 /* EqualsGreaterThanToken */) {
|
|
32944
|
-
return
|
|
32938
|
+
return 1 /* True */;
|
|
32945
32939
|
}
|
|
32946
32940
|
}
|
|
32947
|
-
return
|
|
32941
|
+
return 0 /* False */;
|
|
32948
32942
|
}
|
|
32949
32943
|
function parseParenthesizedArrowFunctionExpression(allowAmbiguity, allowReturnTypeInArrowFunction) {
|
|
32950
32944
|
const pos = getNodePos();
|
|
@@ -33149,6 +33143,12 @@ var Parser;
|
|
|
33149
33143
|
case 114 /* VoidKeyword */:
|
|
33150
33144
|
return parseVoidExpression();
|
|
33151
33145
|
case 29 /* LessThanToken */:
|
|
33146
|
+
if (languageVariant === 1 /* JSX */ && token() === 29 /* LessThanToken */ && lookAhead(nextTokenIsIdentifierOrKeywordOrGreaterThan)) {
|
|
33147
|
+
return parseJsxElementOrSelfClosingElementOrFragment(
|
|
33148
|
+
/*inExpressionContext*/
|
|
33149
|
+
true
|
|
33150
|
+
);
|
|
33151
|
+
}
|
|
33152
33152
|
return parseTypeAssertion();
|
|
33153
33153
|
case 133 /* AwaitKeyword */:
|
|
33154
33154
|
if (isAwaitExpression2()) {
|
|
@@ -33352,7 +33352,7 @@ var Parser;
|
|
|
33352
33352
|
const list = [];
|
|
33353
33353
|
const listPos = getNodePos();
|
|
33354
33354
|
const saveParsingContext = parsingContext;
|
|
33355
|
-
parsingContext |= 1 <<
|
|
33355
|
+
parsingContext |= 1 << 14 /* JsxChildren */;
|
|
33356
33356
|
while (true) {
|
|
33357
33357
|
const child = parseJsxChild(openingTag, currentToken = scanner2.reScanJsxToken());
|
|
33358
33358
|
if (!child)
|
|
@@ -33367,7 +33367,7 @@ var Parser;
|
|
|
33367
33367
|
}
|
|
33368
33368
|
function parseJsxAttributes() {
|
|
33369
33369
|
const pos = getNodePos();
|
|
33370
|
-
return finishNode(factory2.createJsxAttributes(parseList(
|
|
33370
|
+
return finishNode(factory2.createJsxAttributes(parseList(13 /* JsxAttributes */, parseJsxAttribute)), pos);
|
|
33371
33371
|
}
|
|
33372
33372
|
function parseJsxOpeningOrSelfClosingElementOrOpeningFragment(inExpressionContext) {
|
|
33373
33373
|
const pos = getNodePos();
|
|
@@ -33520,6 +33520,7 @@ var Parser;
|
|
|
33520
33520
|
return finishNode(factory2.createJsxJsxClosingFragment(), pos);
|
|
33521
33521
|
}
|
|
33522
33522
|
function parseTypeAssertion() {
|
|
33523
|
+
Debug.assert(scriptKind === 3 /* TS */ || scriptKind === 4 /* TSX */, "Type assertions should never be parsed outside of TS/TSX; they should either be comparisons or JSX.");
|
|
33523
33524
|
const pos = getNodePos();
|
|
33524
33525
|
parseExpected(29 /* LessThanToken */);
|
|
33525
33526
|
const type = parseType();
|
|
@@ -33695,7 +33696,7 @@ var Parser;
|
|
|
33695
33696
|
}
|
|
33696
33697
|
function parseArgumentList() {
|
|
33697
33698
|
parseExpected(20 /* OpenParenToken */);
|
|
33698
|
-
const result = parseDelimitedList(
|
|
33699
|
+
const result = parseDelimitedList(11 /* ArgumentExpressions */, parseArgumentExpression);
|
|
33699
33700
|
parseExpected(21 /* CloseParenToken */);
|
|
33700
33701
|
return result;
|
|
33701
33702
|
}
|
|
@@ -33707,7 +33708,7 @@ var Parser;
|
|
|
33707
33708
|
return void 0;
|
|
33708
33709
|
}
|
|
33709
33710
|
nextToken();
|
|
33710
|
-
const typeArguments = parseDelimitedList(
|
|
33711
|
+
const typeArguments = parseDelimitedList(20 /* TypeArguments */, parseType);
|
|
33711
33712
|
if (reScanGreaterToken() !== 31 /* GreaterThanToken */) {
|
|
33712
33713
|
return void 0;
|
|
33713
33714
|
}
|
|
@@ -33807,7 +33808,7 @@ var Parser;
|
|
|
33807
33808
|
const openBracketPosition = scanner2.getTokenPos();
|
|
33808
33809
|
const openBracketParsed = parseExpected(22 /* OpenBracketToken */);
|
|
33809
33810
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
33810
|
-
const elements = parseDelimitedList(
|
|
33811
|
+
const elements = parseDelimitedList(15 /* ArrayLiteralMembers */, parseArgumentOrArrayLiteralElement);
|
|
33811
33812
|
parseExpectedMatchingBrackets(22 /* OpenBracketToken */, 23 /* CloseBracketToken */, openBracketParsed, openBracketPosition);
|
|
33812
33813
|
return finishNode(factory2.createArrayLiteralExpression(elements, multiLine), pos);
|
|
33813
33814
|
}
|
|
@@ -33868,7 +33869,7 @@ var Parser;
|
|
|
33868
33869
|
const openBraceParsed = parseExpected(18 /* OpenBraceToken */);
|
|
33869
33870
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
33870
33871
|
const properties = parseDelimitedList(
|
|
33871
|
-
|
|
33872
|
+
12 /* ObjectLiteralMembers */,
|
|
33872
33873
|
parseObjectLiteralElement,
|
|
33873
33874
|
/*considerSemicolonAsDelimiter*/
|
|
33874
33875
|
true
|
|
@@ -33940,7 +33941,7 @@ var Parser;
|
|
|
33940
33941
|
const openBraceParsed = parseExpected(18 /* OpenBraceToken */, diagnosticMessage);
|
|
33941
33942
|
if (openBraceParsed || ignoreMissingOpenBrace) {
|
|
33942
33943
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
33943
|
-
const statements = parseList(
|
|
33944
|
+
const statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
33944
33945
|
parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
|
|
33945
33946
|
const result = withJSDoc(finishNode(factory2.createBlock(statements, multiLine), pos), hasJSDoc);
|
|
33946
33947
|
if (token() === 63 /* EqualsToken */) {
|
|
@@ -34098,14 +34099,14 @@ var Parser;
|
|
|
34098
34099
|
parseExpected(82 /* CaseKeyword */);
|
|
34099
34100
|
const expression = allowInAnd(parseExpression);
|
|
34100
34101
|
parseExpected(58 /* ColonToken */);
|
|
34101
|
-
const statements = parseList(
|
|
34102
|
+
const statements = parseList(3 /* SwitchClauseStatements */, parseStatement);
|
|
34102
34103
|
return withJSDoc(finishNode(factory2.createCaseClause(expression, statements), pos), hasJSDoc);
|
|
34103
34104
|
}
|
|
34104
34105
|
function parseDefaultClause() {
|
|
34105
34106
|
const pos = getNodePos();
|
|
34106
34107
|
parseExpected(88 /* DefaultKeyword */);
|
|
34107
34108
|
parseExpected(58 /* ColonToken */);
|
|
34108
|
-
const statements = parseList(
|
|
34109
|
+
const statements = parseList(3 /* SwitchClauseStatements */, parseStatement);
|
|
34109
34110
|
return finishNode(factory2.createDefaultClause(statements), pos);
|
|
34110
34111
|
}
|
|
34111
34112
|
function parseCaseOrDefaultClause() {
|
|
@@ -34114,7 +34115,7 @@ var Parser;
|
|
|
34114
34115
|
function parseCaseBlock() {
|
|
34115
34116
|
const pos = getNodePos();
|
|
34116
34117
|
parseExpected(18 /* OpenBraceToken */);
|
|
34117
|
-
const clauses = parseList(
|
|
34118
|
+
const clauses = parseList(2 /* SwitchClauses */, parseCaseOrDefaultClause);
|
|
34118
34119
|
parseExpected(19 /* CloseBraceToken */);
|
|
34119
34120
|
return finishNode(factory2.createCaseBlock(clauses), pos);
|
|
34120
34121
|
}
|
|
@@ -34555,14 +34556,14 @@ var Parser;
|
|
|
34555
34556
|
function parseObjectBindingPattern() {
|
|
34556
34557
|
const pos = getNodePos();
|
|
34557
34558
|
parseExpected(18 /* OpenBraceToken */);
|
|
34558
|
-
const elements = parseDelimitedList(
|
|
34559
|
+
const elements = parseDelimitedList(9 /* ObjectBindingElements */, parseObjectBindingElement);
|
|
34559
34560
|
parseExpected(19 /* CloseBraceToken */);
|
|
34560
34561
|
return finishNode(factory2.createObjectBindingPattern(elements), pos);
|
|
34561
34562
|
}
|
|
34562
34563
|
function parseArrayBindingPattern() {
|
|
34563
34564
|
const pos = getNodePos();
|
|
34564
34565
|
parseExpected(22 /* OpenBracketToken */);
|
|
34565
|
-
const elements = parseDelimitedList(
|
|
34566
|
+
const elements = parseDelimitedList(10 /* ArrayBindingElements */, parseArrayBindingElement);
|
|
34566
34567
|
parseExpected(23 /* CloseBracketToken */);
|
|
34567
34568
|
return finishNode(factory2.createArrayBindingPattern(elements), pos);
|
|
34568
34569
|
}
|
|
@@ -34620,7 +34621,7 @@ var Parser;
|
|
|
34620
34621
|
const savedDisallowIn = inDisallowInContext();
|
|
34621
34622
|
setDisallowInContext(inForStatementInitializer);
|
|
34622
34623
|
declarations = parseDelimitedList(
|
|
34623
|
-
|
|
34624
|
+
8 /* VariableDeclarations */,
|
|
34624
34625
|
inForStatementInitializer ? parseVariableDeclaration : parseVariableDeclarationAllowExclamation
|
|
34625
34626
|
);
|
|
34626
34627
|
setDisallowInContext(savedDisallowIn);
|
|
@@ -35023,7 +35024,7 @@ var Parser;
|
|
|
35023
35024
|
}
|
|
35024
35025
|
function parseHeritageClauses() {
|
|
35025
35026
|
if (isHeritageClause2()) {
|
|
35026
|
-
return parseList(
|
|
35027
|
+
return parseList(22 /* HeritageClauses */, parseHeritageClause);
|
|
35027
35028
|
}
|
|
35028
35029
|
return void 0;
|
|
35029
35030
|
}
|
|
@@ -35032,7 +35033,7 @@ var Parser;
|
|
|
35032
35033
|
const tok = token();
|
|
35033
35034
|
Debug.assert(tok === 94 /* ExtendsKeyword */ || tok === 117 /* ImplementsKeyword */);
|
|
35034
35035
|
nextToken();
|
|
35035
|
-
const types = parseDelimitedList(
|
|
35036
|
+
const types = parseDelimitedList(7 /* HeritageClauseElement */, parseExpressionWithTypeArguments);
|
|
35036
35037
|
return finishNode(factory2.createHeritageClause(tok, types), pos);
|
|
35037
35038
|
}
|
|
35038
35039
|
function parseExpressionWithTypeArguments() {
|
|
@@ -35045,13 +35046,13 @@ var Parser;
|
|
|
35045
35046
|
return finishNode(factory2.createExpressionWithTypeArguments(expression, typeArguments), pos);
|
|
35046
35047
|
}
|
|
35047
35048
|
function tryParseTypeArguments() {
|
|
35048
|
-
return token() === 29 /* LessThanToken */ ? parseBracketedList(
|
|
35049
|
+
return token() === 29 /* LessThanToken */ ? parseBracketedList(20 /* TypeArguments */, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */) : void 0;
|
|
35049
35050
|
}
|
|
35050
35051
|
function isHeritageClause2() {
|
|
35051
35052
|
return token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
|
|
35052
35053
|
}
|
|
35053
35054
|
function parseClassMembers() {
|
|
35054
|
-
return parseList(
|
|
35055
|
+
return parseList(5 /* ClassMembers */, parseClassElement);
|
|
35055
35056
|
}
|
|
35056
35057
|
function parseInterfaceDeclaration(pos, hasJSDoc, modifiers) {
|
|
35057
35058
|
parseExpected(118 /* InterfaceKeyword */);
|
|
@@ -35084,7 +35085,7 @@ var Parser;
|
|
|
35084
35085
|
const name = parseIdentifier();
|
|
35085
35086
|
let members;
|
|
35086
35087
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
35087
|
-
members = doOutsideOfYieldAndAwaitContext(() => parseDelimitedList(
|
|
35088
|
+
members = doOutsideOfYieldAndAwaitContext(() => parseDelimitedList(6 /* EnumMembers */, parseEnumMember));
|
|
35088
35089
|
parseExpected(19 /* CloseBraceToken */);
|
|
35089
35090
|
} else {
|
|
35090
35091
|
members = createMissingList();
|
|
@@ -35096,7 +35097,7 @@ var Parser;
|
|
|
35096
35097
|
const pos = getNodePos();
|
|
35097
35098
|
let statements;
|
|
35098
35099
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
35099
|
-
statements = parseList(
|
|
35100
|
+
statements = parseList(1 /* BlockStatements */, parseStatement);
|
|
35100
35101
|
parseExpected(19 /* CloseBraceToken */);
|
|
35101
35102
|
} else {
|
|
35102
35103
|
statements = createMissingList();
|
|
@@ -35221,7 +35222,7 @@ var Parser;
|
|
|
35221
35222
|
if (parseExpected(18 /* OpenBraceToken */)) {
|
|
35222
35223
|
const multiLine = scanner2.hasPrecedingLineBreak();
|
|
35223
35224
|
const elements = parseDelimitedList(
|
|
35224
|
-
|
|
35225
|
+
24 /* AssertEntries */,
|
|
35225
35226
|
parseAssertEntry,
|
|
35226
35227
|
/*considerSemicolonAsDelimiter*/
|
|
35227
35228
|
true
|
|
@@ -35305,7 +35306,7 @@ var Parser;
|
|
|
35305
35306
|
}
|
|
35306
35307
|
function parseNamedImportsOrExports(kind) {
|
|
35307
35308
|
const pos = getNodePos();
|
|
35308
|
-
const node = kind === 272 /* NamedImports */ ? factory2.createNamedImports(parseBracketedList(
|
|
35309
|
+
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 */));
|
|
35309
35310
|
return finishNode(node, pos);
|
|
35310
35311
|
}
|
|
35311
35312
|
function parseExportSpecifier() {
|
|
@@ -36755,7 +36756,7 @@ var IncrementalParser;
|
|
|
36755
36756
|
let currentArrayIndex = 0;
|
|
36756
36757
|
Debug.assert(currentArrayIndex < currentArray.length);
|
|
36757
36758
|
let current = currentArray[currentArrayIndex];
|
|
36758
|
-
let lastQueriedPosition =
|
|
36759
|
+
let lastQueriedPosition = -1 /* Value */;
|
|
36759
36760
|
return {
|
|
36760
36761
|
currentNode(position) {
|
|
36761
36762
|
if (position !== lastQueriedPosition) {
|
|
@@ -36774,7 +36775,7 @@ var IncrementalParser;
|
|
|
36774
36775
|
};
|
|
36775
36776
|
function findHighestListElementThatStartsAtPosition(position) {
|
|
36776
36777
|
currentArray = void 0;
|
|
36777
|
-
currentArrayIndex =
|
|
36778
|
+
currentArrayIndex = -1 /* Value */;
|
|
36778
36779
|
current = void 0;
|
|
36779
36780
|
forEachChild(sourceFile, visitNode3, visitArray2);
|
|
36780
36781
|
return;
|
|
@@ -40571,9 +40572,9 @@ function resolveTypeReferenceDirective(typeReferenceDirectiveName, containingFil
|
|
|
40571
40572
|
const affectingLocations = [];
|
|
40572
40573
|
let features = getNodeResolutionFeatures(options);
|
|
40573
40574
|
if (resolutionMode === 99 /* ESNext */ && (getEmitModuleResolutionKind(options) === 3 /* Node16 */ || getEmitModuleResolutionKind(options) === 99 /* NodeNext */)) {
|
|
40574
|
-
features |=
|
|
40575
|
+
features |= 32 /* EsmMode */;
|
|
40575
40576
|
}
|
|
40576
|
-
const conditions = features &
|
|
40577
|
+
const conditions = features & 8 /* Exports */ ? getConditions(options, !!(features & 32 /* EsmMode */)) : [];
|
|
40577
40578
|
const diagnostics = [];
|
|
40578
40579
|
const moduleResolutionState = {
|
|
40579
40580
|
compilerOptions: options,
|
|
@@ -40706,27 +40707,27 @@ function resolveTypeReferenceDirective(typeReferenceDirectiveName, containingFil
|
|
|
40706
40707
|
}
|
|
40707
40708
|
}
|
|
40708
40709
|
function getNodeResolutionFeatures(options) {
|
|
40709
|
-
let features =
|
|
40710
|
+
let features = 0 /* None */;
|
|
40710
40711
|
switch (getEmitModuleResolutionKind(options)) {
|
|
40711
40712
|
case 3 /* Node16 */:
|
|
40712
|
-
features =
|
|
40713
|
+
features = 30 /* Node16Default */;
|
|
40713
40714
|
break;
|
|
40714
40715
|
case 99 /* NodeNext */:
|
|
40715
|
-
features =
|
|
40716
|
+
features = 30 /* NodeNextDefault */;
|
|
40716
40717
|
break;
|
|
40717
40718
|
case 100 /* Bundler */:
|
|
40718
|
-
features =
|
|
40719
|
+
features = 30 /* BundlerDefault */;
|
|
40719
40720
|
break;
|
|
40720
40721
|
}
|
|
40721
40722
|
if (options.resolvePackageJsonExports) {
|
|
40722
|
-
features |=
|
|
40723
|
+
features |= 8 /* Exports */;
|
|
40723
40724
|
} else if (options.resolvePackageJsonExports === false) {
|
|
40724
|
-
features &= ~
|
|
40725
|
+
features &= ~8 /* Exports */;
|
|
40725
40726
|
}
|
|
40726
40727
|
if (options.resolvePackageJsonImports) {
|
|
40727
|
-
features |=
|
|
40728
|
+
features |= 2 /* Imports */;
|
|
40728
40729
|
} else if (options.resolvePackageJsonImports === false) {
|
|
40729
|
-
features &= ~
|
|
40730
|
+
features &= ~2 /* Imports */;
|
|
40730
40731
|
}
|
|
40731
40732
|
return features;
|
|
40732
40733
|
}
|
|
@@ -46686,7 +46687,6 @@ var SignatureCheckMode = /* @__PURE__ */ ((SignatureCheckMode3) => {
|
|
|
46686
46687
|
SignatureCheckMode3[SignatureCheckMode3["StrictCallback"] = 2] = "StrictCallback";
|
|
46687
46688
|
SignatureCheckMode3[SignatureCheckMode3["IgnoreReturnTypes"] = 4] = "IgnoreReturnTypes";
|
|
46688
46689
|
SignatureCheckMode3[SignatureCheckMode3["StrictArity"] = 8] = "StrictArity";
|
|
46689
|
-
SignatureCheckMode3[SignatureCheckMode3["StrictTopSignature"] = 16] = "StrictTopSignature";
|
|
46690
46690
|
SignatureCheckMode3[SignatureCheckMode3["Callback"] = 3] = "Callback";
|
|
46691
46691
|
return SignatureCheckMode3;
|
|
46692
46692
|
})(SignatureCheckMode || {});
|
|
@@ -62794,24 +62794,16 @@ function createTypeChecker(host) {
|
|
|
62794
62794
|
void 0
|
|
62795
62795
|
) !== 0 /* False */;
|
|
62796
62796
|
}
|
|
62797
|
-
function
|
|
62798
|
-
|
|
62799
|
-
const paramType = getTypeOfParameter(s.parameters[0]);
|
|
62800
|
-
const restType = isArrayType(paramType) ? getTypeArguments(paramType)[0] : paramType;
|
|
62801
|
-
return !!(restType.flags & (1 /* Any */ | 131072 /* Never */) && getReturnTypeOfSignature(s).flags & 3 /* AnyOrUnknown */);
|
|
62802
|
-
}
|
|
62803
|
-
return false;
|
|
62797
|
+
function isAnySignature(s) {
|
|
62798
|
+
return !s.typeParameters && (!s.thisParameter || isTypeAny(getTypeOfParameter(s.thisParameter))) && s.parameters.length === 1 && signatureHasRestParameter(s) && (getTypeOfParameter(s.parameters[0]) === anyArrayType || isTypeAny(getTypeOfParameter(s.parameters[0]))) && isTypeAny(getReturnTypeOfSignature(s));
|
|
62804
62799
|
}
|
|
62805
62800
|
function compareSignaturesRelated(source, target, checkMode, reportErrors2, errorReporter, incompatibleErrorReporter, compareTypes, reportUnreliableMarkers) {
|
|
62806
62801
|
if (source === target) {
|
|
62807
62802
|
return -1 /* True */;
|
|
62808
62803
|
}
|
|
62809
|
-
if (
|
|
62804
|
+
if (isAnySignature(target)) {
|
|
62810
62805
|
return -1 /* True */;
|
|
62811
62806
|
}
|
|
62812
|
-
if (checkMode & 16 /* StrictTopSignature */ && isTopSignature(source) && !isTopSignature(target)) {
|
|
62813
|
-
return 0 /* False */;
|
|
62814
|
-
}
|
|
62815
62807
|
const targetCount = getParameterCount(target);
|
|
62816
62808
|
const sourceHasMoreParameters = !hasEffectiveRestParameter(target) && (checkMode & 8 /* StrictArity */ ? hasEffectiveRestParameter(source) || getParameterCount(source) > targetCount : getMinArgumentCount(source) > targetCount);
|
|
62817
62809
|
if (sourceHasMoreParameters) {
|
|
@@ -63029,9 +63021,7 @@ function createTypeChecker(host) {
|
|
|
63029
63021
|
function isSimpleTypeRelatedTo(source, target, relation, errorReporter) {
|
|
63030
63022
|
const s = source.flags;
|
|
63031
63023
|
const t = target.flags;
|
|
63032
|
-
if (t &
|
|
63033
|
-
return true;
|
|
63034
|
-
if (t & 2 /* Unknown */ && !(relation === strictSubtypeRelation && s & 1 /* Any */))
|
|
63024
|
+
if (t & 3 /* AnyOrUnknown */ || s & 131072 /* Never */ || source === wildcardType)
|
|
63035
63025
|
return true;
|
|
63036
63026
|
if (t & 131072 /* Never */)
|
|
63037
63027
|
return false;
|
|
@@ -65271,11 +65261,10 @@ function createTypeChecker(host) {
|
|
|
65271
65261
|
return (source2, target2) => reportIncompatibleError(Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible, typeToString(source2), typeToString(target2));
|
|
65272
65262
|
}
|
|
65273
65263
|
function signatureRelatedTo(source2, target2, erase, reportErrors2, intersectionState, incompatibleReporter) {
|
|
65274
|
-
const checkMode = relation === subtypeRelation ? 16 /* StrictTopSignature */ : relation === strictSubtypeRelation ? 16 /* StrictTopSignature */ | 8 /* StrictArity */ : 0 /* None */;
|
|
65275
65264
|
return compareSignaturesRelated(
|
|
65276
65265
|
erase ? getErasedSignature(source2) : source2,
|
|
65277
65266
|
erase ? getErasedSignature(target2) : target2,
|
|
65278
|
-
|
|
65267
|
+
relation === strictSubtypeRelation ? 8 /* StrictArity */ : 0,
|
|
65279
65268
|
reportErrors2,
|
|
65280
65269
|
reportError,
|
|
65281
65270
|
incompatibleReporter,
|
|
@@ -65400,7 +65389,7 @@ function createTypeChecker(host) {
|
|
|
65400
65389
|
if (sourceInfo) {
|
|
65401
65390
|
return indexInfoRelatedTo(sourceInfo, targetInfo, reportErrors2, intersectionState);
|
|
65402
65391
|
}
|
|
65403
|
-
if (!(intersectionState & 1 /* Source */) &&
|
|
65392
|
+
if (!(intersectionState & 1 /* Source */) && isObjectTypeWithInferableIndex(source2)) {
|
|
65404
65393
|
return membersRelatedToIndexInfo(source2, targetInfo, reportErrors2, intersectionState);
|
|
65405
65394
|
}
|
|
65406
65395
|
if (reportErrors2) {
|
|
@@ -65930,7 +65919,17 @@ function createTypeChecker(host) {
|
|
|
65930
65919
|
return propType;
|
|
65931
65920
|
}
|
|
65932
65921
|
if (everyType(type, isTupleType)) {
|
|
65933
|
-
return mapType(type, (t) =>
|
|
65922
|
+
return mapType(type, (t) => {
|
|
65923
|
+
const tupleType = t;
|
|
65924
|
+
const restType = getRestTypeOfTupleType(tupleType);
|
|
65925
|
+
if (!restType) {
|
|
65926
|
+
return undefinedType;
|
|
65927
|
+
}
|
|
65928
|
+
if (compilerOptions.noUncheckedIndexedAccess && index >= tupleType.target.fixedLength + getEndElementCount(tupleType.target, 3 /* Fixed */)) {
|
|
65929
|
+
return getUnionType([restType, undefinedType]);
|
|
65930
|
+
}
|
|
65931
|
+
return restType;
|
|
65932
|
+
});
|
|
65934
65933
|
}
|
|
65935
65934
|
return void 0;
|
|
65936
65935
|
}
|
|
@@ -68572,7 +68571,7 @@ function createTypeChecker(host) {
|
|
|
68572
68571
|
}
|
|
68573
68572
|
return declaredType;
|
|
68574
68573
|
}
|
|
68575
|
-
if (isVariableDeclaration(node) && node.parent.parent.kind === 246 /* ForInStatement */ && isMatchingReference(reference, node.parent.parent.expression)) {
|
|
68574
|
+
if (isVariableDeclaration(node) && node.parent.parent.kind === 246 /* ForInStatement */ && (isMatchingReference(reference, node.parent.parent.expression) || optionalChainContainsReference(node.parent.parent.expression, reference))) {
|
|
68576
68575
|
return getNonNullableTypeIfNeeded(finalizeEvolvingArrayType(getTypeFromFlowType(getTypeAtFlowNode(flow.antecedent))));
|
|
68577
68576
|
}
|
|
68578
68577
|
return void 0;
|
|
@@ -69287,29 +69286,18 @@ function createTypeChecker(host) {
|
|
|
69287
69286
|
return (_a3 = getCachedType(key2)) != null ? _a3 : setCachedType(key2, getNarrowedTypeWorker(type, candidate, assumeTrue, checkDerived));
|
|
69288
69287
|
}
|
|
69289
69288
|
function getNarrowedTypeWorker(type, candidate, assumeTrue, checkDerived) {
|
|
69289
|
+
const isRelated = checkDerived ? isTypeDerivedFrom : isTypeSubtypeOf;
|
|
69290
69290
|
if (!assumeTrue) {
|
|
69291
|
-
|
|
69292
|
-
return filterType(type, (t) => !isTypeDerivedFrom(t, candidate));
|
|
69293
|
-
}
|
|
69294
|
-
const trueType2 = getNarrowedType(
|
|
69295
|
-
type,
|
|
69296
|
-
candidate,
|
|
69297
|
-
/*assumeTrue*/
|
|
69298
|
-
true,
|
|
69299
|
-
/*checkDerived*/
|
|
69300
|
-
false
|
|
69301
|
-
);
|
|
69302
|
-
return filterType(type, (t) => !isTypeSubsetOf(t, trueType2));
|
|
69291
|
+
return filterType(type, (t) => !isRelated(t, candidate));
|
|
69303
69292
|
}
|
|
69304
69293
|
if (type.flags & 3 /* AnyOrUnknown */) {
|
|
69305
69294
|
return candidate;
|
|
69306
69295
|
}
|
|
69307
|
-
const isRelated = checkDerived ? isTypeDerivedFrom : isTypeSubtypeOf;
|
|
69308
69296
|
const keyPropertyName = type.flags & 1048576 /* Union */ ? getKeyPropertyName(type) : void 0;
|
|
69309
69297
|
const narrowedType = mapType(candidate, (c) => {
|
|
69310
69298
|
const discriminant = keyPropertyName && getTypeOfPropertyOfType(c, keyPropertyName);
|
|
69311
69299
|
const matching = discriminant && getConstituentTypeForKeyType(type, discriminant);
|
|
69312
|
-
const directlyRelated = mapType(matching || type, checkDerived ? (t) => isTypeDerivedFrom(t, c) ? t : isTypeDerivedFrom(c, t) ? c : neverType : (t) => isTypeSubtypeOf(c, t)
|
|
69300
|
+
const directlyRelated = mapType(matching || type, checkDerived ? (t) => isTypeDerivedFrom(t, c) ? t : isTypeDerivedFrom(c, t) ? c : neverType : (t) => isTypeSubtypeOf(c, t) ? c : isTypeSubtypeOf(t, c) ? t : neverType);
|
|
69313
69301
|
return directlyRelated.flags & 131072 /* Never */ ? mapType(type, (t) => maybeTypeOfKind(t, 465829888 /* Instantiable */) && isRelated(c, getBaseConstraintOfType(t) || unknownType) ? getIntersectionType([t, c]) : neverType) : directlyRelated;
|
|
69314
69302
|
});
|
|
69315
69303
|
return !(narrowedType.flags & 131072 /* Never */) ? narrowedType : isTypeSubtypeOf(candidate, type) ? candidate : isTypeAssignableTo(type, candidate) ? type : isTypeAssignableTo(candidate, type) ? candidate : getIntersectionType([type, candidate]);
|
|
@@ -77065,7 +77053,7 @@ function createTypeChecker(host) {
|
|
|
77065
77053
|
return leftType;
|
|
77066
77054
|
} else {
|
|
77067
77055
|
checkAssignmentOperator(rightType);
|
|
77068
|
-
return rightType;
|
|
77056
|
+
return getRegularTypeOfObjectLiteral(rightType);
|
|
77069
77057
|
}
|
|
77070
77058
|
case 27 /* CommaToken */:
|
|
77071
77059
|
if (!compilerOptions.allowUnreachableCode && isSideEffectFree(left) && !isIndirectCall(left.parent)) {
|
|
@@ -105184,6 +105172,9 @@ function transformModule(context) {
|
|
|
105184
105172
|
return visitEachChild(node, visitor, context);
|
|
105185
105173
|
}
|
|
105186
105174
|
function visitImportCallExpression(node) {
|
|
105175
|
+
if (moduleKind === 0 /* None */ && languageVersion >= 7 /* ES2020 */) {
|
|
105176
|
+
return visitEachChild(node, visitor, context);
|
|
105177
|
+
}
|
|
105187
105178
|
const externalModuleName = getExternalModuleNameLiteral(factory2, node, currentSourceFile, host, resolver, compilerOptions);
|
|
105188
105179
|
const firstArgument = visitNode(firstOrUndefined(node.arguments), visitor, isExpression);
|
|
105189
105180
|
const argument = externalModuleName && (!firstArgument || !isStringLiteral(firstArgument) || firstArgument.text !== externalModuleName.text) ? externalModuleName : firstArgument;
|
|
@@ -111488,9 +111479,9 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
111488
111479
|
formattedNameTempFlagsStack = [];
|
|
111489
111480
|
formattedNameTempFlags = /* @__PURE__ */ new Map();
|
|
111490
111481
|
privateNameTempFlagsStack = [];
|
|
111491
|
-
privateNameTempFlags =
|
|
111482
|
+
privateNameTempFlags = 0 /* Auto */;
|
|
111492
111483
|
tempFlagsStack = [];
|
|
111493
|
-
tempFlags =
|
|
111484
|
+
tempFlags = 0 /* Auto */;
|
|
111494
111485
|
reservedNamesStack = [];
|
|
111495
111486
|
reservedNames = void 0;
|
|
111496
111487
|
reservedPrivateNamesStack = [];
|
|
@@ -112459,7 +112450,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
112459
112450
|
}
|
|
112460
112451
|
function emitTypeLiteral(node) {
|
|
112461
112452
|
pushPrivateNameGenerationScope(
|
|
112462
|
-
|
|
112453
|
+
0 /* Auto */,
|
|
112463
112454
|
/*newReservedMemberNames*/
|
|
112464
112455
|
void 0
|
|
112465
112456
|
);
|
|
@@ -112648,7 +112639,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
112648
112639
|
}
|
|
112649
112640
|
function emitObjectLiteralExpression(node) {
|
|
112650
112641
|
pushPrivateNameGenerationScope(
|
|
112651
|
-
|
|
112642
|
+
0 /* Auto */,
|
|
112652
112643
|
/*newReservedMemberNames*/
|
|
112653
112644
|
void 0
|
|
112654
112645
|
);
|
|
@@ -113414,7 +113405,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
113414
113405
|
}
|
|
113415
113406
|
function emitClassDeclarationOrExpression(node) {
|
|
113416
113407
|
pushPrivateNameGenerationScope(
|
|
113417
|
-
|
|
113408
|
+
0 /* Auto */,
|
|
113418
113409
|
/*newReservedMemberNames*/
|
|
113419
113410
|
void 0
|
|
113420
113411
|
);
|
|
@@ -113447,7 +113438,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
113447
113438
|
}
|
|
113448
113439
|
function emitInterfaceDeclaration(node) {
|
|
113449
113440
|
pushPrivateNameGenerationScope(
|
|
113450
|
-
|
|
113441
|
+
0 /* Auto */,
|
|
113451
113442
|
/*newReservedMemberNames*/
|
|
113452
113443
|
void 0
|
|
113453
113444
|
);
|
|
@@ -114890,7 +114881,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
114890
114881
|
return;
|
|
114891
114882
|
}
|
|
114892
114883
|
tempFlagsStack.push(tempFlags);
|
|
114893
|
-
tempFlags =
|
|
114884
|
+
tempFlags = 0 /* Auto */;
|
|
114894
114885
|
formattedNameTempFlagsStack.push(formattedNameTempFlags);
|
|
114895
114886
|
formattedNameTempFlags = void 0;
|
|
114896
114887
|
reservedNamesStack.push(reservedNames);
|
|
@@ -115076,7 +115067,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115076
115067
|
case "#":
|
|
115077
115068
|
return privateNameTempFlags;
|
|
115078
115069
|
default:
|
|
115079
|
-
return (_a2 = formattedNameTempFlags == null ? void 0 : formattedNameTempFlags.get(formattedNameKey)) != null ? _a2 :
|
|
115070
|
+
return (_a2 = formattedNameTempFlags == null ? void 0 : formattedNameTempFlags.get(formattedNameKey)) != null ? _a2 : 0 /* Auto */;
|
|
115080
115071
|
}
|
|
115081
115072
|
}
|
|
115082
115073
|
function setTempFlags(formattedNameKey, flags) {
|
|
@@ -115100,7 +115091,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115100
115091
|
const key = formatGeneratedName(privateName, prefix, "", suffix);
|
|
115101
115092
|
let tempFlags2 = getTempFlags(key);
|
|
115102
115093
|
if (flags && !(tempFlags2 & flags)) {
|
|
115103
|
-
const name = flags ===
|
|
115094
|
+
const name = flags === 268435456 /* _i */ ? "_i" : "_n";
|
|
115104
115095
|
const fullName = formatGeneratedName(privateName, prefix, name, suffix);
|
|
115105
115096
|
if (isUniqueName(fullName, privateName)) {
|
|
115106
115097
|
tempFlags2 |= flags;
|
|
@@ -115114,7 +115105,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115114
115105
|
}
|
|
115115
115106
|
}
|
|
115116
115107
|
while (true) {
|
|
115117
|
-
const count = tempFlags2 &
|
|
115108
|
+
const count = tempFlags2 & 268435455 /* CountMask */;
|
|
115118
115109
|
tempFlags2++;
|
|
115119
115110
|
if (count !== 8 && count !== 13) {
|
|
115120
115111
|
const name = count < 26 ? "_" + String.fromCharCode(97 /* a */ + count) : "_" + (count - 26);
|
|
@@ -115258,7 +115249,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115258
115249
|
return generateNameCached(node.name, privateName);
|
|
115259
115250
|
}
|
|
115260
115251
|
return makeTempVariableName(
|
|
115261
|
-
|
|
115252
|
+
0 /* Auto */,
|
|
115262
115253
|
/*reservedInNestedScopes*/
|
|
115263
115254
|
false,
|
|
115264
115255
|
privateName,
|
|
@@ -115315,7 +115306,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115315
115306
|
return generateNameForMethodOrAccessor(node, privateName, prefix, suffix);
|
|
115316
115307
|
case 164 /* ComputedPropertyName */:
|
|
115317
115308
|
return makeTempVariableName(
|
|
115318
|
-
|
|
115309
|
+
0 /* Auto */,
|
|
115319
115310
|
/*reserveInNestedScopes*/
|
|
115320
115311
|
true,
|
|
115321
115312
|
privateName,
|
|
@@ -115324,7 +115315,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115324
115315
|
);
|
|
115325
115316
|
default:
|
|
115326
115317
|
return makeTempVariableName(
|
|
115327
|
-
|
|
115318
|
+
0 /* Auto */,
|
|
115328
115319
|
/*reserveInNestedScopes*/
|
|
115329
115320
|
false,
|
|
115330
115321
|
privateName,
|
|
@@ -115339,11 +115330,11 @@ function createPrinter(printerOptions = {}, handlers = {}) {
|
|
|
115339
115330
|
const suffix = formatGeneratedNamePart(autoGenerate.suffix);
|
|
115340
115331
|
switch (autoGenerate.flags & 7 /* KindMask */) {
|
|
115341
115332
|
case 1 /* Auto */:
|
|
115342
|
-
return makeTempVariableName(
|
|
115333
|
+
return makeTempVariableName(0 /* Auto */, !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */), isPrivateIdentifier(name), prefix, suffix);
|
|
115343
115334
|
case 2 /* Loop */:
|
|
115344
115335
|
Debug.assertNode(name, isIdentifier);
|
|
115345
115336
|
return makeTempVariableName(
|
|
115346
|
-
|
|
115337
|
+
268435456 /* _i */,
|
|
115347
115338
|
!!(autoGenerate.flags & 8 /* ReservedInNestedScopes */),
|
|
115348
115339
|
/*privateName*/
|
|
115349
115340
|
false,
|
|
@@ -115813,12 +115804,6 @@ function getOpeningBracket(format) {
|
|
|
115813
115804
|
function getClosingBracket(format) {
|
|
115814
115805
|
return brackets[format & 15360 /* BracketsMask */][1];
|
|
115815
115806
|
}
|
|
115816
|
-
var TempFlags = /* @__PURE__ */ ((TempFlags2) => {
|
|
115817
|
-
TempFlags2[TempFlags2["Auto"] = 0] = "Auto";
|
|
115818
|
-
TempFlags2[TempFlags2["CountMask"] = 268435455] = "CountMask";
|
|
115819
|
-
TempFlags2[TempFlags2["_i"] = 268435456] = "_i";
|
|
115820
|
-
return TempFlags2;
|
|
115821
|
-
})(TempFlags || {});
|
|
115822
115807
|
function emitListItemNoParenthesizer(node, emit, _parenthesizerRule, _index) {
|
|
115823
115808
|
emit(node);
|
|
115824
115809
|
}
|
|
@@ -128326,7 +128311,7 @@ function makeImport(defaultImport, namedImports, moduleSpecifier, quotePreferenc
|
|
|
128326
128311
|
);
|
|
128327
128312
|
}
|
|
128328
128313
|
function makeStringLiteral(text, quotePreference) {
|
|
128329
|
-
return factory.createStringLiteral(text, quotePreference ===
|
|
128314
|
+
return factory.createStringLiteral(text, quotePreference === 0 /* Single */);
|
|
128330
128315
|
}
|
|
128331
128316
|
var QuotePreference = /* @__PURE__ */ ((QuotePreference5) => {
|
|
128332
128317
|
QuotePreference5[QuotePreference5["Single"] = 0] = "Single";
|
|
@@ -140830,13 +140815,13 @@ function createImportAdderWorker(sourceFile, program, useAutoImportProvider, pre
|
|
|
140830
140815
|
var _a2, _b;
|
|
140831
140816
|
const { fix, symbolName: symbolName2 } = info;
|
|
140832
140817
|
switch (fix.kind) {
|
|
140833
|
-
case
|
|
140818
|
+
case 0 /* UseNamespace */:
|
|
140834
140819
|
addToNamespace.push(fix);
|
|
140835
140820
|
break;
|
|
140836
|
-
case
|
|
140821
|
+
case 1 /* JsdocTypeImport */:
|
|
140837
140822
|
importType.push(fix);
|
|
140838
140823
|
break;
|
|
140839
|
-
case
|
|
140824
|
+
case 2 /* AddToExisting */: {
|
|
140840
140825
|
const { importClauseOrBindingPattern, importKind, addAsTypeOnly } = fix;
|
|
140841
140826
|
const key = String(getNodeId(importClauseOrBindingPattern));
|
|
140842
140827
|
let entry = addToExisting.get(key);
|
|
@@ -140855,7 +140840,7 @@ function createImportAdderWorker(sourceFile, program, useAutoImportProvider, pre
|
|
|
140855
140840
|
}
|
|
140856
140841
|
break;
|
|
140857
140842
|
}
|
|
140858
|
-
case
|
|
140843
|
+
case 3 /* AddNew */: {
|
|
140859
140844
|
const { moduleSpecifier, importKind, useRequire, addAsTypeOnly } = fix;
|
|
140860
140845
|
const entry = getNewImportEntry(moduleSpecifier, importKind, useRequire, addAsTypeOnly);
|
|
140861
140846
|
Debug.assert(entry.useRequire === useRequire, "(Add new) Tried to add an `import` and a `require` for the same module");
|
|
@@ -140876,7 +140861,7 @@ function createImportAdderWorker(sourceFile, program, useAutoImportProvider, pre
|
|
|
140876
140861
|
}
|
|
140877
140862
|
break;
|
|
140878
140863
|
}
|
|
140879
|
-
case
|
|
140864
|
+
case 4 /* PromoteTypeOnly */:
|
|
140880
140865
|
break;
|
|
140881
140866
|
default:
|
|
140882
140867
|
Debug.assertNever(fix, `fix wasn't never - got kind ${fix.kind}`);
|
|
@@ -140903,13 +140888,13 @@ function createImportAdderWorker(sourceFile, program, useAutoImportProvider, pre
|
|
|
140903
140888
|
namespaceLikeImport: void 0,
|
|
140904
140889
|
useRequire
|
|
140905
140890
|
};
|
|
140906
|
-
if (importKind === 1 /* Default */ && addAsTypeOnly ===
|
|
140891
|
+
if (importKind === 1 /* Default */ && addAsTypeOnly === 2 /* Required */) {
|
|
140907
140892
|
if (typeOnlyEntry)
|
|
140908
140893
|
return typeOnlyEntry;
|
|
140909
140894
|
newImports.set(typeOnlyKey, newEntry);
|
|
140910
140895
|
return newEntry;
|
|
140911
140896
|
}
|
|
140912
|
-
if (addAsTypeOnly ===
|
|
140897
|
+
if (addAsTypeOnly === 1 /* Allowed */ && (typeOnlyEntry || nonTypeOnlyEntry)) {
|
|
140913
140898
|
return typeOnlyEntry || nonTypeOnlyEntry;
|
|
140914
140899
|
}
|
|
140915
140900
|
if (nonTypeOnlyEntry) {
|
|
@@ -140991,20 +140976,6 @@ function createImportSpecifierResolver(importingFile, program, host, preferences
|
|
|
140991
140976
|
return result && { ...result, computedWithoutCacheCount };
|
|
140992
140977
|
}
|
|
140993
140978
|
}
|
|
140994
|
-
var ImportFixKind = /* @__PURE__ */ ((ImportFixKind2) => {
|
|
140995
|
-
ImportFixKind2[ImportFixKind2["UseNamespace"] = 0] = "UseNamespace";
|
|
140996
|
-
ImportFixKind2[ImportFixKind2["JsdocTypeImport"] = 1] = "JsdocTypeImport";
|
|
140997
|
-
ImportFixKind2[ImportFixKind2["AddToExisting"] = 2] = "AddToExisting";
|
|
140998
|
-
ImportFixKind2[ImportFixKind2["AddNew"] = 3] = "AddNew";
|
|
140999
|
-
ImportFixKind2[ImportFixKind2["PromoteTypeOnly"] = 4] = "PromoteTypeOnly";
|
|
141000
|
-
return ImportFixKind2;
|
|
141001
|
-
})(ImportFixKind || {});
|
|
141002
|
-
var AddAsTypeOnly = /* @__PURE__ */ ((AddAsTypeOnly2) => {
|
|
141003
|
-
AddAsTypeOnly2[AddAsTypeOnly2["Allowed"] = 1] = "Allowed";
|
|
141004
|
-
AddAsTypeOnly2[AddAsTypeOnly2["Required"] = 2] = "Required";
|
|
141005
|
-
AddAsTypeOnly2[AddAsTypeOnly2["NotAllowed"] = 4] = "NotAllowed";
|
|
141006
|
-
return AddAsTypeOnly2;
|
|
141007
|
-
})(AddAsTypeOnly || {});
|
|
141008
140979
|
function getImportCompletionAction(targetSymbol, moduleSymbol, sourceFile, symbolName2, isJsxTagName, host, program, formatContext, position, preferences, cancellationToken) {
|
|
141009
140980
|
const compilerOptions = program.getCompilerOptions();
|
|
141010
140981
|
const exportInfos = pathIsBareSpecifier(stripQuotes(moduleSymbol.name)) ? [getSingleExportInfoForSymbol(targetSymbol, moduleSymbol, program, host)] : getAllExportInfoForSymbol(sourceFile, targetSymbol, symbolName2, isJsxTagName, program, host, preferences, cancellationToken);
|
|
@@ -147790,19 +147761,19 @@ function getCompletionsAtPosition(host, program, log, sourceFile, position, pref
|
|
|
147790
147761
|
return void 0;
|
|
147791
147762
|
}
|
|
147792
147763
|
switch (completionData.kind) {
|
|
147793
|
-
case
|
|
147764
|
+
case 0 /* Data */:
|
|
147794
147765
|
const response = completionInfoFromData(sourceFile, host, program, compilerOptions, log, completionData, preferences, formatContext, position);
|
|
147795
147766
|
if (response == null ? void 0 : response.isIncomplete) {
|
|
147796
147767
|
incompleteCompletionsCache == null ? void 0 : incompleteCompletionsCache.set(response);
|
|
147797
147768
|
}
|
|
147798
147769
|
return response;
|
|
147799
|
-
case
|
|
147770
|
+
case 1 /* JsDocTagName */:
|
|
147800
147771
|
return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocTagNameCompletions());
|
|
147801
|
-
case
|
|
147772
|
+
case 2 /* JsDocTag */:
|
|
147802
147773
|
return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocTagCompletions());
|
|
147803
|
-
case
|
|
147774
|
+
case 3 /* JsDocParameterName */:
|
|
147804
147775
|
return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocParameterNameCompletions(completionData.tag));
|
|
147805
|
-
case
|
|
147776
|
+
case 4 /* Keywords */:
|
|
147806
147777
|
return specificKeywordCompletionInfo(completionData.keywordCompletions, completionData.isNewIdentifierLocation);
|
|
147807
147778
|
default:
|
|
147808
147779
|
return Debug.assertNever(completionData);
|
|
@@ -147905,7 +147876,7 @@ function specificKeywordCompletionInfo(entries, isNewIdentifierLocation) {
|
|
|
147905
147876
|
}
|
|
147906
147877
|
function keywordCompletionData(keywordFilters, filterOutTsOnlyKeywords, isNewIdentifierLocation) {
|
|
147907
147878
|
return {
|
|
147908
|
-
kind:
|
|
147879
|
+
kind: 4 /* Keywords */,
|
|
147909
147880
|
keywordCompletions: getKeywordCompletions(keywordFilters, filterOutTsOnlyKeywords),
|
|
147910
147881
|
isNewIdentifierLocation
|
|
147911
147882
|
};
|
|
@@ -148182,9 +148153,9 @@ function entityNameToExpression(entityName, languageVersion, quotePreference) {
|
|
|
148182
148153
|
}
|
|
148183
148154
|
function isMemberCompletionKind(kind) {
|
|
148184
148155
|
switch (kind) {
|
|
148185
|
-
case
|
|
148186
|
-
case
|
|
148187
|
-
case
|
|
148156
|
+
case 0 /* ObjectPropertyDeclaration */:
|
|
148157
|
+
case 3 /* MemberLike */:
|
|
148158
|
+
case 2 /* PropertyAccess */:
|
|
148188
148159
|
return true;
|
|
148189
148160
|
default:
|
|
148190
148161
|
return false;
|
|
@@ -148300,7 +148271,7 @@ function createCompletionEntry(symbol, sortText, replacementToken, contextToken,
|
|
|
148300
148271
|
if ((origin == null ? void 0 : origin.kind) === 64 /* TypeOnlyAlias */) {
|
|
148301
148272
|
hasAction = true;
|
|
148302
148273
|
}
|
|
148303
|
-
if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind ===
|
|
148274
|
+
if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind === 3 /* MemberLike */ && isClassLikeMemberCompletion(symbol, location, sourceFile)) {
|
|
148304
148275
|
let importAdder;
|
|
148305
148276
|
({ insertText, isSnippet, importAdder, replacementSpan } = getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, position, contextToken, formatContext));
|
|
148306
148277
|
sortText = SortText.ClassMemberSnippets;
|
|
@@ -148835,7 +148806,7 @@ function getCompletionEntriesFromSymbols(symbols, entries, replacementToken, con
|
|
|
148835
148806
|
const symbol = symbols[i];
|
|
148836
148807
|
const origin = symbolToOriginInfoMap == null ? void 0 : symbolToOriginInfoMap[i];
|
|
148837
148808
|
const info = getCompletionEntryDisplayNameForSymbol(symbol, target, origin, kind, !!jsxIdentifierExpected);
|
|
148838
|
-
if (!info || uniques.get(info.name) && (!origin || !originIsObjectLiteralMethod(origin)) || kind ===
|
|
148809
|
+
if (!info || uniques.get(info.name) && (!origin || !originIsObjectLiteralMethod(origin)) || kind === 1 /* Global */ && symbolToSortTextMap && !shouldIncludeSymbol(symbol, symbolToSortTextMap)) {
|
|
148839
148810
|
continue;
|
|
148840
148811
|
}
|
|
148841
148812
|
const { name, needsConvertPropertyAccess } = info;
|
|
@@ -148974,7 +148945,7 @@ function getSymbolCompletionFromEntryId(program, log, sourceFile, position, entr
|
|
|
148974
148945
|
if (!completionData) {
|
|
148975
148946
|
return { type: "none" };
|
|
148976
148947
|
}
|
|
148977
|
-
if (completionData.kind !==
|
|
148948
|
+
if (completionData.kind !== 0 /* Data */) {
|
|
148978
148949
|
return { type: "request", request: completionData };
|
|
148979
148950
|
}
|
|
148980
148951
|
const { symbols, literals, location, completionKind, symbolToOriginInfoMap, contextToken, previousToken, isJsxInitializer, isTypeOnlyLocation } = completionData;
|
|
@@ -149000,13 +148971,13 @@ function getCompletionEntryDetails(program, log, sourceFile, position, entryId,
|
|
|
149000
148971
|
case "request": {
|
|
149001
148972
|
const { request } = symbolCompletion;
|
|
149002
148973
|
switch (request.kind) {
|
|
149003
|
-
case
|
|
148974
|
+
case 1 /* JsDocTagName */:
|
|
149004
148975
|
return ts_JsDoc_exports.getJSDocTagNameCompletionDetails(name);
|
|
149005
|
-
case
|
|
148976
|
+
case 2 /* JsDocTag */:
|
|
149006
148977
|
return ts_JsDoc_exports.getJSDocTagCompletionDetails(name);
|
|
149007
|
-
case
|
|
148978
|
+
case 3 /* JsDocParameterName */:
|
|
149008
148979
|
return ts_JsDoc_exports.getJSDocParameterNameCompletionDetails(name);
|
|
149009
|
-
case
|
|
148980
|
+
case 4 /* Keywords */:
|
|
149010
148981
|
return some(request.keywordCompletions, (c) => c.name === name) ? createSimpleDetails(name, "keyword" /* keyword */, 5 /* keyword */) : void 0;
|
|
149011
148982
|
default:
|
|
149012
148983
|
return Debug.assertNever(request);
|
|
@@ -149148,14 +149119,6 @@ function getCompletionEntrySymbol(program, log, sourceFile, position, entryId, h
|
|
|
149148
149119
|
const completion = getSymbolCompletionFromEntryId(program, log, sourceFile, position, entryId, host, preferences);
|
|
149149
149120
|
return completion.type === "symbol" ? completion.symbol : void 0;
|
|
149150
149121
|
}
|
|
149151
|
-
var CompletionDataKind = /* @__PURE__ */ ((CompletionDataKind2) => {
|
|
149152
|
-
CompletionDataKind2[CompletionDataKind2["Data"] = 0] = "Data";
|
|
149153
|
-
CompletionDataKind2[CompletionDataKind2["JsDocTagName"] = 1] = "JsDocTagName";
|
|
149154
|
-
CompletionDataKind2[CompletionDataKind2["JsDocTag"] = 2] = "JsDocTag";
|
|
149155
|
-
CompletionDataKind2[CompletionDataKind2["JsDocParameterName"] = 3] = "JsDocParameterName";
|
|
149156
|
-
CompletionDataKind2[CompletionDataKind2["Keywords"] = 4] = "Keywords";
|
|
149157
|
-
return CompletionDataKind2;
|
|
149158
|
-
})(CompletionDataKind || {});
|
|
149159
149122
|
var CompletionKind = /* @__PURE__ */ ((CompletionKind2) => {
|
|
149160
149123
|
CompletionKind2[CompletionKind2["ObjectPropertyDeclaration"] = 0] = "ObjectPropertyDeclaration";
|
|
149161
149124
|
CompletionKind2[CompletionKind2["Global"] = 1] = "Global";
|
|
@@ -151088,9 +151051,9 @@ function convertStringLiteralCompletions(completion, contextToken, sourceFile, h
|
|
|
151088
151051
|
}
|
|
151089
151052
|
const optionalReplacementSpan = createTextSpanFromStringLiteralLikeContent(contextToken);
|
|
151090
151053
|
switch (completion.kind) {
|
|
151091
|
-
case
|
|
151054
|
+
case 0 /* Paths */:
|
|
151092
151055
|
return convertPathCompletions(completion.paths);
|
|
151093
|
-
case
|
|
151056
|
+
case 1 /* Properties */: {
|
|
151094
151057
|
const entries = createSortedArray();
|
|
151095
151058
|
getCompletionEntriesFromSymbols(
|
|
151096
151059
|
completion.symbols,
|
|
@@ -151112,7 +151075,7 @@ function convertStringLiteralCompletions(completion, contextToken, sourceFile, h
|
|
|
151112
151075
|
);
|
|
151113
151076
|
return { isGlobalCompletion: false, isMemberCompletion: true, isNewIdentifierLocation: completion.hasIndexSignature, optionalReplacementSpan, entries };
|
|
151114
151077
|
}
|
|
151115
|
-
case
|
|
151078
|
+
case 2 /* Types */: {
|
|
151116
151079
|
const entries = completion.types.map((type) => ({
|
|
151117
151080
|
name: type.value,
|
|
151118
151081
|
kindModifiers: "" /* none */,
|
|
@@ -151134,15 +151097,15 @@ function getStringLiteralCompletionDetails(name, sourceFile, position, contextTo
|
|
|
151134
151097
|
}
|
|
151135
151098
|
function stringLiteralCompletionDetails(name, location, completion, sourceFile, checker, cancellationToken) {
|
|
151136
151099
|
switch (completion.kind) {
|
|
151137
|
-
case
|
|
151100
|
+
case 0 /* Paths */: {
|
|
151138
151101
|
const match = find(completion.paths, (p) => p.name === name);
|
|
151139
151102
|
return match && createCompletionDetails(name, kindModifiersFromExtension(match.extension), match.kind, [textPart(name)]);
|
|
151140
151103
|
}
|
|
151141
|
-
case
|
|
151104
|
+
case 1 /* Properties */: {
|
|
151142
151105
|
const match = find(completion.symbols, (s) => s.name === name);
|
|
151143
151106
|
return match && createCompletionDetailsForSymbol(match, checker, sourceFile, location, cancellationToken);
|
|
151144
151107
|
}
|
|
151145
|
-
case
|
|
151108
|
+
case 2 /* Types */:
|
|
151146
151109
|
return find(completion.types, (t) => t.value === name) ? createCompletionDetails(name, "" /* none */, "string" /* string */, [textPart(name)]) : void 0;
|
|
151147
151110
|
default:
|
|
151148
151111
|
return Debug.assertNever(completion);
|
|
@@ -151188,12 +151151,6 @@ function kindModifiersFromExtension(extension) {
|
|
|
151188
151151
|
return Debug.assertNever(extension);
|
|
151189
151152
|
}
|
|
151190
151153
|
}
|
|
151191
|
-
var StringLiteralCompletionKind = /* @__PURE__ */ ((StringLiteralCompletionKind2) => {
|
|
151192
|
-
StringLiteralCompletionKind2[StringLiteralCompletionKind2["Paths"] = 0] = "Paths";
|
|
151193
|
-
StringLiteralCompletionKind2[StringLiteralCompletionKind2["Properties"] = 1] = "Properties";
|
|
151194
|
-
StringLiteralCompletionKind2[StringLiteralCompletionKind2["Types"] = 2] = "Types";
|
|
151195
|
-
return StringLiteralCompletionKind2;
|
|
151196
|
-
})(StringLiteralCompletionKind || {});
|
|
151197
151154
|
function getStringLiteralCompletionEntries(sourceFile, node, position, typeChecker, compilerOptions, host, preferences) {
|
|
151198
151155
|
const parent2 = walkUpParentheses(node.parent);
|
|
151199
151156
|
switch (parent2.kind) {
|
|
@@ -151350,7 +151307,7 @@ function getStringLiteralCompletionsFromModuleNamesWorker(sourceFile, node, comp
|
|
|
151350
151307
|
const mode = isStringLiteralLike(node) ? getModeForUsageLocation(sourceFile, node) : void 0;
|
|
151351
151308
|
const scriptPath = sourceFile.path;
|
|
151352
151309
|
const scriptDirectory = getDirectoryPath(scriptPath);
|
|
151353
|
-
const extensionOptions = getExtensionOptions(compilerOptions,
|
|
151310
|
+
const extensionOptions = getExtensionOptions(compilerOptions, 1 /* ModuleSpecifier */, sourceFile, typeChecker, preferences, mode);
|
|
151354
151311
|
return isPathRelativeToScript(literalValue) || !compilerOptions.baseUrl && (isRootedDiskPath(literalValue) || isUrl(literalValue)) ? getCompletionEntriesForRelativeModules(literalValue, scriptDirectory, compilerOptions, host, scriptPath, extensionOptions) : getCompletionEntriesForNonRelativeModules(literalValue, scriptDirectory, mode, compilerOptions, host, extensionOptions, typeChecker);
|
|
151355
151312
|
}
|
|
151356
151313
|
function getExtensionOptions(compilerOptions, referenceKind, importingSourceFile, typeChecker, preferences, resolutionMode) {
|
|
@@ -151422,11 +151379,6 @@ function getCompletionEntriesForDirectoryFragmentWithRootDirs(rootDirs, fragment
|
|
|
151422
151379
|
exclude
|
|
151423
151380
|
).values()));
|
|
151424
151381
|
}
|
|
151425
|
-
var ReferenceKind = /* @__PURE__ */ ((ReferenceKind2) => {
|
|
151426
|
-
ReferenceKind2[ReferenceKind2["Filename"] = 0] = "Filename";
|
|
151427
|
-
ReferenceKind2[ReferenceKind2["ModuleSpecifier"] = 1] = "ModuleSpecifier";
|
|
151428
|
-
return ReferenceKind2;
|
|
151429
|
-
})(ReferenceKind || {});
|
|
151430
151382
|
function getCompletionEntriesForDirectoryFragment(fragment, scriptDirectory, extensionOptions, host, moduleSpecifierIsRelative, exclude, result = createNameAndKindSet()) {
|
|
151431
151383
|
var _a2;
|
|
151432
151384
|
if (fragment === void 0) {
|
|
@@ -153196,7 +153148,7 @@ var Core;
|
|
|
153196
153148
|
) || originalSymbol;
|
|
153197
153149
|
const searchMeaning = node ? getIntersectingMeaningFromDeclarations(node, symbol) : 7 /* All */;
|
|
153198
153150
|
const result = [];
|
|
153199
|
-
const state = new State(sourceFiles, sourceFilesSet, node ? getSpecialSearchKind(node) :
|
|
153151
|
+
const state = new State(sourceFiles, sourceFilesSet, node ? getSpecialSearchKind(node) : 0 /* None */, checker, cancellationToken, searchMeaning, options, result);
|
|
153200
153152
|
const exportSpecifier = !isForRenameWithPrefixAndSuffixText(options) || !symbol.declarations ? void 0 : find(symbol.declarations, isExportSpecifier);
|
|
153201
153153
|
if (exportSpecifier) {
|
|
153202
153154
|
getReferencesAtExportSpecifier(
|
|
@@ -153252,14 +153204,14 @@ var Core;
|
|
|
153252
153204
|
switch (node.kind) {
|
|
153253
153205
|
case 173 /* Constructor */:
|
|
153254
153206
|
case 135 /* ConstructorKeyword */:
|
|
153255
|
-
return
|
|
153207
|
+
return 1 /* Constructor */;
|
|
153256
153208
|
case 79 /* Identifier */:
|
|
153257
153209
|
if (isClassLike(node.parent)) {
|
|
153258
153210
|
Debug.assert(node.parent.name === node);
|
|
153259
|
-
return
|
|
153211
|
+
return 2 /* Class */;
|
|
153260
153212
|
}
|
|
153261
153213
|
default:
|
|
153262
|
-
return
|
|
153214
|
+
return 0 /* None */;
|
|
153263
153215
|
}
|
|
153264
153216
|
}
|
|
153265
153217
|
function skipPastExportOrImportSpecifierOrUnion(symbol, node, checker, useLocalSymbolForExportSpecifier) {
|
|
@@ -160188,10 +160140,10 @@ function getPossibleExtractions(targetRange, context) {
|
|
|
160188
160140
|
const scopeDescription = isFunctionLikeDeclaration(scope) ? getDescriptionForFunctionLikeDeclaration(scope) : isClassLike(scope) ? getDescriptionForClassLikeDeclaration(scope) : getDescriptionForModuleLikeDeclaration(scope);
|
|
160189
160141
|
let functionDescription;
|
|
160190
160142
|
let constantDescription;
|
|
160191
|
-
if (scopeDescription ===
|
|
160143
|
+
if (scopeDescription === 1 /* Global */) {
|
|
160192
160144
|
functionDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [functionDescriptionPart, "global"]);
|
|
160193
160145
|
constantDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [constantDescriptionPart, "global"]);
|
|
160194
|
-
} else if (scopeDescription ===
|
|
160146
|
+
} else if (scopeDescription === 0 /* Module */) {
|
|
160195
160147
|
functionDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [functionDescriptionPart, "module"]);
|
|
160196
160148
|
constantDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [constantDescriptionPart, "module"]);
|
|
160197
160149
|
} else {
|
|
@@ -160257,13 +160209,8 @@ function getDescriptionForClassLikeDeclaration(scope) {
|
|
|
160257
160209
|
return scope.kind === 260 /* ClassDeclaration */ ? scope.name ? `class '${scope.name.text}'` : "anonymous class declaration" : scope.name ? `class expression '${scope.name.text}'` : "anonymous class expression";
|
|
160258
160210
|
}
|
|
160259
160211
|
function getDescriptionForModuleLikeDeclaration(scope) {
|
|
160260
|
-
return scope.kind === 265 /* ModuleBlock */ ? `namespace '${scope.parent.name.getText()}'` : scope.externalModuleIndicator ?
|
|
160212
|
+
return scope.kind === 265 /* ModuleBlock */ ? `namespace '${scope.parent.name.getText()}'` : scope.externalModuleIndicator ? 0 /* Module */ : 1 /* Global */;
|
|
160261
160213
|
}
|
|
160262
|
-
var SpecialScope = /* @__PURE__ */ ((SpecialScope2) => {
|
|
160263
|
-
SpecialScope2[SpecialScope2["Module"] = 0] = "Module";
|
|
160264
|
-
SpecialScope2[SpecialScope2["Global"] = 1] = "Global";
|
|
160265
|
-
return SpecialScope2;
|
|
160266
|
-
})(SpecialScope || {});
|
|
160267
160214
|
function extractFunctionInScope(node, scope, { usages: usagesInScope, typeParameterUsages, substitutions }, exposedVariableDeclarations, range, context) {
|
|
160268
160215
|
const checker = context.program.getTypeChecker();
|
|
160269
160216
|
const scriptTarget = getEmitScriptTarget(context.program.getCompilerOptions());
|
|
@@ -160295,7 +160242,7 @@ function extractFunctionInScope(node, scope, { usages: usagesInScope, typeParame
|
|
|
160295
160242
|
typeNode
|
|
160296
160243
|
);
|
|
160297
160244
|
parameters.push(paramDecl);
|
|
160298
|
-
if (usage.usage ===
|
|
160245
|
+
if (usage.usage === 2 /* Write */) {
|
|
160299
160246
|
(writes || (writes = [])).push(usage);
|
|
160300
160247
|
}
|
|
160301
160248
|
callArguments.push(factory.createIdentifier(name));
|
|
@@ -160947,11 +160894,6 @@ function isReadonlyArray(v) {
|
|
|
160947
160894
|
function getEnclosingTextRange(targetRange, sourceFile) {
|
|
160948
160895
|
return isReadonlyArray(targetRange.range) ? { pos: first(targetRange.range).getStart(sourceFile), end: last(targetRange.range).getEnd() } : targetRange.range;
|
|
160949
160896
|
}
|
|
160950
|
-
var Usage = /* @__PURE__ */ ((Usage2) => {
|
|
160951
|
-
Usage2[Usage2["Read"] = 1] = "Read";
|
|
160952
|
-
Usage2[Usage2["Write"] = 2] = "Write";
|
|
160953
|
-
return Usage2;
|
|
160954
|
-
})(Usage || {});
|
|
160955
160897
|
function collectReadsAndWrites(targetRange, scopes, enclosingTextRange, sourceFile, checker, cancellationToken) {
|
|
160956
160898
|
const allTypeParameterUsages = /* @__PURE__ */ new Map();
|
|
160957
160899
|
const usagesPerScope = [];
|
|
@@ -161600,13 +161542,8 @@ function getSignatureHelpItems(program, sourceFile, position, triggerReason, can
|
|
|
161600
161542
|
if (!candidateInfo) {
|
|
161601
161543
|
return isSourceFileJS(sourceFile) ? createJSSignatureHelpItems(argumentInfo, program, cancellationToken) : void 0;
|
|
161602
161544
|
}
|
|
161603
|
-
return typeChecker.runWithCancellationToken(cancellationToken, (typeChecker2) => candidateInfo.kind ===
|
|
161545
|
+
return typeChecker.runWithCancellationToken(cancellationToken, (typeChecker2) => candidateInfo.kind === 0 /* Candidate */ ? createSignatureHelpItems(candidateInfo.candidates, candidateInfo.resolvedSignature, argumentInfo, sourceFile, typeChecker2) : createTypeHelpItems(candidateInfo.symbol, argumentInfo, sourceFile, typeChecker2));
|
|
161604
161546
|
}
|
|
161605
|
-
var CandidateOrTypeKind = /* @__PURE__ */ ((CandidateOrTypeKind2) => {
|
|
161606
|
-
CandidateOrTypeKind2[CandidateOrTypeKind2["Candidate"] = 0] = "Candidate";
|
|
161607
|
-
CandidateOrTypeKind2[CandidateOrTypeKind2["Type"] = 1] = "Type";
|
|
161608
|
-
return CandidateOrTypeKind2;
|
|
161609
|
-
})(CandidateOrTypeKind || {});
|
|
161610
161547
|
function getCandidateOrTypeInfo({ invocation, argumentCount }, checker, sourceFile, startingToken, onlyUseSyntacticOwners) {
|
|
161611
161548
|
switch (invocation.kind) {
|
|
161612
161549
|
case 0 /* Call */: {
|
|
@@ -166017,7 +165954,7 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166017
165954
|
if (currentTokenInfo.leadingTrivia) {
|
|
166018
165955
|
processTrivia(currentTokenInfo.leadingTrivia, parent2, childContextNode, dynamicIndentation);
|
|
166019
165956
|
}
|
|
166020
|
-
let lineAction =
|
|
165957
|
+
let lineAction = 0 /* None */;
|
|
166021
165958
|
const isTokenInRange = rangeContainsRange(originalRange, currentTokenInfo.token);
|
|
166022
165959
|
const tokenStart = sourceFile.getLineAndCharacterOfPosition(currentTokenInfo.token.pos);
|
|
166023
165960
|
if (isTokenInRange) {
|
|
@@ -166025,11 +165962,11 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166025
165962
|
const savePreviousRange = previousRange;
|
|
166026
165963
|
lineAction = processRange(currentTokenInfo.token, tokenStart, parent2, childContextNode, dynamicIndentation);
|
|
166027
165964
|
if (!rangeHasError) {
|
|
166028
|
-
if (lineAction ===
|
|
165965
|
+
if (lineAction === 0 /* None */) {
|
|
166029
165966
|
const prevEndLine = savePreviousRange && sourceFile.getLineAndCharacterOfPosition(savePreviousRange.end).line;
|
|
166030
165967
|
indentToken = lastTriviaWasNewLine && tokenStart.line !== prevEndLine;
|
|
166031
165968
|
} else {
|
|
166032
|
-
indentToken = lineAction ===
|
|
165969
|
+
indentToken = lineAction === 1 /* LineAdded */;
|
|
166033
165970
|
}
|
|
166034
165971
|
}
|
|
166035
165972
|
}
|
|
@@ -166055,7 +165992,7 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166055
165992
|
);
|
|
166056
165993
|
}
|
|
166057
165994
|
if (tokenIndentation !== -1 /* Unknown */ && indentNextTokenOrTrivia) {
|
|
166058
|
-
insertIndentation(currentTokenInfo.token.pos, tokenIndentation, lineAction ===
|
|
165995
|
+
insertIndentation(currentTokenInfo.token.pos, tokenIndentation, lineAction === 1 /* LineAdded */);
|
|
166059
165996
|
lastIndentedLine = tokenStart.line;
|
|
166060
165997
|
indentationOnLastIndentedLine = tokenIndentation;
|
|
166061
165998
|
}
|
|
@@ -166102,7 +166039,7 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166102
166039
|
}
|
|
166103
166040
|
function processRange(range, rangeStart, parent2, contextNode, dynamicIndentation) {
|
|
166104
166041
|
const rangeHasError = rangeContainsError(range);
|
|
166105
|
-
let lineAction =
|
|
166042
|
+
let lineAction = 0 /* None */;
|
|
166106
166043
|
if (!rangeHasError) {
|
|
166107
166044
|
if (!previousRange) {
|
|
166108
166045
|
const originalStart = sourceFile.getLineAndCharacterOfPosition(originalRange.pos);
|
|
@@ -166121,13 +166058,13 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166121
166058
|
formattingContext.updateContext(previousItem, previousParent2, currentItem, currentParent, contextNode);
|
|
166122
166059
|
const rules = getRules(formattingContext);
|
|
166123
166060
|
let trimTrailingWhitespaces = formattingContext.options.trimTrailingWhitespace !== false;
|
|
166124
|
-
let lineAction =
|
|
166061
|
+
let lineAction = 0 /* None */;
|
|
166125
166062
|
if (rules) {
|
|
166126
166063
|
forEachRight(rules, (rule2) => {
|
|
166127
166064
|
lineAction = applyRuleEdits(rule2, previousItem, previousStartLine, currentItem, currentStartLine);
|
|
166128
166065
|
if (dynamicIndentation) {
|
|
166129
166066
|
switch (lineAction) {
|
|
166130
|
-
case
|
|
166067
|
+
case 2 /* LineRemoved */:
|
|
166131
166068
|
if (currentParent.getStart(sourceFile) === currentItem.pos) {
|
|
166132
166069
|
dynamicIndentation.recomputeIndentation(
|
|
166133
166070
|
/*lineAddedByFormatting*/
|
|
@@ -166136,7 +166073,7 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166136
166073
|
);
|
|
166137
166074
|
}
|
|
166138
166075
|
break;
|
|
166139
|
-
case
|
|
166076
|
+
case 1 /* LineAdded */:
|
|
166140
166077
|
if (currentParent.getStart(sourceFile) === currentItem.pos) {
|
|
166141
166078
|
dynamicIndentation.recomputeIndentation(
|
|
166142
166079
|
/*lineAddedByFormatting*/
|
|
@@ -166146,7 +166083,7 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166146
166083
|
}
|
|
166147
166084
|
break;
|
|
166148
166085
|
default:
|
|
166149
|
-
Debug.assert(lineAction ===
|
|
166086
|
+
Debug.assert(lineAction === 0 /* None */);
|
|
166150
166087
|
}
|
|
166151
166088
|
}
|
|
166152
166089
|
trimTrailingWhitespaces = trimTrailingWhitespaces && !(rule2.action & 16 /* DeleteSpace */) && rule2.flags !== 1 /* CanDeleteNewLines */;
|
|
@@ -166293,11 +166230,11 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166293
166230
|
const onLaterLine = currentStartLine !== previousStartLine;
|
|
166294
166231
|
switch (rule2.action) {
|
|
166295
166232
|
case 1 /* StopProcessingSpaceActions */:
|
|
166296
|
-
return
|
|
166233
|
+
return 0 /* None */;
|
|
166297
166234
|
case 16 /* DeleteSpace */:
|
|
166298
166235
|
if (previousRange2.end !== currentRange.pos) {
|
|
166299
166236
|
recordDelete(previousRange2.end, currentRange.pos - previousRange2.end);
|
|
166300
|
-
return onLaterLine ?
|
|
166237
|
+
return onLaterLine ? 2 /* LineRemoved */ : 0 /* None */;
|
|
166301
166238
|
}
|
|
166302
166239
|
break;
|
|
166303
166240
|
case 32 /* DeleteToken */:
|
|
@@ -166305,36 +166242,30 @@ function formatSpanWorker(originalRange, enclosingNode, initialIndentation, delt
|
|
|
166305
166242
|
break;
|
|
166306
166243
|
case 8 /* InsertNewLine */:
|
|
166307
166244
|
if (rule2.flags !== 1 /* CanDeleteNewLines */ && previousStartLine !== currentStartLine) {
|
|
166308
|
-
return
|
|
166245
|
+
return 0 /* None */;
|
|
166309
166246
|
}
|
|
166310
166247
|
const lineDelta = currentStartLine - previousStartLine;
|
|
166311
166248
|
if (lineDelta !== 1) {
|
|
166312
166249
|
recordReplace(previousRange2.end, currentRange.pos - previousRange2.end, getNewLineOrDefaultFromHost(host, options));
|
|
166313
|
-
return onLaterLine ?
|
|
166250
|
+
return onLaterLine ? 0 /* None */ : 1 /* LineAdded */;
|
|
166314
166251
|
}
|
|
166315
166252
|
break;
|
|
166316
166253
|
case 4 /* InsertSpace */:
|
|
166317
166254
|
if (rule2.flags !== 1 /* CanDeleteNewLines */ && previousStartLine !== currentStartLine) {
|
|
166318
|
-
return
|
|
166255
|
+
return 0 /* None */;
|
|
166319
166256
|
}
|
|
166320
166257
|
const posDelta = currentRange.pos - previousRange2.end;
|
|
166321
166258
|
if (posDelta !== 1 || sourceFile.text.charCodeAt(previousRange2.end) !== 32 /* space */) {
|
|
166322
166259
|
recordReplace(previousRange2.end, currentRange.pos - previousRange2.end, " ");
|
|
166323
|
-
return onLaterLine ?
|
|
166260
|
+
return onLaterLine ? 2 /* LineRemoved */ : 0 /* None */;
|
|
166324
166261
|
}
|
|
166325
166262
|
break;
|
|
166326
166263
|
case 64 /* InsertTrailingSemicolon */:
|
|
166327
166264
|
recordInsert(previousRange2.end, ";");
|
|
166328
166265
|
}
|
|
166329
|
-
return
|
|
166266
|
+
return 0 /* None */;
|
|
166330
166267
|
}
|
|
166331
166268
|
}
|
|
166332
|
-
var LineAction = /* @__PURE__ */ ((LineAction2) => {
|
|
166333
|
-
LineAction2[LineAction2["None"] = 0] = "None";
|
|
166334
|
-
LineAction2[LineAction2["LineAdded"] = 1] = "LineAdded";
|
|
166335
|
-
LineAction2[LineAction2["LineRemoved"] = 2] = "LineRemoved";
|
|
166336
|
-
return LineAction2;
|
|
166337
|
-
})(LineAction || {});
|
|
166338
166269
|
function getRangeOfEnclosingComment(sourceFile, position, precedingToken, tokenAtPosition = getTokenAtPosition(sourceFile, position)) {
|
|
166339
166270
|
const jsdoc = findAncestor(tokenAtPosition, isJSDoc);
|
|
166340
166271
|
if (jsdoc)
|
|
@@ -166557,7 +166488,7 @@ var SmartIndenter;
|
|
|
166557
166488
|
)) {
|
|
166558
166489
|
const currentStart = getStartLineAndCharacterForNode(current, sourceFile);
|
|
166559
166490
|
const nextTokenKind = nextTokenIsCurlyBraceOnSameLineAsCursor(precedingToken, current, lineAtPosition, sourceFile);
|
|
166560
|
-
const indentationDelta = nextTokenKind !==
|
|
166491
|
+
const indentationDelta = nextTokenKind !== 0 /* Unknown */ ? assumeNewLineBeforeCloseBrace && nextTokenKind === 2 /* CloseBrace */ ? options.indentSize : 0 : lineAtPosition !== currentStart.line ? options.indentSize : 0;
|
|
166561
166492
|
return getIndentationForNodeWorker(
|
|
166562
166493
|
current,
|
|
166563
166494
|
currentStart,
|