mirror of
https://github.com/hzrd149/nostrudel.git
synced 2025-03-29 11:12:12 +01:00
support embedded repost events
This commit is contained in:
parent
33ff50fabb
commit
ea4a9c1e61
13
src/components/embed-event/event-types/embedded-repost.tsx
Normal file
13
src/components/embed-event/event-types/embedded-repost.tsx
Normal file
@ -0,0 +1,13 @@
|
||||
import { CardProps } from "@chakra-ui/react";
|
||||
import { nip18 } from "nostr-tools";
|
||||
|
||||
import EmbeddedUnknown from "./embedded-unknown";
|
||||
import { EmbedEventPointer } from "..";
|
||||
import { NostrEvent } from "../../../types/nostr-event";
|
||||
|
||||
export default function EmbeddedRepost({ repost, ...props }: Omit<CardProps, "children"> & { repost: NostrEvent }) {
|
||||
const pointer = nip18.getRepostedEventPointer(repost);
|
||||
|
||||
if (!pointer) return <EmbeddedUnknown event={repost} {...props} />;
|
||||
return <EmbedEventPointer pointer={{ type: "nevent", data: pointer }} {...props} />;
|
||||
}
|
@ -41,6 +41,7 @@ import EmbeddedChannel from "./event-types/embedded-channel";
|
||||
import { FLARE_VIDEO_KIND } from "../../helpers/nostr/flare";
|
||||
import EmbeddedFlareVideo from "./event-types/embedded-flare-video";
|
||||
import LoadingNostrLink from "../loading-nostr-link";
|
||||
import EmbeddedRepost from "./event-types/embedded-repost";
|
||||
const EmbeddedStemstrTrack = lazy(() => import("./event-types/embedded-stemstr-track"));
|
||||
|
||||
export type EmbedProps = {
|
||||
@ -90,6 +91,9 @@ export function EmbedEvent({
|
||||
return <EmbeddedFlareVideo video={event} {...cardProps} />;
|
||||
case kinds.ChannelCreation:
|
||||
return <EmbeddedChannel channel={event} {...cardProps} />;
|
||||
case kinds.Repost:
|
||||
case kinds.GenericRepost:
|
||||
return <EmbeddedRepost repost={event} {...cardProps} />;
|
||||
}
|
||||
|
||||
return <EmbeddedUnknown event={event} {...cardProps} />;
|
||||
|
Loading…
x
Reference in New Issue
Block a user