/** * FavoritesList - Scrollable list of favorite items */ import type { FavoriteItem } from '@/lib/types'; import { FavoritesItem } from './FavoritesItem'; import { FavoritesEmptyState } from './FavoritesEmptyState'; import { keepRenderableFavorites } from '@/lib/utils/sync-records'; interface FavoritesListProps { favorites: FavoriteItem[]; onRemove: (videoId: string | number, source: string) => void; isPremium?: boolean; } export function FavoritesList({ favorites, onRemove, isPremium = false }: FavoritesListProps) { const renderableFavorites = keepRenderableFavorites(favorites); if (renderableFavorites.length === 0) { return ; } return (
{renderableFavorites.map((item) => ( onRemove(item.videoId, item.source)} isPremium={isPremium} /> ))}
); }