diff --git a/src/services/codefixes/changeExtendsToImplementsFix.ts b/src/services/codefixes/changeExtendsToImplementsFix.ts index 9dea26200e..ebe277eb41 100644 --- a/src/services/codefixes/changeExtendsToImplementsFix.ts +++ b/src/services/codefixes/changeExtendsToImplementsFix.ts @@ -11,9 +11,13 @@ namespace ts.codefix { if (token.kind === SyntaxKind.Identifier && token.parent.parent.kind === SyntaxKind.HeritageClause) { const children = (token.parent.parent).getChildren(); - var hasImplements: boolean = ts.forEach(children, child => child.kind === SyntaxKind.ImplementsKeyword); - - var childInterfaces = children.filter(child => child.kind === SyntaxKind.InterfaceDeclaration) + // If there is already an implements keyword, we currently have incorrect behavior. + // For now, we suppress the quickfix altogether. + /* + if(ts.forEach(children, child => child.kind === SyntaxKind.ImplementsKeyword)) { + return undefined; + } + */ ts.forEach(children, child => { if (child.kind === SyntaxKind.ExtendsKeyword) { diff --git a/src/services/codefixes/interfaceFixes.ts b/src/services/codefixes/interfaceFixes.ts index e4de977a77..c379884ab5 100644 --- a/src/services/codefixes/interfaceFixes.ts +++ b/src/services/codefixes/interfaceFixes.ts @@ -136,6 +136,7 @@ namespace ts.codefix { return getNamedClassMemberDeclarations(classDeclaration).filter(member => getModifierFlags(member) & ModifierFlags.Abstract); } + /* function getMembersAndStartPosFromReference(variableDeclaration: VariableDeclaration): { startPos: number, members: string[] } { const children = variableDeclaration.getChildren(); const variableMembers: string[] = []; @@ -157,6 +158,7 @@ namespace ts.codefix { return { startPos: startPos, members: variableMembers }; } + */ function getDefaultValue(kind: SyntaxKind): string { switch (kind) {