"use client"
import { usePathname } from "next/navigation"
import { useIntl } from "react-intl"
import { serializeBookingSearchParams } from "@scandic-hotels/booking-flow/utils/url"
import { RateTypeEnum } from "@scandic-hotels/common/constants/rateType"
import ButtonLink from "@scandic-hotels/design-system/ButtonLink"
import { isWebview } from "@/constants/routes/webviews"
import { useMyStayStore } from "@/stores/my-stay"
import useLang from "@/hooks/useLang"
import CustomerSupport from "./CustomerSupport"
import type { BookingWidgetSearchData } from "@scandic-hotels/booking-flow/BookingWidget"
export default function NotUpcoming() {
const intl = useIntl()
const pathname = usePathname()
const { rooms, mainRoom } = useMyStayStore((state) => ({
rooms: state.rooms,
mainRoom: state.mainRoom,
}))
const lang = useLang()
const bookingData: BookingWidgetSearchData = {
hotelId: mainRoom.hotelId,
rooms: [mainRoom, ...rooms].map((room) => ({
adults: room.adults,
childrenInRoom: room.childrenInRoom,
})),
}
if (mainRoom.bookingCode) {
bookingData.bookingCode = mainRoom.bookingCode
}
if (mainRoom.bookingType === RateTypeEnum.Redemption) {
bookingData.searchType = "redemption"
}
const rebookUrl = serializeBookingSearchParams(bookingData)
const url = `/${lang}?${rebookUrl}`
return (
<>
{!isWebview(pathname) && (
{intl.formatMessage({
defaultMessage: "Rebook",
id: "myStay.referenceCard.actions.rebook",
})}
)}
>
)
}