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) => (
))}
);
}