import { useState, useMemo, ChangeEvent } from "react"; import { useSelector } from "react-redux"; import { FormattedMessage } from "react-intl"; import { dedupeByPubkey } from "Util"; import Note from "Element/Note"; import { HexKey, TaggedRawEvent } from "@snort/nostr"; import { useUserProfiles } from "Feed/ProfileFeed"; import { RootState } from "State/Store"; import messages from "./messages"; interface BookmarksProps { pubkey: HexKey; bookmarks: TaggedRawEvent[]; related: TaggedRawEvent[]; } const Bookmarks = ({ pubkey, bookmarks, related }: BookmarksProps) => { const [onlyPubkey, setOnlyPubkey] = useState("all"); const loginPubKey = useSelector((s: RootState) => s.login.publicKey); const ps = useMemo(() => { return dedupeByPubkey(bookmarks).map(ev => ev.pubkey); }, [bookmarks]); const profiles = useUserProfiles(ps); function renderOption(p: HexKey) { const profile = profiles?.get(p); return profile ? : null; } return (
{bookmarks .filter(b => (onlyPubkey === "all" ? true : b.pubkey === onlyPubkey)) .map(n => { return ( ); })}
); }; export default Bookmarks;