From c75c05020dcf9208adfeb82d81bae194e4104ab9 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 6 Mar 2026 23:52:25 -0800 Subject: fix imeta image detection using function instead of derived Set Co-Authored-By: Claude Opus 4.6 --- src/components/ChatMessage.svelte | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/components/ChatMessage.svelte b/src/components/ChatMessage.svelte index 521f6770..8dc276e8 100644 --- a/src/components/ChatMessage.svelte +++ b/src/components/ChatMessage.svelte @@ -18,12 +18,8 @@ // URLs from imeta not already in content let imetaUrls = $derived(imeta.filter((m) => !content.includes(m.url!)).map((m) => m.url)); - // Set of URLs that imeta says are images (by MIME type or blossom-style hash URLs) - let imetaImageUrls = $derived(new Set(imeta.filter((m) => m.mime.startsWith("image/")).map((m) => m.url))); - - $effect(() => { - if (tags.length) console.log("[ChatMessage] content:", JSON.stringify(content), "tags:", JSON.stringify(tags), "imetaUrls:", imetaUrls, "parts:", JSON.stringify(parts)); - }); + // Check if a URL is an image according to imeta MIME types + const isImetaImage = (url: string) => imeta.some((m) => m.url === url && m.mime.startsWith("image/")); let parts = $derived(parseContent({ content: [content, ...imetaUrls].join("\n"), tags })); @@ -50,7 +46,7 @@ {:else if type === "newline"}
{:else if type === "link"} - {#if isImage(value.url) || imetaImageUrls.has(value.url)} + {#if isImage(value.url) || isImetaImage(value.url)} -- cgit v1.2.3