feat: 添加自定义对话模态框

This commit is contained in:
Baobhan Sith
2025-05-28 19:32:14 +08:00
parent ae88f6c66c
commit f022033b22
21 changed files with 438 additions and 69 deletions
@@ -75,8 +75,10 @@ import { useNotificationsStore } from '../stores/notifications.store';
import { NotificationSetting, NotificationChannelType, NotificationEvent } from '../types/server.types';
import NotificationSettingForm from './NotificationSettingForm.vue';
import { useI18n } from 'vue-i18n';
import { useConfirmDialog } from '../composables/useConfirmDialog';
const store = useNotificationsStore();
const { showConfirmDialog } = useConfirmDialog();
const { t } = useI18n();
const showAddForm = ref(false);
@@ -121,9 +123,14 @@ const editSetting = (setting: NotificationSetting) => {
showAddForm.value = false; // Ensure add form is hidden
};
const confirmDelete = (setting: NotificationSetting) => {
if (setting.id && confirm(t('settings.notifications.confirmDelete', { name: setting.name }))) {
store.deleteSetting(setting.id);
const confirmDelete = async (setting: NotificationSetting) => {
if (setting.id) {
const confirmed = await showConfirmDialog({
message: t('settings.notifications.confirmDelete', { name: setting.name })
});
if (confirmed) {
store.deleteSetting(setting.id);
}
}
};