import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import api from "../lib/api"; import { Tv } from "lucide-react"; export default function Shows() { const [shows, setShows] = useState([]); const [featured, setFeatured] = useState(null); const [continueEps, setContinueEps] = useState([]); const nav = useNavigate(); useEffect(() => { (async () => { const [s, f, c] = await Promise.all([ api.get("/shows"), api.get("/shows/featured").catch(() => ({ data: null })), api.get("/progress/episodes/continue").catch(() => ({ data: [] })), ]); setShows(s.data); setFeatured(f.data); setContinueEps(c.data); })(); }, []); if (shows.length === 0) { return (

No TV shows yet

Configure Sonarr in Settings and import your library.

Sonarr Import
); } return (
Series

Your Series

{continueEps.length > 0 && (

Resume

{continueEps.map(({ episode, show, progress }) => { const pct = progress.duration_seconds ? Math.min(100, (progress.position_seconds / progress.duration_seconds) * 100) : 0; return ( ); })}
)}
{shows.map((s) => ( ))}
); }