memoize Timeline subject

This commit is contained in:
Martti Malmi
2024-01-13 15:39:29 +02:00
parent 57d4d6b2c6
commit 7935d3d86a
7 changed files with 46 additions and 31 deletions

View File

@ -7,11 +7,17 @@ import { useParams } from "react-router-dom";
import Timeline from "@/Components/Feed/Timeline";
import PageSpinner from "@/Components/PageSpinner";
import { Hour } from "@/Utils/Const";
import {useMemo} from "react";
export function ListFeedPage() {
const { id } = useParams();
const link = parseNostrLink(unwrap(id));
const { data } = useEventFeed(link);
const subject = useMemo(() => ({
type: "pubkey",
items: pubkeys,
discriminator: "list-feed",
}), [pubkeys]);
if (!data) return <PageSpinner />;
if (data.kind !== EventKind.ContactList && data.kind !== EventKind.FollowSet) {
@ -24,11 +30,7 @@ export function ListFeedPage() {
const pubkeys = dedupe(data.tags.filter(a => a[0] === "p").map(a => a[1]));
return (
<Timeline
subject={{
type: "pubkey",
items: pubkeys,
discriminator: "list-feed",
}}
subject={subject}
postsOnly={true}
method="TIME_RANGE"
window={Hour * 12}