From 728d205d9d2551a356a022b6b083bcdcf081f3bf Mon Sep 17 00:00:00 2001 From: Jean Pierre Date: Thu, 5 Aug 2021 20:46:32 -0500 Subject: feat(lsp): implement refactoring code actions (#11555) Closes: denoland/vscode_deno#433 --- cli/tsc/99_main_compiler.js | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'cli/tsc/99_main_compiler.js') diff --git a/cli/tsc/99_main_compiler.js b/cli/tsc/99_main_compiler.js index f5cfe38dd..29a387887 100644 --- a/cli/tsc/99_main_compiler.js +++ b/cli/tsc/99_main_compiler.js @@ -584,6 +584,44 @@ delete Object.prototype.__proto__; ); return respond(id, sourceFile && sourceFile.text); } + case "getApplicableRefactors": { + return respond( + id, + languageService.getApplicableRefactors( + request.specifier, + request.range, + { + quotePreference: "double", + allowTextChangesInNewFiles: true, + provideRefactorNotApplicableReason: true, + }, + undefined, + request.kind, + ), + ); + } + case "getEditsForRefactor": { + return respond( + id, + languageService.getEditsForRefactor( + request.specifier, + { + indentSize: 2, + indentStyle: ts.IndentStyle.Smart, + semicolons: ts.SemicolonPreference.Insert, + convertTabsToSpaces: true, + insertSpaceBeforeAndAfterBinaryOperators: true, + insertSpaceAfterCommaDelimiter: true, + }, + request.range, + request.refactorName, + request.actionName, + { + quotePreference: "double", + }, + ), + ); + } case "getCodeFixes": { return respond( id, -- cgit v1.2.3