diff --git a/src/renderer/src/components/feed-list.tsx b/src/renderer/src/components/feed-list.tsx index 2a3f33dae..1f9aa10aa 100644 --- a/src/renderer/src/components/feed-list.tsx +++ b/src/renderer/src/components/feed-list.tsx @@ -12,14 +12,14 @@ export function FeedList({ type }: { type: string }) {
{type}
{feeds.data?.unread}
- {Object.keys(feeds.data?.list || {}).map((category) => ( - + {feeds.data?.list.map((category) => ( + ))} ) } -function FeedCategory({ name, data }: { name: string; data: any }) { +function FeedCategory({ data }: { data: any }) { const [open, setOpen] = useState(false) return ( @@ -30,7 +30,7 @@ function FeedCategory({ name, data }: { name: string; data: any }) {
- {name} + {data.name}
{!!data.unread &&
{data.unread}
}
@@ -42,7 +42,6 @@ function FeedCategory({ name, data }: { name: string; data: any }) { duration: 0.2, ease: 'easeInOut', }} - key={name} className="overflow-hidden" initial={{ height: 0, diff --git a/src/renderer/src/lib/feeds.ts b/src/renderer/src/lib/feeds.ts index 3a1fa9842..b4cc4303d 100644 --- a/src/renderer/src/lib/feeds.ts +++ b/src/renderer/src/lib/feeds.ts @@ -32,6 +32,14 @@ export const useFeeds = () => categories.list[feed.category.title].unread += unread categories.unread += unread }) - return categories + const list = Object.entries(categories.list).map(([name, list]: any) => ({ + name, + list: list.list.sort((a, b) => b.unread - a.unread), + unread: list.unread + })).sort((a, b) => b.unread - a.unread) + return { + list, + unread: categories.unread + } } })