import { useQuery, useQueryClient } from "@tanstack/react-query"; import { getQueue, toggleQueue } from "../api"; import VideoCard from "../components/VideoCard"; export default function QueuePage() { const qc = useQueryClient(); const { data: videos = [], isLoading } = useQuery({ queryKey: ["queue"], queryFn: () => getQueue().then((r) => r.data), staleTime: 30_000, }); return (

Watch Later

{isLoading ? (
) : videos.length === 0 ? (

Queue is empty

Hit the queue icon on any video to save it for later.

) : ( <>

{videos.length} video{videos.length !== 1 ? "s" : ""} saved

{videos.map((v) => ( { toggleQueue(v.id).then(() => qc.invalidateQueries({ queryKey: ["queue"] })); }} /> ))}
)}
); }