Files
telert/src/message.ts
2023-05-03 09:21:14 +08:00

30 lines
603 B
TypeScript

export type RichMessage = {
channel?: string;
event: string;
text?: string;
emoji?: string;
metadata?: Record<string, string>;
notify?: boolean;
};
export function formatRichMessage(message: RichMessage): string {
const metadata = Object.entries(message.metadata ?? {})
.map(([key, value]) => `#${key}: ${value}`)
.join("\n");
return `${message.emoji ? message.emoji + " • " : ""}${
message.channel
? `<ins>#${message.channel}</ins>
`
: ""
}<b>${message.event}</b>${
message.text
? `
<code>${message.text}</code>`
: ""
}
${metadata}`;
}