handle muting repost events

dont show mute events on image view
This commit is contained in:
hzrd149
2023-09-26 13:47:53 -05:00
parent edc4e92c5e
commit 11a0da31ff
2 changed files with 6 additions and 1 deletions

View File

@@ -14,6 +14,7 @@ import { useReadRelayUrls } from "../../../hooks/use-client-relays";
import { useRegisterIntersectionEntity } from "../../../providers/intersection-observer";
import useSingleEvent from "../../../hooks/use-single-event";
import { EmbedEvent } from "../../embed-event";
import useUserMuteFilter from "../../../hooks/use-user-mute-filter";
function parseHardcodedNoteContent(event: NostrEvent) {
const json = safeJson(event.content, null);
@@ -31,15 +32,17 @@ export default function RepostNote({ event }: { event: NostrEvent }) {
const ref = useRef<HTMLDivElement | null>(null);
useRegisterIntersectionEntity(ref, event.id);
const muteFilter = useUserMuteFilter();
const hardCodedNote = parseHardcodedNoteContent(event);
const [_, eventId, relay] = event.tags.find(isETag) ?? [];
const readRelays = useReadRelayUrls(relay ? [relay] : []);
const loadedNote = useSingleEvent(eventId, readRelays);
const note = hardCodedNote || loadedNote;
if (note && muteFilter(note)) return;
return (
<TrustProvider event={event}>
<Flex gap="2" direction="column" ref={ref}>

View File

@@ -13,6 +13,7 @@ import { useRegisterIntersectionEntity } from "../../../providers/intersection-o
import { Photo } from "react-photo-album";
import { NostrEvent } from "../../../types/nostr-event";
import { getEventUID } from "../../../helpers/nostr/events";
import { Kind } from "nostr-tools";
function GalleryImage({ event, ...props }: EmbeddedImageProps & { event: NostrEvent }) {
const ref = useRef<HTMLImageElement | null>(null);
@@ -42,6 +43,7 @@ export default function MediaTimeline({ timeline }: { timeline: TimelineLoader }
var images: PhotoWithEvent[] = [];
for (const event of events) {
if (event.kind === Kind.Repost) continue;
const urls = event.content.matchAll(getMatchLink());
let i = 0;