Files
web/packages/design-system/lib/components/HotelCard/HotelPointsRow/index.tsx
Hrishikesh Vaipurkar 78ede453a2 Merged in feat/SW-3526-show-sas-eb-points-rate-in- (pull request #2933)
feat(SW-3526): Show EB points rate and label in booking flow

* feat(SW-3526): Show EB points rate and label in booking flow

* feat(SW-3526) Optimized points currency code

* feat(SW-3526) Removed extra multiplication for token expiry after rebase

* feat(SW-3526): Updated to exhaustive check and thow if type error

Approved-by: Anton Gunnarsson
2025-10-15 06:54:44 +00:00

48 lines
1.2 KiB
TypeScript

import { useIntl } from 'react-intl'
import Caption from '../../Caption'
import Subtitle from '../../Subtitle'
import styles from './hotelPointsRow.module.css'
import { CurrencyEnum } from '@scandic-hotels/common/constants/currency'
export type PointsRowProps = {
pointsPerStay: number
additionalPricePerStay?: number
additionalPriceCurrency?: string
pointsCurrency?: CurrencyEnum
}
export function HotelPointsRow({
pointsPerStay,
additionalPricePerStay,
additionalPriceCurrency,
pointsCurrency,
}: PointsRowProps) {
const intl = useIntl()
return (
<div className={styles.poinstRow}>
<Subtitle type="two" color="uiTextHighContrast">
{pointsPerStay}
</Subtitle>
<Caption color="uiTextHighContrast">
{pointsCurrency ??
intl.formatMessage({
defaultMessage: 'Points',
})}
</Caption>
{additionalPricePerStay ? (
<>
{'+'}
<Subtitle type="two" color="uiTextHighContrast">
{additionalPricePerStay}
</Subtitle>
<Caption color="uiTextHighContrast">
{additionalPriceCurrency}
</Caption>
</>
) : null}
</div>
)
}