feat:个人规则删除二次确认功能

This commit is contained in:
Roe-xin
2026-03-07 16:11:20 +08:00
parent 8751944053
commit eb345e3e1f

View File

@ -50,6 +50,18 @@ export function getRulesSettingsComponentContent(): string {
</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>
`;
}
@ -234,6 +246,7 @@ export function getRulesSettingsComponentScript(): string {
return `
let currentRules = [];
let editingRule = null;
let deletingFilename = null;
// 显示添加规则弹窗
function showAddRuleModal() {
@ -319,11 +332,30 @@ export function getRulesSettingsComponentScript(): string {
// 删除规则
function deleteRule(filename) {
closeAllDropdowns();
const rule = currentRules.find(r => r.filename === filename);
const ruleName = rule ? rule.name : 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: filename
filename: deletingFilename
});
}
closeDeleteConfirmModal();
}
// 渲染规则列表
function renderRulesList(rules) {