"use client" import { useRouter } from "next/navigation" import { useTransition } from "react" import { useIntl } from "react-intl" import { selectRate } from "@/constants/routes/hotelReservation" import { useRateSelectionStore } from "@/stores/select-rate/rate-selection" import { CheckIcon, EditIcon } from "@/components/Icons" import Button from "@/components/TempDesignSystem/Button" import Footnote from "@/components/TempDesignSystem/Text/Footnote" import Subtitle from "@/components/TempDesignSystem/Text/Subtitle" import useLang from "@/hooks/useLang" import ToggleSidePeek from "./ToggleSidePeek" import styles from "./selectedRoom.module.css" import type { SelectedRoomProps } from "@/types/components/hotelReservation/enterDetails/room" export default function SelectedRoom({ hotelId, roomType, roomTypeCode, rateDescription, roomIndex, searchParamsStr, }: SelectedRoomProps) { const intl = useIntl() const lang = useLang() const router = useRouter() const [isPending, startTransition] = useTransition() const { modifyRate } = useRateSelectionStore() function changeRoom() { modifyRate(roomIndex) startTransition(() => { const newSearchParams = new URLSearchParams(searchParamsStr) newSearchParams.set("modifyRateIndex", roomIndex.toString()) router.push(`${selectRate(lang)}?${newSearchParams.toString()}`) }) } return (