From bc296194b695ed48b75b72a43a003c80eddacffc Mon Sep 17 00:00:00 2001 From: Jesse Wierzbinski Date: Sat, 13 Apr 2024 17:49:32 -1000 Subject: [PATCH] Replaces regexes with magic-regexp, simplify code --- bun.lockb | Bin 675364 -> 676636 bytes database/entities/Status.ts | 259 ++++++++++++----------- package.json | 1 + server/api/api/v1/statuses/index.test.ts | 64 ++++++ test.ts | 25 +++ 5 files changed, 227 insertions(+), 122 deletions(-) create mode 100644 test.ts diff --git a/bun.lockb b/bun.lockb index b774b7cb296d4095e2d4ad1a1c9d79a34dac2651..b529c4676e8d901d0019376a7b522dd4ea877cac 100755 GIT binary patch delta 133616 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 delta 131692 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 Wwi(g5QI9?WqW;1Fs@2-^{{I3yj2;{S diff --git a/database/entities/Status.ts b/database/entities/Status.ts index 57c16f23..65d2f948 100644 --- a/database/entities/Status.ts +++ b/database/entities/Status.ts @@ -14,6 +14,18 @@ import { htmlToText } from "html-to-text"; import linkifyHtml from "linkify-html"; import linkifyStr from "linkify-string"; import type * as Lysand from "lysand-types"; +import { + anyOf, + char, + charIn, + createRegExp, + digit, + exactly, + global, + letter, + maybe, + oneOrMore, +} from "magic-regexp/further-magic"; import { parse } from "marked"; import { db } from "~drizzle/db"; import { @@ -719,6 +731,19 @@ export const getDescendants = async ( return viewableDescendants; }; +export const createMentionRegExp = () => + createRegExp( + exactly("@"), + oneOrMore(anyOf(letter.lowercase, digit, charIn("-"))).groupedAs( + "username", + ), + maybe( + exactly("@"), + oneOrMore(anyOf(letter, digit, charIn("_-.:"))).groupedAs("domain"), + ), + [global], + ); + /** * Get people mentioned in the content (match @username or @username@domain.com mentions) * @param text The text to parse mentions from. @@ -727,91 +752,60 @@ export const getDescendants = async ( export const parseTextMentions = async ( text: string, ): Promise => { - const mentionedPeople = - text.match(/@[a-zA-Z0-9_]+(@[a-zA-Z0-9_.:]+)?/g) ?? []; - + const mentionedPeople = [...text.matchAll(createMentionRegExp())] ?? []; if (mentionedPeople.length === 0) return []; - const remoteUsers = mentionedPeople.filter( + const baseUrlHost = new URL(config.http.base_url).host; + + const isLocal = (host?: string) => host === baseUrlHost || !host; + + const foundUsers = await db + .select({ + id: user.id, + username: user.username, + baseUrl: instance.baseUrl, + }) + .from(user) + .leftJoin(instance, eq(user.instanceId, instance.id)) + .where( + or( + ...mentionedPeople.map((person) => + and( + eq(user.username, person?.[1] ?? ""), + isLocal(person?.[2]) + ? isNull(user.instanceId) + : eq(instance.baseUrl, person?.[2] ?? ""), + ), + ), + ), + ); + + const notFoundRemoteUsers = mentionedPeople.filter( (person) => - person.split("@").length === 3 && - person.split("@")[2] !== new URL(config.http.base_url).host, - ); - - const localUsers = mentionedPeople.filter( - (person) => - person.split("@").length <= 2 || - person.split("@")[2] === new URL(config.http.base_url).host, - ); - - const foundRemote = - remoteUsers.length > 0 - ? await db - .select({ - id: user.id, - username: user.username, - baseUrl: instance.baseUrl, - }) - .from(user) - .innerJoin(instance, eq(user.instanceId, instance.id)) - .where( - or( - ...remoteUsers.map((person) => - and( - eq(user.username, person.split("@")[1]), - eq(instance.baseUrl, person.split("@")[2]), - ), - ), - ), - ) - : []; - - const foundLocal = - localUsers.length > 0 - ? await db - .select({ - id: user.id, - }) - .from(user) - .where( - and( - inArray( - user.username, - localUsers.map((person) => person.split("@")[1]), - ), - isNull(user.instanceId), - ), - ) - : []; - - const combinedFound = [ - ...foundLocal.map((user) => user.id), - ...foundRemote.map((user) => user.id), - ]; - - const finalList = - combinedFound.length > 0 - ? await findManyUsers({ - where: (user, { inArray }) => inArray(user.id, combinedFound), - }) - : []; - - const notFoundRemote = remoteUsers.filter( - (person) => - !foundRemote.find( + !isLocal(person?.[2]) && + !foundUsers.find( (user) => - user.username === person.split("@")[1] && - user.baseUrl === person.split("@")[2], + user.username === person?.[1] && + user.baseUrl === person?.[2], ), ); - // Attempt to resolve mentions that were not found - for (const person of notFoundRemote) { - if (person.split("@").length < 2) continue; + const finalList = + foundUsers.length > 0 + ? await findManyUsers({ + where: (user, { inArray }) => + inArray( + user.id, + foundUsers.map((u) => u.id), + ), + }) + : []; + // Attempt to resolve mentions that were not found + for (const person of notFoundRemoteUsers) { const user = await resolveWebFinger( - person.split("@")[1], - person.split("@")[2], + person?.[1] ?? "", + person?.[2] ?? "", ); if (user) { @@ -829,24 +823,39 @@ export const replaceTextMentions = async ( let finalText = text; for (const mention of mentions) { // Replace @username and @username@domain - if (mention.instanceId) { + if (mention.instance) { finalText = finalText.replace( - `@${mention.username}@${mention.instance?.baseUrl}`, + createRegExp( + exactly(`@${mention.username}@${mention.instance.baseUrl}`), + [global], + ), `@${mention.username}@${mention.instance?.baseUrl}`, + )}">@${mention.username}@${mention.instance.baseUrl}`, ); } else { finalText = finalText.replace( // Only replace @username if it doesn't have another @ right after - new RegExp(`@${mention.username}(?![a-zA-Z0-9_@])`, "g"), + createRegExp( + exactly(`@${mention.username}`) + .notBefore(anyOf(letter, digit, charIn("@"))) + .notAfter(anyOf(letter, digit, charIn("@"))), + [global], + ), `@${mention.username}`, ); finalText = finalText.replace( - `@${mention.username}@${new URL(config.http.base_url).host}`, + createRegExp( + exactly( + `@${mention.username}@${ + new URL(config.http.base_url).host + }`, + ), + [global], + ), `@${mention.username}`, @@ -857,24 +866,10 @@ export const replaceTextMentions = async ( return finalText; }; -/** - * Creates a new status and saves it to the database. - * @returns A promise that resolves with the new status. - */ -export const createNewStatus = async ( - author: User, +export const contentToHtml = async ( content: Lysand.ContentFormat, - visibility: APIStatus["visibility"], - is_sensitive: boolean, - spoiler_text: string, - emojis: EmojiWithInstance[], - uri?: string, - mentions?: UserWithRelations[], - /** List of IDs of database Attachment objects */ - media_attachments?: string[], - inReplyTo?: StatusWithRelations, - quoting?: StatusWithRelations, -): Promise => { + mentions: UserWithRelations[] = [], +): Promise => { let htmlContent: string; if (content["text/html"]) { @@ -906,6 +901,29 @@ export const createNewStatus = async ( rel: "nofollow noopener noreferrer", }); + return htmlContent; +}; + +/** + * Creates a new status and saves it to the database. + * @returns A promise that resolves with the new status. + */ +export const createNewStatus = async ( + author: User, + content: Lysand.ContentFormat, + visibility: APIStatus["visibility"], + is_sensitive: boolean, + spoiler_text: string, + emojis: EmojiWithInstance[], + uri?: string, + mentions?: UserWithRelations[], + /** List of IDs of database Attachment objects */ + media_attachments?: string[], + inReplyTo?: StatusWithRelations, + quoting?: StatusWithRelations, +): Promise => { + const htmlContent = await contentToHtml(content, mentions); + // Parse emojis and fuse with existing emojis let foundEmojis = emojis; @@ -927,6 +945,7 @@ export const createNewStatus = async ( contentSource: content["text/plain"]?.content || content["text/markdown"]?.content || + Object.entries(content)[0][1].content || "", contentType: "text/html", visibility, @@ -1067,33 +1086,25 @@ export const editStatus = async ( // Parse emojis const emojis = await parseEmojis(data.content); - data.emojis = data.emojis ? [...data.emojis, ...emojis] : emojis; + // Fuse and deduplicate emojis + data.emojis = data.emojis + ? [...data.emojis, ...emojis].filter( + (emoji, index, self) => + index === self.findIndex((t) => t.id === emoji.id), + ) + : emojis; - let formattedContent = ""; - - // Get HTML version of content - if (data.content_type === "text/markdown") { - formattedContent = linkifyHtml( - await sanitizeHtml(await parse(data.content)), - ); - } else if (data.content_type === "text/x.misskeymarkdown") { - // Parse as MFM - } else { - // Parse as plaintext - formattedContent = linkifyStr(data.content); - - // Split by newline and add

tags - formattedContent = formattedContent - .split("\n") - .map((line) => `

${line}

`) - .join("\n"); - } + const htmlContent = await contentToHtml({ + [data.content_type ?? "text/plain"]: { + content: data.content, + }, + }); const updated = ( await db .update(status) .set({ - content: formattedContent, + content: htmlContent, contentSource: data.content, contentType: data.content_type, visibility: data.visibility, @@ -1196,9 +1207,13 @@ export const statusToAPI = async ( for (const mention of mentionedLocalUsers) { replacedContent = replacedContent.replace( - new RegExp( - `@${mention.username}@${new URL(config.http.base_url).host}`, - "g", + createRegExp( + exactly( + `@${mention.username}@${ + new URL(config.http.base_url).host + }`, + ), + [global], ), `@${mention.username}`, ); diff --git a/package.json b/package.json index 9a98e966..f497853c 100644 --- a/package.json +++ b/package.json @@ -111,6 +111,7 @@ "linkify-string": "^4.1.3", "linkifyjs": "^4.1.3", "log-manager": "workspace:*", + "magic-regexp": "^0.8.0", "marked": "latest", "media-manager": "workspace:*", "megalodon": "^10.0.0", diff --git a/server/api/api/v1/statuses/index.test.ts b/server/api/api/v1/statuses/index.test.ts index 7df53bb5..ad43ef2c 100644 --- a/server/api/api/v1/statuses/index.test.ts +++ b/server/api/api/v1/statuses/index.test.ts @@ -294,4 +294,68 @@ describe(meta.route, () => { expect(object2.content).toBe("

Hello, world again!

"); expect(object2.quote_id).toBe(object.id); }); + + describe("mentions testing", () => { + test("should correctly parse @mentions", async () => { + const response = await sendTestRequest( + new Request(new URL(meta.route, config.http.base_url), { + method: "POST", + headers: { + "Content-Type": "application/json", + Authorization: `Bearer ${tokens[0].accessToken}`, + }, + body: JSON.stringify({ + status: `Hello, @${users[1].username}!`, + federate: false, + }), + }), + ); + + expect(response.status).toBe(200); + expect(response.headers.get("content-type")).toBe( + "application/json", + ); + + const object = (await response.json()) as APIStatus; + + expect(object.mentions).toBeArrayOfSize(1); + expect(object.mentions[0]).toMatchObject({ + id: users[1].id, + username: users[1].username, + acct: users[1].username, + }); + }); + + test("should correctly parse @mentions@domain", async () => { + const response = await sendTestRequest( + new Request(new URL(meta.route, config.http.base_url), { + method: "POST", + headers: { + "Content-Type": "application/json", + Authorization: `Bearer ${tokens[0].accessToken}`, + }, + body: JSON.stringify({ + status: `Hello, @${users[1].username}@${ + new URL(config.http.base_url).host + }!`, + federate: false, + }), + }), + ); + + expect(response.status).toBe(200); + expect(response.headers.get("content-type")).toBe( + "application/json", + ); + + const object = (await response.json()) as APIStatus; + + expect(object.mentions).toBeArrayOfSize(1); + expect(object.mentions[0]).toMatchObject({ + id: users[1].id, + username: users[1].username, + acct: users[1].username, + }); + }); + }); }); diff --git a/test.ts b/test.ts new file mode 100644 index 00000000..34ff1a95 --- /dev/null +++ b/test.ts @@ -0,0 +1,25 @@ +import { + anyOf, + char, + charIn, + charNotIn, + createRegExp, + digit, + exactly, + global, + letter, + maybe, + not, + oneOrMore, + whitespace, +} from "magic-regexp/further-magic"; + +const regexp = createRegExp( + exactly("@jesse") + .notBefore(anyOf(letter, digit, charIn("@"))) + .notAfter(anyOf(letter, digit, charIn("@"))), + [global], +); + +console.log(regexp); +console.log("@jessew@game cheese @jesse2 @jesse s".match(regexp));