@@ -85,7 +85,7 @@ var ts;
85
85
// If changing the text in this section, be sure to test `configureNightly` too.
86
86
ts.versionMajorMinor = "3.4";
87
87
/** The version of the TypeScript compiler release */
88
- ts.version = ts.versionMajorMinor + ".2 ";
88
+ ts.version = ts.versionMajorMinor + ".3 ";
89
89
})(ts || (ts = {}));
90
90
(function (ts) {
91
91
/* @internal */
@@ -98842,7 +98842,7 @@ var ts;
98842
98842
if (resolvedModuleSymbol !== moduleSymbol &&
98843
98843
// Don't add another completion for `export =` of a symbol that's already global.
98844
98844
// 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; })) {
98846
98846
symbols.push(resolvedModuleSymbol);
98847
98847
symbolToOriginInfoMap[ts.getSymbolId(resolvedModuleSymbol)] = { kind: 3 /* Export */, moduleSymbol: moduleSymbol, isDefaultExport: false };
98848
98848
}
@@ -105433,7 +105433,6 @@ var ts;
105433
105433
fileToRename: name,
105434
105434
kind: kind,
105435
105435
displayName: name,
105436
- localizedErrorMessage: undefined,
105437
105436
fullDisplayName: name,
105438
105437
kindModifiers: "" /* none */,
105439
105438
triggerSpan: triggerSpan,
@@ -109926,6 +109925,14 @@ var ts;
109926
109925
var pos = before.modifiers.end;
109927
109926
this.insertNodeAt(sourceFile, pos, ts.createToken(modifier), { prefix: " " });
109928
109927
};
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
+ };
109929
109936
ChangeTracker.prototype.insertCommentBeforeLine = function (sourceFile, lineNumber, position, commentText) {
109930
109937
var lineStartPosition = ts.getStartPositionOfLine(lineNumber, sourceFile);
109931
109938
var startPosition = ts.getFirstNonSpaceCharacterPosition(sourceFile.text, lineStartPosition);
@@ -112108,7 +112115,7 @@ var ts;
112108
112115
return;
112109
112116
}
112110
112117
// add the async keyword
112111
- changes.insertLastModifierBefore(sourceFile, 121 /* AsyncKeyword */, functionToConvert);
112118
+ changes.insertLastModifierBefore(sourceFile, 120 /* AsyncKeyword */, functionToConvert);
112112
112119
function startTransformation(node, nodeToReplace) {
112113
112120
var newNodes = transformExpression(node, transformer, node);
112114
112121
changes.replaceNodeWithNodes(sourceFile, nodeToReplace, newNodes);
@@ -112276,7 +112283,7 @@ var ts;
112276
112283
}
112277
112284
}
112278
112285
function getNewNameIfConflict(name, originalNames) {
112279
- var numVarsSameName = (originalNames.get(name.text) || [] ).length;
112286
+ var numVarsSameName = (originalNames.get(name.text) || ts.emptyArray ).length;
112280
112287
var numberOfAssignmentsOriginal = 0;
112281
112288
var identifier = numVarsSameName === 0 ? name : ts.createIdentifier(name.text + "_" + numVarsSameName);
112282
112289
return { identifier: identifier, types: [], numberOfAssignmentsOriginal: numberOfAssignmentsOriginal };
@@ -112302,7 +112309,7 @@ var ts;
112302
112309
return transformPromiseCall(node, transformer, prevArgName);
112303
112310
}
112304
112311
codeActionSucceeded = false;
112305
- return [] ;
112312
+ return ts.emptyArray ;
112306
112313
}
112307
112314
function transformCatch(node, transformer, prevArgName) {
112308
112315
var func = node.arguments[0];
@@ -112385,11 +112392,11 @@ var ts;
112385
112392
function createTransformedStatement(prevArgName, rightHandSide, transformer) {
112386
112393
if (!prevArgName || prevArgName.identifier.text.length === 0) {
112387
112394
// 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)];
112389
112396
}
112390
112397
if (prevArgName.types.length < prevArgName.numberOfAssignmentsOriginal) {
112391
112398
// 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))];
112393
112400
}
112394
112401
return [ts.createVariableStatement(/*modifiers*/ undefined, (ts.createVariableDeclarationList([ts.createVariableDeclaration(ts.getSynthesizedDeepClone(prevArgName.identifier), /*type*/ undefined, rightHandSide)], getFlagOfIdentifier(prevArgName.identifier, transformer.constIdentifiers))))];
112395
112402
}
@@ -112405,7 +112412,7 @@ var ts;
112405
112412
// undefined was argument passed to promise handler
112406
112413
break;
112407
112414
}
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 );
112409
112416
if (shouldReturn) {
112410
112417
return [ts.createReturn(synthCall)];
112411
112418
}
@@ -112441,14 +112448,14 @@ var ts;
112441
112448
refactoredStmts.push(statement);
112442
112449
}
112443
112450
}
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);
112446
112453
}
112447
112454
else {
112448
112455
var innerRetStmts = ts.getReturnStatementsWithPromiseHandlers(ts.createReturn(funcBody));
112449
112456
var innerCbBody = getInnerTransformationBody(transformer, innerRetStmts, prevArgName);
112450
112457
if (innerCbBody.length > 0) {
112451
- return ts.createNodeArray( innerCbBody) ;
112458
+ return innerCbBody;
112452
112459
}
112453
112460
if (!shouldReturn) {
112454
112461
var type_1 = transformer.checker.getTypeAtLocation(func);
@@ -112462,7 +112469,7 @@ var ts;
112462
112469
return transformedStatement;
112463
112470
}
112464
112471
else {
112465
- return [ts.createReturn(possiblyAwaitedRightHandSide )];
112472
+ return [ts.createReturn(ts.getSynthesizedDeepClone(funcBody) )];
112466
112473
}
112467
112474
}
112468
112475
}
@@ -112484,18 +112491,23 @@ var ts;
112484
112491
if (ts.isReturnStatement(stmt)) {
112485
112492
if (stmt.expression) {
112486
112493
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
+ }
112488
112500
}
112489
112501
}
112490
112502
else {
112491
112503
ret.push(ts.getSynthesizedDeepClone(stmt));
112492
112504
}
112493
112505
}
112494
112506
// if block has no return statement, need to define prevArgName as undefined to prevent undeclared variables
112495
- if (!seenReturnStatement) {
112507
+ if (!seenReturnStatement && prevArgName !== undefined ) {
112496
112508
ret.push(ts.createVariableStatement(/*modifiers*/ undefined, (ts.createVariableDeclarationList([ts.createVariableDeclaration(prevArgName, /*type*/ undefined, ts.createIdentifier("undefined"))], getFlagOfIdentifier(prevArgName, transformer.constIdentifiers)))));
112497
112509
}
112498
- return ts.createNodeArray( ret) ;
112510
+ return ret;
112499
112511
}
112500
112512
function getInnerTransformationBody(transformer, innerRetStmts, prevArgName) {
112501
112513
var innerCbBody = [];
@@ -113236,19 +113248,19 @@ var ts;
113236
113248
}
113237
113249
var defaultInfo = getDefaultLikeExportInfo(moduleSymbol, checker, compilerOptions);
113238
113250
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 ) });
113240
113252
}
113241
113253
for (var _i = 0, _a = checker.getExportsOfModule(moduleSymbol); _i < _a.length; _i++) {
113242
113254
var exported = _a[_i];
113243
113255
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 ) });
113245
113257
}
113246
113258
}
113247
113259
});
113248
113260
return result;
113249
113261
}
113250
- function isTypeOnlySymbol(s) {
113251
- return !(s .flags & 67220415 /* Value */);
113262
+ function isTypeOnlySymbol(s, checker ) {
113263
+ return !(ts.skipAlias(s, checker) .flags & 67220415 /* Value */);
113252
113264
}
113253
113265
function getFixForImport(exportInfos, symbolName, position, program, sourceFile, host, preferences) {
113254
113266
var checker = program.getTypeChecker();
@@ -113438,7 +113450,7 @@ var ts;
113438
113450
return undefined;
113439
113451
var symbol = exported.symbol, kind = exported.kind;
113440
113452
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) ;
113442
113454
}
113443
113455
function getDefaultLikeExportWorker(moduleSymbol, checker) {
113444
113456
var defaultExport = checker.tryGetMemberInModuleExports("default" /* Default */, moduleSymbol);
@@ -129467,9 +129479,14 @@ var ts;
129467
129479
var renameInfo = this.mapRenameInfo(defaultProject.getLanguageService().getRenameInfo(file, position), ts.Debug.assertDefined(this.projectService.getScriptInfo(file)));
129468
129480
return { info: renameInfo, locs: this.toSpanGroups(locations) };
129469
129481
};
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
+ }
129473
129490
};
129474
129491
Session.prototype.toSpanGroups = function (locations) {
129475
129492
var map = ts.createMap();
0 commit comments