'use client'; import Image from 'next/image'; import Link from 'next/link'; import { Play, Info } from 'lucide-react'; import { Subject, BannerItem } from '@/lib/api'; interface HeroProps { item: BannerItem | Subject; } export default function Hero({ item }: HeroProps) { // Prefer 'image' (often wider/better for banner) over 'cover', or fallback. // Note: API types might vary. Safe access. const imageUrl = (item as any).image?.url || (item as any).cover?.url || (item as any).subject?.cover?.url; const title = item.title || (item as any).subject?.title; const description = (item as any).description || (item as any).subject?.description || "No description available."; let id = item.subjectId || (item as any).subject?.subjectId; if (typeof id !== 'string') { console.warn("Hero item ID is not a string:", id); id = ""; } if (!imageUrl) return null; return (
{description}