snort/src/feed/TimelineFeed.js

19 lines
580 B
JavaScript
Raw Normal View History

2022-12-30 23:35:02 +00:00
import { useCallback, useMemo } from "react";
2022-12-29 22:23:41 +00:00
import EventKind from "../nostr/EventKind";
import { Subscriptions } from "../nostr/Subscriptions";
2022-12-30 23:35:02 +00:00
import useSubscription from "./Subscription";
2022-12-18 14:51:47 +00:00
2022-12-28 23:28:28 +00:00
export default function useTimelineFeed(pubKeys) {
2022-12-30 23:35:02 +00:00
const sub = useMemo(() => {
let sub = new Subscriptions();
sub.Id = "timeline";
sub.Authors = new Set(pubKeys);
sub.Kinds.add(EventKind.TextNote);
sub.Limit = 10;
2022-12-18 14:51:47 +00:00
2022-12-30 23:35:02 +00:00
return sub;
}, [pubKeys]);
2022-12-18 14:51:47 +00:00
2022-12-30 23:35:02 +00:00
const { notes } = useSubscription(sub, { leaveOpen: true });
2022-12-28 23:28:28 +00:00
return { notes };
2022-12-18 14:51:47 +00:00
}