/* Browse page: category filters + program grid. */ const { ShowCard, Tag } = window.NashvillePBSDesignSystem_8fe663; function BrowsePage({ onOpen, query }) { const cats = ['All','Local','News','Nature','Arts','Kids']; const [cat, setCat] = React.useState('All'); let shows = cat === 'All' ? SHOWS : SHOWS.filter(s => s.cat === cat); if (query) shows = shows.filter(s => s.title.toLowerCase().includes(query.toLowerCase())); return (

{query ? `Results for \u201c${query}\u201d` : 'Browse all programs'}

{shows.length} program{shows.length!==1?'s':''} · free to stream

{cats.map(c => setCat(c)}>{c})}
{shows.map(s => ( onOpen(s.id)} /> ))}
{shows.length===0 &&

No programs match your search.

}
); } Object.assign(window, { BrowsePage });