tunein-cli 0.6.0

Browse and listen to thousands of radio stations across the globe right from your terminal 🌎 📻 🎵✨
import { createRootRoute, createRoute, createRouter } from '@tanstack/react-router'
import { Layout } from './components/Layout'
import { HomePage } from './pages/Home'
import { BrowsePage } from './pages/Browse'
import { FavoritesPage } from './pages/Favorites'

const rootRoute = createRootRoute({ component: Layout })

const indexRoute = createRoute({
  getParentRoute: () => rootRoute,
  path: '/',
  component: HomePage,
})

export const browseRoute = createRoute({
  getParentRoute: () => rootRoute,
  path: '/browse/$category',
  component: BrowsePage,
  validateSearch: (search: Record<string, unknown>): { name?: string } =>
    typeof search.name === 'string' ? { name: search.name } : {},
})

const favoritesRoute = createRoute({
  getParentRoute: () => rootRoute,
  path: '/favorites',
  component: FavoritesPage,
})

const routeTree = rootRoute.addChildren([indexRoute, browseRoute, favoritesRoute])

export const router = createRouter({ routeTree })

declare module '@tanstack/react-router' {
  interface Register {
    router: typeof router
  }
}