"use client" import { useIntl } from "react-intl" import { useBookingConfirmationStore } from "@/stores/booking-confirmation" import { CreditCardAddIcon } from "@/components/Icons" import SkeletonShimmer from "@/components/SkeletonShimmer" import Button from "@/components/TempDesignSystem/Button" import Body from "@/components/TempDesignSystem/Text/Body" import Subtitle from "@/components/TempDesignSystem/Text/Subtitle" import { formatPrice } from "@/utils/numberFormatting" import styles from "./paymentDetails.module.css" export default function PaymentDetails() { const intl = useIntl() const rooms = useBookingConfirmationStore((state) => state.rooms) const currencyCode = useBookingConfirmationStore( (state) => state.currencyCode ) const hasAllRoomsLoaded = rooms.every((room) => room) const grandTotal = rooms.reduce((acc, room) => { const reservationTotalPrice = room?.totalPrice || 0 return acc + reservationTotalPrice }, 0) return (
{intl.formatMessage({ id: "Payment details" })}
{hasAllRoomsLoaded ? ( {intl.formatMessage( { id: "{amount} has been paid" }, { amount: formatPrice(intl, grandTotal, currencyCode), } )} ) : ( )}
) }