feat:个人规则删除二次确认功能
This commit is contained in:
@ -50,6 +50,18 @@ export function getRulesSettingsComponentContent(): string {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 删除确认弹窗 -->
|
||||||
|
<div class="rule-modal" id="deleteConfirmModal" style="display: none;">
|
||||||
|
<div class="rule-modal-content" style="width: 400px;">
|
||||||
|
<h4>确认删除</h4>
|
||||||
|
<p id="deleteConfirmText" style="color: var(--vscode-foreground); margin: 16px 0;"></p>
|
||||||
|
<div class="rule-modal-actions">
|
||||||
|
<button class="settings-button settings-button-primary" onclick="confirmDelete()">确定</button>
|
||||||
|
<button class="settings-button settings-button-secondary" onclick="closeDeleteConfirmModal()">取消</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
`;
|
`;
|
||||||
}
|
}
|
||||||
@ -234,6 +246,7 @@ export function getRulesSettingsComponentScript(): string {
|
|||||||
return `
|
return `
|
||||||
let currentRules = [];
|
let currentRules = [];
|
||||||
let editingRule = null;
|
let editingRule = null;
|
||||||
|
let deletingFilename = null;
|
||||||
|
|
||||||
// 显示添加规则弹窗
|
// 显示添加规则弹窗
|
||||||
function showAddRuleModal() {
|
function showAddRuleModal() {
|
||||||
@ -319,10 +332,29 @@ export function getRulesSettingsComponentScript(): string {
|
|||||||
// 删除规则
|
// 删除规则
|
||||||
function deleteRule(filename) {
|
function deleteRule(filename) {
|
||||||
closeAllDropdowns();
|
closeAllDropdowns();
|
||||||
vscode.postMessage({
|
const rule = currentRules.find(r => r.filename === filename);
|
||||||
command: 'deletePersonalRule',
|
const ruleName = rule ? rule.name : filename;
|
||||||
filename: filename
|
|
||||||
});
|
deletingFilename = filename;
|
||||||
|
document.getElementById('deleteConfirmText').textContent = '确定要删除规则"' + ruleName + '"吗?此操作无法撤销。';
|
||||||
|
document.getElementById('deleteConfirmModal').style.display = 'flex';
|
||||||
|
}
|
||||||
|
|
||||||
|
// 关闭删除确认弹窗
|
||||||
|
function closeDeleteConfirmModal() {
|
||||||
|
document.getElementById('deleteConfirmModal').style.display = 'none';
|
||||||
|
deletingFilename = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 确认删除
|
||||||
|
function confirmDelete() {
|
||||||
|
if (deletingFilename) {
|
||||||
|
vscode.postMessage({
|
||||||
|
command: 'deletePersonalRule',
|
||||||
|
filename: deletingFilename
|
||||||
|
});
|
||||||
|
}
|
||||||
|
closeDeleteConfirmModal();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 渲染规则列表
|
// 渲染规则列表
|
||||||
|
|||||||
Reference in New Issue
Block a user