From d1ccd930ff99dbef02e820ae3566e91f73a8a664 Mon Sep 17 00:00:00 2001 From: Alejandro Date: Sat, 24 Jan 2026 10:17:46 +0100 Subject: [PATCH] Fix RichText prop in Kind9802Renderer to pass event object (#213) * fix: pass source event to RichText in highlight feed preview The source event preview in HighlightRenderer was only passing the content string to RichText, which meant custom emoji tags from the source event weren't processed. Now passes the source event with the preview content to enable proper emoji and tag-based rendering. * refactor: use CSS truncation for highlight source preview - Pass sourceEvent directly for notes instead of extracting content - Only create synthetic event with title for articles - CSS line-clamp-1 and overflow-hidden handle truncation - Media and event embeds remain disabled --------- Co-authored-by: Claude --- .../nostr/kinds/HighlightRenderer.tsx | 35 +++++++++---------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/src/components/nostr/kinds/HighlightRenderer.tsx b/src/components/nostr/kinds/HighlightRenderer.tsx index 89e1782..8f143fe 100644 --- a/src/components/nostr/kinds/HighlightRenderer.tsx +++ b/src/components/nostr/kinds/HighlightRenderer.tsx @@ -32,13 +32,8 @@ export function Kind9802Renderer({ event }: BaseEventProps) { // Load the source event for preview const sourceEvent = useNostrEvent(eventPointer || addressPointer); - // Extract title or content preview from source event (getArticleTitle caches internally) - const sourcePreview = (() => { - if (!sourceEvent) return null; - const title = getArticleTitle(sourceEvent); - if (title) return title; - return sourceEvent.content || null; - })(); + // Get article title if this is an article (caches internally) + const sourceTitle = sourceEvent ? getArticleTitle(sourceEvent) : null; // Handle click to open source event const handleOpenEvent = () => { @@ -93,18 +88,20 @@ export function Kind9802Renderer({ event }: BaseEventProps) { className="text-xs flex-shrink-0 line-clamp-1" /> - {/* Title or Content Preview */} - {sourcePreview && ( -
- -
- )} + {/* Title or Content Preview - CSS handles truncation */} +
+ +
)}