From cb95e18a99ea294331cce87628d513c3387d213a Mon Sep 17 00:00:00 2001 From: Uffy Date: Thu, 26 Dec 2024 17:08:40 +0800 Subject: [PATCH] fix: escape text for slack api --- next/api/src/integration/slack/message.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/next/api/src/integration/slack/message.ts b/next/api/src/integration/slack/message.ts index 0851381a5..edc5a9687 100644 --- a/next/api/src/integration/slack/message.ts +++ b/next/api/src/integration/slack/message.ts @@ -41,11 +41,21 @@ export class Message { } } -function getTicketLink(ticket: Ticket): string { +function escapeSlackCharacters(text:string) { + return text + .replace(/&/g, '&') + .replace(//g, '>'); +} + +function getTicketLink(ticket:Ticket) { let title = ticket.title; if (title.length > 50) { title = title.slice(0, 47) + '...'; } + // Escape special characters in the title + title = escapeSlackCharacters(title); + return `<${ticket.getUrl()}|*#${ticket.nid}: ${title}*>`; }