import { CalendarIcon } from "@heroicons/react/outline"; import { useRouter } from "next/router"; import { inferQueryInput, trpc } from "@lib/trpc"; import BookingsShell from "@components/BookingsShell"; import EmptyScreen from "@components/EmptyScreen"; import Loader from "@components/Loader"; import Shell from "@components/Shell"; import BookingListItem from "@components/booking/BookingListItem"; import { Alert } from "@components/ui/Alert"; type BookingListingStatus = inferQueryInput<"viewer.bookings">["status"]; export default function Bookings() { const router = useRouter(); const status = router.query?.status as BookingListingStatus; const query = trpc.useQuery(["viewer.bookings", { status }]); const bookings = query.data; return (
{query.status === "error" && ( )} {query.status === "loading" && } {bookings && (bookings.length === 0 ? ( ) : (
{bookings.map((booking) => ( ))}
))}
); }