From 3a5c4f6b10997f34a33b56f9298eeb1c63c830c3 Mon Sep 17 00:00:00 2001 From: Cynthia Foxwell Date: Sun, 20 Apr 2025 21:49:52 -0600 Subject: [PATCH] fedimbed.bluesky: sanitize markdown --- src/modules/fedimbed.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/modules/fedimbed.js b/src/modules/fedimbed.js index 938a627..b3c4bde 100644 --- a/src/modules/fedimbed.js +++ b/src/modules/fedimbed.js @@ -360,6 +360,12 @@ async function blueskyQuoteEmbed(quote) { const components = []; + let content = quote.value.text; + if (quote.value.facets?.length > 0) { + content = processBlueskyFacets(content, quote.value.facets); + } + content = content.replaceAll("`", "\u02cb").replaceAll("*", "\u2217").replaceAll("||", "|\u200b|"); + const header = [ { type: 10, @@ -370,13 +376,7 @@ async function blueskyQuoteEmbed(quote) { components: [ { type: 10, - content: `## ${quote.author.displayName}\n-# [@${quote.author.handle}](https://bsky.app/profile/${ - quote.author.did - })\n${ - quote.value.facets?.length ?? 0 > 0 - ? processBlueskyFacets(quote.value.text, quote.value.facets) - : quote.value.text - }`, + content: `## ${quote.author.displayName}\n-# [@${quote.author.handle}](https://bsky.app/profile/${quote.author.did})\n${content}`, }, ], accessory: { @@ -648,6 +648,12 @@ async function bluesky(msg, url, spoiler = false) { })](https://bsky.app/profile/${reply.author.did}/post/${reply.uri.substring(reply.uri.lastIndexOf("/") + 1)})`; } + let content = post.record.text; + if (post.record.facets?.length > 0) { + content = processBlueskyFacets(content, post.record.facets); + } + content = content.replaceAll("`", "\u02cb").replaceAll("*", "\u2217").replaceAll("||", "|\u200b|"); + const header = [ context && { type: 10, @@ -658,13 +664,7 @@ async function bluesky(msg, url, spoiler = false) { components: [ { type: 10, - content: `## ${post.author.displayName}\n-# [@${post.author.handle}](https://bsky.app/profile/${ - post.author.did - })\n${ - post.record.facets?.length ?? 0 > 0 - ? processBlueskyFacets(post.record.text, post.record.facets) - : post.record.text - }`, + content: `## ${post.author.displayName}\n-# [@${post.author.handle}](https://bsky.app/profile/${post.author.did})\n${content}`, }, ], accessory: {