feat: prevent users from selecting the same room when there is no vacancy for it

This commit is contained in:
Simon Emanuelsson
2025-05-16 10:39:30 +02:00
committed by Michael Zetterberg
parent 4f0c61f68f
commit 1f1bcd480b
6 changed files with 93 additions and 22 deletions

View File

@@ -0,0 +1,14 @@
import { AvailabilityEnum } from "@/types/components/hotelReservation/selectHotel/selectHotel"
import type { RoomConfiguration } from "@/types/trpc/routers/hotel/roomAvailability"
// Used to ensure `Available` rooms
// are shown before all `NotAvailable`
const statusLookup = {
[AvailabilityEnum.Available]: 1,
[AvailabilityEnum.NotAvailable]: 2,
}
export function sortRoomConfigs(a: RoomConfiguration, b: RoomConfiguration) {
// @ts-expect-error - array indexing
return statusLookup[a.status] - statusLookup[b.status]
}