From 2aac7383f39446f6da038bca805d7b39cb60a4b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20G=C3=B3mez?= Date: Fri, 12 Dec 2025 12:12:48 +0100 Subject: [PATCH] feat: reposts --- .../kinds/{Kind6Renderer.tsx => RepostRenderer.tsx} | 11 +++++++++-- src/components/nostr/kinds/index.tsx | 7 ++++--- 2 files changed, 13 insertions(+), 5 deletions(-) rename src/components/nostr/kinds/{Kind6Renderer.tsx => RepostRenderer.tsx} (75%) diff --git a/src/components/nostr/kinds/Kind6Renderer.tsx b/src/components/nostr/kinds/RepostRenderer.tsx similarity index 75% rename from src/components/nostr/kinds/Kind6Renderer.tsx rename to src/components/nostr/kinds/RepostRenderer.tsx index 9c11a7e..eda7bc5 100644 --- a/src/components/nostr/kinds/Kind6Renderer.tsx +++ b/src/components/nostr/kinds/RepostRenderer.tsx @@ -4,10 +4,13 @@ import { EmbeddedEvent } from "../EmbeddedEvent"; import { useGrimoire } from "@/core/state"; /** - * Renderer for Kind 6 - Reposts + * Renderer for Kind 6 (Repost) and Kind 16 (Generic Repost) * Displays repost indicator with the original event embedded + * + * Kind 6: Specifically for reposting kind 1 notes (NIP-18) + * Kind 16: Generic repost for any event kind (NIP-18) */ -export function Kind6Renderer({ event }: BaseEventProps) { +export function RepostRenderer({ event }: BaseEventProps) { const { addWindow } = useGrimoire(); // Get the event being reposted (e tag) @@ -38,3 +41,7 @@ export function Kind6Renderer({ event }: BaseEventProps) { ); } + +// Export aliases for backwards compatibility and clarity +export { RepostRenderer as Kind6Renderer }; +export { RepostRenderer as Kind16Renderer }; diff --git a/src/components/nostr/kinds/index.tsx b/src/components/nostr/kinds/index.tsx index 202fb91..de4a313 100644 --- a/src/components/nostr/kinds/index.tsx +++ b/src/components/nostr/kinds/index.tsx @@ -1,7 +1,7 @@ import { Kind0Renderer } from "./Kind0Renderer"; import { Kind1Renderer } from "./Kind1Renderer"; import { Kind3Renderer } from "./Kind3Renderer"; -import { Kind6Renderer } from "./Kind6Renderer"; +import { RepostRenderer } from "./RepostRenderer"; import { Kind7Renderer } from "./Kind7Renderer"; import { Kind20Renderer } from "./Kind20Renderer"; import { Kind21Renderer } from "./Kind21Renderer"; @@ -24,8 +24,9 @@ const kindRenderers: Record> = { 0: Kind0Renderer, // Profile Metadata 1: Kind1Renderer, // Short Text Note 3: Kind3Renderer, // Contact List - 6: Kind6Renderer, // Repost + 6: RepostRenderer, // Repost 7: Kind7Renderer, // Reaction + 16: RepostRenderer, // Generic Repost 20: Kind20Renderer, // Picture (NIP-68) 21: Kind21Renderer, // Video Event (NIP-71) 22: Kind22Renderer, // Short Video (NIP-71) @@ -89,7 +90,7 @@ export { } from "./BaseEventRenderer"; export type { BaseEventProps } from "./BaseEventRenderer"; export { Kind1Renderer } from "./Kind1Renderer"; -export { Kind6Renderer } from "./Kind6Renderer"; +export { RepostRenderer, Kind6Renderer, Kind16Renderer } from "./RepostRenderer"; export { Kind7Renderer } from "./Kind7Renderer"; export { Kind20Renderer } from "./Kind20Renderer"; export { Kind21Renderer } from "./Kind21Renderer";