From 6876f78f49964b32cbd0fda23c4a26b2887af5a9 Mon Sep 17 00:00:00 2001 From: Badreddine Lejmi Date: Sun, 31 May 2026 18:24:20 +0200 Subject: [PATCH 1/4] feat: align Add Email Sender and Add SMS Gateway buttons in senders panel Move both action buttons up to the panel header so they sit on the same row, regardless of which filter tab is active. Each management component now accepts a hideAddButton prop and exposes openAddDialog so the page can drive the dialog from outside. --- .../senders/EmailSenderManagement.vue | 8 +++- .../sms-fleet/SmsFleetManagement.vue | 5 ++- frontend/src/pages/campaigns.vue | 38 ++++++++++++++++--- 3 files changed, 44 insertions(+), 7 deletions(-) diff --git a/frontend/src/components/senders/EmailSenderManagement.vue b/frontend/src/components/senders/EmailSenderManagement.vue index aac0a3e94..8a52aa8a9 100644 --- a/frontend/src/components/senders/EmailSenderManagement.vue +++ b/frontend/src/components/senders/EmailSenderManagement.vue @@ -7,6 +7,10 @@ import { useSmtpSendersStore } from '~/stores/smtp-senders'; import AddEmailSenderDialog from './AddEmailSenderDialog.vue'; import type { SmtpSender } from '@/types/smtp-senders'; +defineProps<{ + hideAddButton?: boolean; +}>(); + const { t } = useI18n({ useScope: 'local' }); const { t: globalT } = useI18n({ useScope: 'global' }); const $confirm = useConfirm(); @@ -22,6 +26,8 @@ function openAddDialog() { showAddDialog.value = true; } +defineExpose({ openAddDialog }); + function openEditDialog(sender: SmtpSender) { editingSender.value = sender; showAddDialog.value = true; @@ -86,7 +92,7 @@ onMounted(() => {