From 6168c5093c41075add162edd9ec07463ad25c612 Mon Sep 17 00:00:00 2001 From: johnsoncodehk Date: Sun, 8 Jan 2023 19:07:24 +0800 Subject: [PATCH] feat: import completion normalize `Index` to folder name https://github.com/johnsoncodehk/volar/issues/2071#issuecomment-1373701277 --- .../vue-language-service/src/languageService.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/vue-language-tools/vue-language-service/src/languageService.ts b/vue-language-tools/vue-language-service/src/languageService.ts index 52c5b4c52..351ea0484 100644 --- a/vue-language-tools/vue-language-service/src/languageService.ts +++ b/vue-language-tools/vue-language-service/src/languageService.ts @@ -86,6 +86,16 @@ export function getLanguageServicePlugins(vueCompilerOptions: VueCompilerOptions ) { let newName = item.textEdit.newText.slice(0, -'Vue'.length); newName = newName[0].toUpperCase() + newName.substring(1); + if (newName === 'Index') { + const tsItem = (item.data as Data).originalItem; + if (tsItem.source) { + const dirs = tsItem.source.split('/'); + if (dirs.length >= 3) { + newName = dirs[dirs.length - 2]; + newName = newName[0].toUpperCase() + newName.substring(1); + } + } + } item.additionalTextEdits[0].newText = item.additionalTextEdits[0].newText.replace( 'import ' + item.textEdit.newText + ' from ', 'import ' + newName + ' from ',