fix(api): 🐛 Improve notification text

This commit is contained in:
Jesse Wierzbinski 2025-01-02 04:49:36 +01:00
parent 1c543723fb
commit 3484b1e1a1
No known key found for this signature in database
2 changed files with 17 additions and 2 deletions

View file

@ -1,6 +1,5 @@
import { Note, PushSubscription, Token, User } from "@versia/kit/db";
import { Worker } from "bullmq";
import { htmlToText } from "html-to-text";
import { sendNotification } from "web-push";
import { config } from "~/packages/config-manager";
import { connection } from "~/utils/redis.ts";
@ -9,6 +8,7 @@ import {
type PushJobType,
pushQueue,
} from "../queues/push.ts";
import { htmlToText } from "@/content_types.ts";
export const getPushWorker = (): Worker<PushJobData, void, PushJobType> =>
new Worker<PushJobData, void, PushJobType>(
@ -70,7 +70,7 @@ export const getPushWorker = (): Worker<PushJobData, void, PushJobType> =>
case "reply":
title = `${name} replied to you`;
break;
case "like":
case "favourite":
title = `${name} liked your note`;
break;
case "reblog":

View file

@ -1,6 +1,7 @@
import type { ContentFormat } from "@versia/federation/types";
import { lookup } from "mime-types";
import { config } from "~/packages/config-manager";
import { htmlToText as htmlToTextLib } from "html-to-text";
export const getBestContentType = (
content?: ContentFormat | null,
@ -77,3 +78,17 @@ export const mimeLookup = (url: string): Promise<string> => {
return fetchLookup;
};
export const htmlToText = (html: string): string => {
return htmlToTextLib(html, {
selectors: [
{
selector: "a",
options: {
hideLinkHrefIfSameAsText: true,
ignoreHref: true,
},
},
],
});
};