aboutsummaryrefslogtreecommitdiffstats
path: root/src/components
diff options
context:
space:
mode:
Diffstat (limited to 'src/components')
-rw-r--r--src/components/ChatMessage.svelte10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/components/ChatMessage.svelte b/src/components/ChatMessage.svelte
index 7283430f..dbdde5a0 100644
--- a/src/components/ChatMessage.svelte
+++ b/src/components/ChatMessage.svelte
@@ -3,7 +3,15 @@
let { content, tags = [] }: { content: string; tags?: any[] } = $props();
- let parts = $derived(parseContent({ content, tags }));
+ // Extract image URLs from imeta tags not already in content
+ let imetaUrls = $derived(
+ tags
+ .filter((t) => t[0] === "imeta")
+ .map((t) => t.find((v) => v.startsWith("url "))?.slice(4))
+ .filter((url): url is string => !!url && !content.includes(url)),
+ );
+
+ let parts = $derived(parseContent({ content: [content, ...imetaUrls].join("\n"), tags }));
const truncUrl = (url: string) => {
const short = url.replace(/^https?:\/\/(www\.)?/, "");