Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/llms-txt-hub / apps/web/hooks/use-favorites-filter.ts |
| Date | Not specified in source |
| Repository | Janady13/llms-txt-hub |
| Revision | e0f4bf978d4df168369c7601d9c5f5ea89e84377 |
| Branch | main |
| Path or archive member | apps/web/hooks/use-favorites-filter.ts |
| Original SHA-256 | 89a1cdda0478ee22eee505c3672e44bc2b15a7220ecbe796ec296a590d1a5776 |
| Git blob SHA | dd0e4a8db5b37308d70b80bfb9499fc57b5235e8 |
| Reading-copy SHA-256 | 89a1cdda0478ee22eee505c3672e44bc2b15a7220ecbe796ec296a590d1a5776 |
Recovered source transcript
Download complete source text ↓23 lines · 0.6 KB
'use client'
import { useMemo } from 'react'
import { useFavorites } from '@/contexts/favorites-context'
import type { WebsiteMetadata } from '@/lib/content-loader'
/**
* Hook that filters a list of websites to only include user favorites
*/
export function useFavoritesFilter(websites: WebsiteMetadata[]) {
const { favorites } = useFavorites()
const favoriteWebsites = useMemo(() => {
return websites.filter(website => favorites.includes(website.slug))
}, [websites, favorites])
return {
favoriteWebsites,
hasFavorites: favorites.length > 0,
favoritesCount: favorites.length
}
}