From 93cd1dc1eab6dc0f18ae9a6d7408015bbe8d5071 Mon Sep 17 00:00:00 2001 From: Arthur Ozga Date: Sun, 12 Mar 2017 18:47:17 -0700 Subject: [PATCH] get name for index info --- src/services/codefixes/fixAddMissingMember.ts | 2 +- .../codefixes/fixClassIncorrectlyImplementsInterface.ts | 3 +-- src/services/codefixes/helpers.ts | 4 ++++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/services/codefixes/fixAddMissingMember.ts b/src/services/codefixes/fixAddMissingMember.ts index 79b95e4799d..fe12249f176 100644 --- a/src/services/codefixes/fixAddMissingMember.ts +++ b/src/services/codefixes/fixAddMissingMember.ts @@ -59,7 +59,7 @@ namespace ts.codefix { /*decorators*/ undefined , /*modifiers*/ undefined , /*dotDotDotToken*/ undefined - , "name" + , "x" , /*questionToken*/ undefined , stringTypeNode); const indexSignature = createIndexSignatureDeclaration([indexingParameter], typeNode); diff --git a/src/services/codefixes/fixClassIncorrectlyImplementsInterface.ts b/src/services/codefixes/fixClassIncorrectlyImplementsInterface.ts index a5bde70c011..f653d21e02b 100644 --- a/src/services/codefixes/fixClassIncorrectlyImplementsInterface.ts +++ b/src/services/codefixes/fixClassIncorrectlyImplementsInterface.ts @@ -54,13 +54,12 @@ namespace ts.codefix { return undefined; } const typeNode = checker.createTypeNode(indexInfoOfKind.type); - let name: string; const newIndexSignatureDeclaration = createIndexSignatureDeclaration( [createParameter( /*decorators*/undefined , /*modifiers*/ undefined , /*dotDotDotToken*/ undefined - , name + , getNameFromIndexInfo(indexInfoOfKind) , /*questionToken*/ undefined , kind === IndexKind.String ? createKeywordTypeNode(SyntaxKind.StringKeyword) : createKeywordTypeNode(SyntaxKind.NumberKeyword))] , typeNode); diff --git a/src/services/codefixes/helpers.ts b/src/services/codefixes/helpers.ts index bbbe14ab337..67f53fb8e5a 100644 --- a/src/services/codefixes/helpers.ts +++ b/src/services/codefixes/helpers.ts @@ -234,4 +234,8 @@ namespace ts.codefix { , parameterTypeNode); return parameterNode; } + + export function getNameFromIndexInfo(info: IndexInfo) { + return info.declaration ? declarationNameToString(info.declaration.parameters[0].name) : "x" + } } \ No newline at end of file