diff --git a/frontend-modern/src/api/notifications.ts b/frontend-modern/src/api/notifications.ts index 9ea531d1e..1d8a145ec 100644 --- a/frontend-modern/src/api/notifications.ts +++ b/frontend-modern/src/api/notifications.ts @@ -55,6 +55,7 @@ export interface Webhook { enabled: boolean; service?: string; // Added to support Discord, Slack, etc. customFields?: Record; + mention?: string; // Platform-specific mention (e.g., @everyone, @channel, <@USER_ID>) } export interface AppriseConfig { diff --git a/frontend-modern/src/components/Alerts/WebhookConfig.tsx b/frontend-modern/src/components/Alerts/WebhookConfig.tsx index 9565fc73c..d7c192952 100644 --- a/frontend-modern/src/components/Alerts/WebhookConfig.tsx +++ b/frontend-modern/src/components/Alerts/WebhookConfig.tsx @@ -121,6 +121,7 @@ export function WebhookConfig(props: WebhookConfigProps) { enabled: true, payloadTemplate: '', customFields: {}, + mention: '', }); const [templates, setTemplates] = createSignal([]); const [showServiceDropdown, setShowServiceDropdown] = createSignal(false); @@ -190,6 +191,7 @@ export function WebhookConfig(props: WebhookConfigProps) { service: data.service, template: data.payloadTemplate, customFields, + mention: data.mention, }); setEditingId(null); setAdding(false); @@ -206,6 +208,7 @@ export function WebhookConfig(props: WebhookConfigProps) { service: data.service, template: data.payloadTemplate, customFields, + mention: data.mention, }; props.onAdd(newWebhook); // Reset form and close the adding panel @@ -218,9 +221,10 @@ export function WebhookConfig(props: WebhookConfigProps) { enabled: true, payloadTemplate: '', customFields: {}, + mention: '', }); setHeaderInputs([]); - setCustomFieldInputs([]); + setCustomFieldInputs([]); setAdding(false); } }; @@ -237,6 +241,7 @@ export function WebhookConfig(props: WebhookConfigProps) { enabled: true, payloadTemplate: '', customFields: {}, + mention: '', }); setHeaderInputs([]); setCustomFieldInputs([]); @@ -251,6 +256,7 @@ export function WebhookConfig(props: WebhookConfigProps) { service: webhook.service || 'generic', payloadTemplate: webhook.template || '', customFields: webhook.customFields || {}, + mention: webhook.mention || '', }); // Set up header inputs for editing const headers = webhook.headers || {}; @@ -366,11 +372,10 @@ export function WebhookConfig(props: WebhookConfigProps) { {webhook.name} @@ -455,11 +460,10 @@ export function WebhookConfig(props: WebhookConfigProps) {