diff options
author | Jean Pierre <jeanp413@hotmail.com> | 2021-08-05 20:46:32 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-06 11:46:32 +1000 |
commit | 728d205d9d2551a356a022b6b083bcdcf081f3bf (patch) | |
tree | c0823fef3a96ed164379c5297d521fce9b2628d8 /cli/tsc/99_main_compiler.js | |
parent | 3f0cf9619fce71a8898c495501df4bdb0e07e735 (diff) |
feat(lsp): implement refactoring code actions (#11555)
Closes: denoland/vscode_deno#433
Diffstat (limited to 'cli/tsc/99_main_compiler.js')
-rw-r--r-- | cli/tsc/99_main_compiler.js | 38 |
1 files changed, 38 insertions, 0 deletions
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, |