feat: reposts

This commit is contained in:
Alejandro Gómez
2025-12-12 12:12:48 +01:00
parent 16158e7045
commit 2aac7383f3
2 changed files with 13 additions and 5 deletions

View File

@@ -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) {
</BaseEventContainer>
);
}
// Export aliases for backwards compatibility and clarity
export { RepostRenderer as Kind6Renderer };
export { RepostRenderer as Kind16Renderer };

View File

@@ -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<number, React.ComponentType<BaseEventProps>> = {
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";