import { dt } from "@scandic-hotels/common/dt" import ButtonLink from "@scandic-hotels/design-system/ButtonLink" import { Divider } from "@scandic-hotels/design-system/Divider" import { MaterialIcon } from "@scandic-hotels/design-system/Icons/MaterialIcon" import Image from "@scandic-hotels/design-system/Image" import { Typography } from "@scandic-hotels/design-system/Typography" import { getIntl } from "@/i18n" import { getLang } from "@/i18n/serverContext" import { getDaysUntilText } from "../utils/getDaysUntilText" import styles from "./nextStay.module.css" import type { Stay } from "@scandic-hotels/trpc/routers/user/output" interface NextStayContentProps { nextStay: Stay } export default async function NextStayContent({ nextStay, }: NextStayContentProps) { const lang = await getLang() const intl = await getIntl() const { attributes } = nextStay const { checkinDate, checkoutDate, confirmationNumber, hotelInformation, isWebAppOrigin, bookingUrl, } = attributes const daysUntilText = getDaysUntilText(checkinDate, lang, intl) return (
{
{intl.formatMessage({ id: "nextStay.myStayAt", defaultMessage: "My Stay at", })} {hotelInformation.hotelName}
{daysUntilText}

{hotelInformation.cityName}

{intl.formatMessage({ id: "common.bookingNumber", defaultMessage: "Booking number", })}

{confirmationNumber}

{intl.formatMessage({ id: "common.dates", defaultMessage: "Dates", })} {/* eslint-disable-next-line formatjs/no-literal-string-in-jsx */} {"→"}
{isWebAppOrigin ? (
{intl.formatMessage({ id: "nextStay.seeDetailsAndExtras", defaultMessage: "See details & extras", })}
) : null}
) }