import { cookies } from "next/headers" import { notFound } from "next/navigation" import { FamilyAndFriendsCodes } from "@/constants/booking" import { getHotel } from "@/lib/trpc/memoizedRequests" import HotelInfoCard from "@/components/HotelReservation/SelectRate/HotelInfoCard" import { RoomsContainer } from "@/components/HotelReservation/SelectRate/RoomsContainer" import { getHotelSearchDetails } from "@/utils/hotelSearchDetails" import FnFNotAllowedAlert from "../FnFNotAllowedAlert/FnFNotAllowedAlert" import AvailabilityError from "./AvailabilityError" import Tracking from "./Tracking" import type { SelectRateSearchParams } from "@/types/components/hotelReservation/selectRate/selectRate" import type { Lang } from "@/constants/languages" import type { SelectHotelParams } from "@/utils/url" export default async function SelectRatePage({ lang, booking, }: { lang: Lang booking: SelectHotelParams }) { const searchDetails = await getHotelSearchDetails(booking) if (!searchDetails?.hotel) { return notFound() } const { adultsInRoom, childrenInRoom, hotel, noOfRooms, bookingCode } = searchDetails const hotelData = await getHotel({ hotelId: hotel.id, isCardOnlyPayment: false, language: lang, }) if (!hotelData) { return notFound() } let isInValidFNF = false if (bookingCode && FamilyAndFriendsCodes.includes(bookingCode)) { const cookieStore = await cookies() isInValidFNF = cookieStore.get("sc")?.value !== "1" } return ( <> {isInValidFNF ? ( ) : ( )} ) }