"use client"; import { usePoll } from "@/lib/use-poll"; import type { JellyfinStatus } from "@/lib/types"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { StatusBadge } from "./status-badge"; export function JellyfinCard() { const { data } = usePoll("/api/jellyfin/status", 30000); return ( Jellyfin {!data ? (

Loading...

) : ( <>

Now Playing

{data.active_sessions.length > 0 ? (
{data.active_sessions.map((s, i) => (

{s.title}

{s.user} · {s.device}

))}
) : (

No active streams

)}

Libraries

{data.libraries.map((lib) => (
{lib.name}
))}
{data.idle_sessions > 0 && (

{data.idle_sessions} idle session {data.idle_sessions > 1 ? "s" : ""}

)} )} ); }