feat: add toast feedback for connection operations

Add toast notifications for delete, disconnect, duplicate, copy name,
and delete group operations in the sidebar context menu.
This commit is contained in:
t8y2
2026-05-13 12:35:50 +08:00
parent e87876c923
commit 0881d4d966
4 changed files with 23 additions and 0 deletions
+5
View File
@@ -501,6 +501,7 @@ async function confirmDelete() {
try {
await connectionStore.disconnect(node.connectionId);
await connectionStore.removeConnection(node.connectionId);
toast(t("connection.deleted"), 2000);
} catch (e: any) {
toast(t("connection.saveFailed", { message: e?.message || String(e) }), 5000);
}
@@ -509,6 +510,7 @@ async function confirmDelete() {
function copyName() {
navigator.clipboard.writeText(props.node.label);
toast(t("connection.copied"), 2000);
}
async function duplicateConnection() {
@@ -518,6 +520,7 @@ async function duplicateConnection() {
if (!config) return;
const newConfig = { ...config, id: uuid(), name: `${config.name} (Copy)` };
await connectionStore.addConnection(newConfig);
toast(t("connection.duplicated"), 2000);
}
// --- Table Management Operations ---
@@ -954,6 +957,7 @@ function disconnectConnection() {
connectionStore.disconnect(props.node.connectionId);
props.node.isExpanded = false;
props.node.children = [];
toast(t("connection.disconnected"), 2000);
}
}
@@ -1220,6 +1224,7 @@ function newConnectionInGroup() {
function confirmDeleteGroup() {
connectionStore.deleteConnectionGroup(props.node.id);
showDeleteGroupConfirm.value = false;
toast(t("connection.groupDeleted"), 2000);
}
const showDeleteGroupConfirm = ref(false);
+6
View File
@@ -134,6 +134,11 @@ export default {
lastError: "Connection error",
clearError: "Clear connection error",
saveFailed: "Failed to save connection: {message}",
deleted: "Connection deleted",
copied: "Copied",
disconnected: "Disconnected",
duplicated: "Connection duplicated",
groupDeleted: "Group deleted",
loadFailed: "Failed to load saved connections: {message}",
sshTunnel: "SSH Tunnel",
sshEnable: "Connect via SSH tunnel",
@@ -719,6 +724,7 @@ export default {
memberDetail: "Member detail",
viewMember: "View full value",
copyMember: "Copy member",
editMember: "Edit",
},
mongo: {
documents: "{count} documents",
+6
View File
@@ -134,6 +134,11 @@ export default {
lastError: "Error de conexión",
clearError: "Limpiar error de conexión",
saveFailed: "Error al guardar la conexión: {message}",
deleted: "Conexión eliminada",
copied: "Copiado",
disconnected: "Desconectado",
duplicated: "Conexión duplicada",
groupDeleted: "Grupo eliminado",
loadFailed: "Error al cargar las conexiones guardadas: {message}",
sshTunnel: "Túnel SSH",
sshEnable: "Conectar mediante túnel SSH",
@@ -720,6 +725,7 @@ export default {
memberDetail: "Detalle del miembro",
viewMember: "Ver valor completo",
copyMember: "Copiar miembro",
editMember: "Editar",
},
mongo: {
documents: "{count} documentos",
+6
View File
@@ -133,6 +133,11 @@ export default {
lastError: "连接错误",
clearError: "清除连接错误",
saveFailed: "保存连接失败:{message}",
deleted: "连接已删除",
copied: "已复制",
disconnected: "已断开连接",
duplicated: "连接已复制",
groupDeleted: "分组已删除",
loadFailed: "加载已保存连接失败:{message}",
sshTunnel: "SSH 隧道",
sshEnable: "通过 SSH 隧道连接",
@@ -705,6 +710,7 @@ export default {
memberDetail: "成员详情",
viewMember: "查看完整内容",
copyMember: "复制成员",
editMember: "编辑",
},
mongo: {
documents: "{count} 个文档",