Files
web/apps/scandic-web/components/Blocks/DynamicContent/Overview/MembershipOverviewCard/SasBoostStatus.tsx
Chuma Mcphoy (We Ahead) cc99f26727 Merged in fix/LOY-358-SAS-expiry-date (pull request #2813)
fix(LOY-358): Proper SAS tier expiration date check

* fix(LOY-358): Proper SAS tier expiration date check


Approved-by: Erik Tiekstra
2025-09-18 13:39:37 +00:00

47 lines
1.2 KiB
TypeScript

import { dt } from "@scandic-hotels/common/dt"
import { Divider } from "@scandic-hotels/design-system/Divider"
import { Typography } from "@scandic-hotels/design-system/Typography"
import { getLang } from "@/i18n/serverContext"
import { getSasTierExpirationDate } from "@/utils/sas"
import styles from "./membershipOverviewCard.module.css"
import type { EurobonusMembership } from "@scandic-hotels/trpc/types/user"
import type { IntlShape } from "react-intl"
interface SasBoostStatusProps {
sasMembership: EurobonusMembership
intl: IntlShape
}
export default async function SasBoostStatus({
sasMembership,
intl,
}: SasBoostStatusProps) {
const lang = await getLang()
const tierExpirationDate = getSasTierExpirationDate(sasMembership)
if (!tierExpirationDate || sasMembership.boostedByScandic) {
return null
}
const sasBoostExpiryText = intl.formatMessage(
{
defaultMessage: "Boosted by SAS until {date}",
},
{
date: dt(tierExpirationDate).locale(lang).format("D MMM YYYY"),
}
)
return (
<>
<Divider variant="vertical" color="Border/Divider/Accent" />
<Typography variant="Label/xsRegular">
<span className={styles.sasBoostText}>{sasBoostExpiryText}</span>
</Typography>
</>
)
}