Skip to content

Commit 6a984e9

Browse files
DanielRosenwassermrcrane
authored andcommitted
Update LKG.
1 parent 6a24222 commit 6a984e9

10 files changed

+173
-118
lines changed

lib/protocol.d.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -844,10 +844,6 @@ declare namespace ts.server.protocol {
844844
* If set, `getEditsForFileRename` should be called instead of `findRenameLocations`.
845845
*/
846846
fileToRename?: string;
847-
/**
848-
* Error message if item can not be renamed.
849-
*/
850-
fileToRename?: string;
851847
/**
852848
* Display name of the item to be renamed.
853849
*/
@@ -867,6 +863,13 @@ declare namespace ts.server.protocol {
867863
/** Span of text to rename. */
868864
triggerSpan: TextSpan;
869865
}
866+
interface RenameInfoFailure {
867+
canRename: false;
868+
/**
869+
* Error message if item can not be renamed.
870+
*/
871+
localizedErrorMessage: string;
872+
}
870873
/**
871874
* A group of text spans, all in 'file'.
872875
*/

lib/tsc.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
6060
var ts;
6161
(function (ts) {
6262
ts.versionMajorMinor = "3.1";
63-
ts.version = ts.versionMajorMinor + ".2";
63+
ts.version = ts.versionMajorMinor + ".3";
6464
})(ts || (ts = {}));
6565
(function (ts) {
6666
ts.emptyArray = [];

lib/tsserver.js

Lines changed: 41 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ var ts;
8585
// If changing the text in this section, be sure to test `configureNightly` too.
8686
ts.versionMajorMinor = "3.4";
8787
/** The version of the TypeScript compiler release */
88-
ts.version = ts.versionMajorMinor + ".2";
88+
ts.version = ts.versionMajorMinor + ".3";
8989
})(ts || (ts = {}));
9090
(function (ts) {
9191
/* @internal */
@@ -98842,7 +98842,7 @@ var ts;
9884298842
if (resolvedModuleSymbol !== moduleSymbol &&
9884398843
// Don't add another completion for `export =` of a symbol that's already global.
9884498844
// So in `declare namespace foo {} declare module "foo" { export = foo; }`, there will just be the global completion for `foo`.
98845-
resolvedModuleSymbol.declarations.some(function (d) { return !!d.getSourceFile().externalModuleIndicator; })) {
98845+
ts.some(resolvedModuleSymbol.declarations, function (d) { return !!d.getSourceFile().externalModuleIndicator; })) {
9884698846
symbols.push(resolvedModuleSymbol);
9884798847
symbolToOriginInfoMap[ts.getSymbolId(resolvedModuleSymbol)] = { kind: 3 /* Export */, moduleSymbol: moduleSymbol, isDefaultExport: false };
9884898848
}
@@ -105433,7 +105433,6 @@ var ts;
105433105433
fileToRename: name,
105434105434
kind: kind,
105435105435
displayName: name,
105436-
localizedErrorMessage: undefined,
105437105436
fullDisplayName: name,
105438105437
kindModifiers: "" /* none */,
105439105438
triggerSpan: triggerSpan,
@@ -109926,6 +109925,14 @@ var ts;
109926109925
var pos = before.modifiers.end;
109927109926
this.insertNodeAt(sourceFile, pos, ts.createToken(modifier), { prefix: " " });
109928109927
};
109928+
ChangeTracker.prototype.insertLastModifierBefore = function (sourceFile, modifier, before) {
109929+
if (!before.modifiers) {
109930+
this.insertModifierBefore(sourceFile, modifier, before);
109931+
return;
109932+
}
109933+
var pos = before.modifiers.end;
109934+
this.replaceRange(sourceFile, { pos: pos, end: pos }, ts.createToken(modifier), { prefix: " " });
109935+
};
109929109936
ChangeTracker.prototype.insertCommentBeforeLine = function (sourceFile, lineNumber, position, commentText) {
109930109937
var lineStartPosition = ts.getStartPositionOfLine(lineNumber, sourceFile);
109931109938
var startPosition = ts.getFirstNonSpaceCharacterPosition(sourceFile.text, lineStartPosition);
@@ -112108,7 +112115,7 @@ var ts;
112108112115
return;
112109112116
}
112110112117
// add the async keyword
112111-
changes.insertLastModifierBefore(sourceFile, 121 /* AsyncKeyword */, functionToConvert);
112118+
changes.insertLastModifierBefore(sourceFile, 120 /* AsyncKeyword */, functionToConvert);
112112112119
function startTransformation(node, nodeToReplace) {
112113112120
var newNodes = transformExpression(node, transformer, node);
112114112121
changes.replaceNodeWithNodes(sourceFile, nodeToReplace, newNodes);
@@ -112276,7 +112283,7 @@ var ts;
112276112283
}
112277112284
}
112278112285
function getNewNameIfConflict(name, originalNames) {
112279-
var numVarsSameName = (originalNames.get(name.text) || []).length;
112286+
var numVarsSameName = (originalNames.get(name.text) || ts.emptyArray).length;
112280112287
var numberOfAssignmentsOriginal = 0;
112281112288
var identifier = numVarsSameName === 0 ? name : ts.createIdentifier(name.text + "_" + numVarsSameName);
112282112289
return { identifier: identifier, types: [], numberOfAssignmentsOriginal: numberOfAssignmentsOriginal };
@@ -112302,7 +112309,7 @@ var ts;
112302112309
return transformPromiseCall(node, transformer, prevArgName);
112303112310
}
112304112311
codeActionSucceeded = false;
112305-
return [];
112312+
return ts.emptyArray;
112306112313
}
112307112314
function transformCatch(node, transformer, prevArgName) {
112308112315
var func = node.arguments[0];
@@ -112385,11 +112392,11 @@ var ts;
112385112392
function createTransformedStatement(prevArgName, rightHandSide, transformer) {
112386112393
if (!prevArgName || prevArgName.identifier.text.length === 0) {
112387112394
// if there's no argName to assign to, there still might be side effects
112388-
return ts.createNodeArray([ts.createStatement(rightHandSide)]);
112395+
return [ts.createStatement(rightHandSide)];
112389112396
}
112390112397
if (prevArgName.types.length < prevArgName.numberOfAssignmentsOriginal) {
112391112398
// if the variable has already been declared, we don't need "let" or "const"
112392-
return ts.createNodeArray([ts.createStatement(ts.createAssignment(ts.getSynthesizedDeepClone(prevArgName.identifier), rightHandSide))]);
112399+
return [ts.createStatement(ts.createAssignment(ts.getSynthesizedDeepClone(prevArgName.identifier), rightHandSide))];
112393112400
}
112394112401
return [ts.createVariableStatement(/*modifiers*/ undefined, (ts.createVariableDeclarationList([ts.createVariableDeclaration(ts.getSynthesizedDeepClone(prevArgName.identifier), /*type*/ undefined, rightHandSide)], getFlagOfIdentifier(prevArgName.identifier, transformer.constIdentifiers))))];
112395112402
}
@@ -112405,7 +112412,7 @@ var ts;
112405112412
// undefined was argument passed to promise handler
112406112413
break;
112407112414
}
112408-
var synthCall = ts.createCall(ts.getSynthesizedDeepClone(func), /*typeArguments*/ undefined, argName ? [argName.identifier] : []);
112415+
var synthCall = ts.createCall(ts.getSynthesizedDeepClone(func), /*typeArguments*/ undefined, argName ? [argName.identifier] : ts.emptyArray);
112409112416
if (shouldReturn) {
112410112417
return [ts.createReturn(synthCall)];
112411112418
}
@@ -112441,14 +112448,14 @@ var ts;
112441112448
refactoredStmts.push(statement);
112442112449
}
112443112450
}
112444-
return shouldReturn ? ts.getSynthesizedDeepClones(ts.createNodeArray(refactoredStmts)) :
112445-
removeReturns(ts.createNodeArray(refactoredStmts), prevArgName.identifier, transformer, seenReturnStatement);
112451+
return shouldReturn ? refactoredStmts.map(function (s) { return ts.getSynthesizedDeepClone(s); }) :
112452+
removeReturns(refactoredStmts, prevArgName === undefined ? undefined : prevArgName.identifier, transformer, seenReturnStatement);
112446112453
}
112447112454
else {
112448112455
var innerRetStmts = ts.getReturnStatementsWithPromiseHandlers(ts.createReturn(funcBody));
112449112456
var innerCbBody = getInnerTransformationBody(transformer, innerRetStmts, prevArgName);
112450112457
if (innerCbBody.length > 0) {
112451-
return ts.createNodeArray(innerCbBody);
112458+
return innerCbBody;
112452112459
}
112453112460
if (!shouldReturn) {
112454112461
var type_1 = transformer.checker.getTypeAtLocation(func);
@@ -112462,7 +112469,7 @@ var ts;
112462112469
return transformedStatement;
112463112470
}
112464112471
else {
112465-
return [ts.createReturn(possiblyAwaitedRightHandSide)];
112472+
return [ts.createReturn(ts.getSynthesizedDeepClone(funcBody))];
112466112473
}
112467112474
}
112468112475
}
@@ -112484,18 +112491,23 @@ var ts;
112484112491
if (ts.isReturnStatement(stmt)) {
112485112492
if (stmt.expression) {
112486112493
var possiblyAwaitedExpression = isPromiseReturningExpression(stmt.expression, transformer.checker) ? ts.createAwait(stmt.expression) : stmt.expression;
112487-
ret.push(ts.createVariableStatement(/*modifiers*/ undefined, (ts.createVariableDeclarationList([ts.createVariableDeclaration(prevArgName, /*type*/ undefined, possiblyAwaitedExpression)], getFlagOfIdentifier(prevArgName, transformer.constIdentifiers)))));
112494+
if (prevArgName === undefined) {
112495+
ret.push(ts.createExpressionStatement(possiblyAwaitedExpression));
112496+
}
112497+
else {
112498+
ret.push(ts.createVariableStatement(/*modifiers*/ undefined, (ts.createVariableDeclarationList([ts.createVariableDeclaration(prevArgName, /*type*/ undefined, possiblyAwaitedExpression)], getFlagOfIdentifier(prevArgName, transformer.constIdentifiers)))));
112499+
}
112488112500
}
112489112501
}
112490112502
else {
112491112503
ret.push(ts.getSynthesizedDeepClone(stmt));
112492112504
}
112493112505
}
112494112506
// if block has no return statement, need to define prevArgName as undefined to prevent undeclared variables
112495-
if (!seenReturnStatement) {
112507+
if (!seenReturnStatement && prevArgName !== undefined) {
112496112508
ret.push(ts.createVariableStatement(/*modifiers*/ undefined, (ts.createVariableDeclarationList([ts.createVariableDeclaration(prevArgName, /*type*/ undefined, ts.createIdentifier("undefined"))], getFlagOfIdentifier(prevArgName, transformer.constIdentifiers)))));
112497112509
}
112498-
return ts.createNodeArray(ret);
112510+
return ret;
112499112511
}
112500112512
function getInnerTransformationBody(transformer, innerRetStmts, prevArgName) {
112501112513
var innerCbBody = [];
@@ -113236,19 +113248,19 @@ var ts;
113236113248
}
113237113249
var defaultInfo = getDefaultLikeExportInfo(moduleSymbol, checker, compilerOptions);
113238113250
if (defaultInfo && defaultInfo.name === symbolName && ts.skipAlias(defaultInfo.symbol, checker) === exportedSymbol) {
113239-
result.push({ moduleSymbol: moduleSymbol, importKind: defaultInfo.kind, exportedSymbolIsTypeOnly: isTypeOnlySymbol(defaultInfo.symbol) });
113251+
result.push({ moduleSymbol: moduleSymbol, importKind: defaultInfo.kind, exportedSymbolIsTypeOnly: isTypeOnlySymbol(defaultInfo.symbol, checker) });
113240113252
}
113241113253
for (var _i = 0, _a = checker.getExportsOfModule(moduleSymbol); _i < _a.length; _i++) {
113242113254
var exported = _a[_i];
113243113255
if (exported.name === symbolName && ts.skipAlias(exported, checker) === exportedSymbol) {
113244-
result.push({ moduleSymbol: moduleSymbol, importKind: 0 /* Named */, exportedSymbolIsTypeOnly: isTypeOnlySymbol(exported) });
113256+
result.push({ moduleSymbol: moduleSymbol, importKind: 0 /* Named */, exportedSymbolIsTypeOnly: isTypeOnlySymbol(exported, checker) });
113245113257
}
113246113258
}
113247113259
});
113248113260
return result;
113249113261
}
113250-
function isTypeOnlySymbol(s) {
113251-
return !(s.flags & 67220415 /* Value */);
113262+
function isTypeOnlySymbol(s, checker) {
113263+
return !(ts.skipAlias(s, checker).flags & 67220415 /* Value */);
113252113264
}
113253113265
function getFixForImport(exportInfos, symbolName, position, program, sourceFile, host, preferences) {
113254113266
var checker = program.getTypeChecker();
@@ -113438,7 +113450,7 @@ var ts;
113438113450
return undefined;
113439113451
var symbol = exported.symbol, kind = exported.kind;
113440113452
var info = getDefaultExportInfoWorker(symbol, moduleSymbol, checker, compilerOptions);
113441-
return info && { symbol: symbol, symbolForMeaning: info.symbolForMeaning, name: info.name, kind: kind };
113453+
return info && __assign({ symbol: symbol, kind: kind }, info);
113442113454
}
113443113455
function getDefaultLikeExportWorker(moduleSymbol, checker) {
113444113456
var defaultExport = checker.tryGetMemberInModuleExports("default" /* Default */, moduleSymbol);
@@ -129467,9 +129479,14 @@ var ts;
129467129479
var renameInfo = this.mapRenameInfo(defaultProject.getLanguageService().getRenameInfo(file, position), ts.Debug.assertDefined(this.projectService.getScriptInfo(file)));
129468129480
return { info: renameInfo, locs: this.toSpanGroups(locations) };
129469129481
};
129470-
Session.prototype.mapRenameInfo = function (_a, scriptInfo) {
129471-
var canRename = _a.canRename, fileToRename = _a.fileToRename, localizedErrorMessage = _a.localizedErrorMessage, displayName = _a.displayName, fullDisplayName = _a.fullDisplayName, kind = _a.kind, kindModifiers = _a.kindModifiers, triggerSpan = _a.triggerSpan;
129472-
return { canRename: canRename, fileToRename: fileToRename, localizedErrorMessage: localizedErrorMessage, displayName: displayName, fullDisplayName: fullDisplayName, kind: kind, kindModifiers: kindModifiers, triggerSpan: this.toLocationTextSpan(triggerSpan, scriptInfo) };
129482+
Session.prototype.mapRenameInfo = function (info, scriptInfo) {
129483+
if (info.canRename) {
129484+
var canRename = info.canRename, fileToRename = info.fileToRename, displayName = info.displayName, fullDisplayName = info.fullDisplayName, kind = info.kind, kindModifiers = info.kindModifiers, triggerSpan = info.triggerSpan;
129485+
return ts.identity({ canRename: canRename, fileToRename: fileToRename, displayName: displayName, fullDisplayName: fullDisplayName, kind: kind, kindModifiers: kindModifiers, triggerSpan: this.toLocationTextSpan(triggerSpan, scriptInfo) });
129486+
}
129487+
else {
129488+
return info;
129489+
}
129473129490
};
129474129491
Session.prototype.toSpanGroups = function (locations) {
129475129492
var map = ts.createMap();

lib/tsserverlibrary.d.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5210,14 +5210,14 @@ declare namespace ts {
52105210
documentation?: SymbolDisplayPart[];
52115211
tags?: JSDocTagInfo[];
52125212
}
5213-
interface RenameInfo {
5214-
canRename: boolean;
5213+
type RenameInfo = RenameInfoSuccess | RenameInfoFailure;
5214+
interface RenameInfoSuccess {
5215+
canRename: true;
52155216
/**
52165217
* File or directory to rename.
52175218
* If set, `getEditsForFileRename` should be called instead of `findRenameLocations`.
52185219
*/
52195220
fileToRename?: string;
5220-
localizedErrorMessage?: string;
52215221
displayName: string;
52225222
fullDisplayName: string;
52235223
kind: ScriptElementKind;
@@ -5228,9 +5228,6 @@ declare namespace ts {
52285228
canRename: false;
52295229
localizedErrorMessage: string;
52305230
}
5231-
interface RenameInfoOptions {
5232-
readonly allowRenameOfImportPath?: boolean;
5233-
}
52345231
interface SignatureHelpParameter {
52355232
name: string;
52365233
documentation: SymbolDisplayPart[];
@@ -6569,10 +6566,6 @@ declare namespace ts.server.protocol {
65696566
* If set, `getEditsForFileRename` should be called instead of `findRenameLocations`.
65706567
*/
65716568
fileToRename?: string;
6572-
/**
6573-
* Error message if item can not be renamed.
6574-
*/
6575-
fileToRename?: string;
65766569
/**
65776570
* Display name of the item to be renamed.
65786571
*/
@@ -6592,6 +6585,13 @@ declare namespace ts.server.protocol {
65926585
/** Span of text to rename. */
65936586
triggerSpan: TextSpan;
65946587
}
6588+
interface RenameInfoFailure {
6589+
canRename: false;
6590+
/**
6591+
* Error message if item can not be renamed.
6592+
*/
6593+
localizedErrorMessage: string;
6594+
}
65956595
/**
65966596
* A group of text spans, all in 'file'.
65976597
*/

0 commit comments

Comments
 (0)