fix: pass event to RichText for custom emoji tag support

Create synthetic events that preserve emoji tags from the original
highlight event while using the comment as content. This ensures
custom emoji in comments render correctly.

Changes:
- HighlightRenderer: Create commentEvent with emoji tags preserved
- HighlightDetailRenderer: Create commentEvent with emoji tags preserved
This commit is contained in:
Claude
2026-01-04 19:16:01 +00:00
parent 04f4753a06
commit 9edb18f00d
2 changed files with 20 additions and 4 deletions

View File

@@ -39,6 +39,14 @@ export function Kind9802DetailRenderer({ event }: { event: NostrEvent }) {
},
);
// Create synthetic event for comment rendering (preserves emoji tags)
const commentEvent = comment
? {
...event,
content: comment,
}
: undefined;
return (
<div className="flex flex-col gap-6 p-6 max-w-3xl mx-auto">
{/* Highlight Header */}
@@ -76,13 +84,13 @@ export function Kind9802DetailRenderer({ event }: { event: NostrEvent }) {
)}
{/* Comment */}
{comment && (
{commentEvent && (
<div className="flex flex-col gap-2">
<div className="text-xs text-muted-foreground uppercase tracking-wide">
Comment
</div>
<RichText
content={comment}
event={commentEvent}
className="text-sm leading-relaxed"
options={{ showMedia: false, showEventEmbeds: false }}
/>

View File

@@ -49,13 +49,21 @@ export function Kind9802Renderer({ event }: BaseEventProps) {
}
};
// Create synthetic event for comment rendering (preserves emoji tags)
const commentEvent = comment
? {
...event,
content: comment,
}
: undefined;
return (
<BaseEventContainer event={event}>
<div className="flex flex-col gap-2">
{/* Comment */}
{comment && (
{commentEvent && (
<RichText
content={comment}
event={commentEvent}
className="text-sm text-foreground"
options={{ showMedia: false, showEventEmbeds: false }}
/>