Skip to content

Commit 6e77c36

Browse files
committed
feat(vscode): add vue.codeActions.askNewComponentName setting
close #4217
1 parent ef1f4bb commit 6e77c36

File tree

3 files changed

+8
-1
lines changed

3 files changed

+8
-1
lines changed

extensions/vscode/package.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,11 @@
313313
"default": true,
314314
"description": "Enabled code actions."
315315
},
316+
"vue.codeActions.askNewComponentName": {
317+
"type": "boolean",
318+
"default": true,
319+
"description": "Ask for new component name when extract component."
320+
},
316321
"vue.codeLens.enabled": {
317322
"type": "boolean",
318323
"default": true,

extensions/vscode/src/config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ export const config = {
3737
},
3838
get codeActions(): Readonly<{
3939
enabled: boolean;
40+
askNewComponentName: boolean;
4041
}> {
4142
return _config().get('codeActions')!;
4243
},

extensions/vscode/src/middleware.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,12 @@ import { AttrNameCasing, TagNameCasing } from '@vue/language-server';
22
import * as vscode from 'vscode';
33
import * as lsp from '@volar/vscode';
44
import { attrNameCasings, tagNameCasings } from './features/nameCasing';
5+
import { config } from './config';
56

67
export const middleware: lsp.Middleware = {
78
...lsp.middleware,
89
async resolveCodeAction(item, token, next) {
9-
if (item.kind?.value === 'refactor.move.newFile.dumb') {
10+
if (item.kind?.value === 'refactor.move.newFile.dumb' && config.codeActions.askNewComponentName) {
1011
const inputName = await vscode.window.showInputBox({ value: (item as any).data.original.data.newName });
1112
if (!inputName) {
1213
return item; // cancel

0 commit comments

Comments
 (0)