Merged in fix/loy-589-update-cancellation-labels (pull request #3495)

fix(LOY-589): Split cancellation label into two

* Split cancellation label into two

* Fix copy


Approved-by: Bianca Widstam
This commit is contained in:
Anton Gunnarsson
2026-01-30 08:29:35 +00:00
parent 0919134f88
commit 77eabac038
2 changed files with 31 additions and 20 deletions

View File

@@ -1,11 +1,11 @@
import { useIntl } from "react-intl"
import { CancellationRuleEnum } from "@scandic-hotels/common/constants/booking"
import { changeOrCancelDateFormat } from "@scandic-hotels/common/constants/dateFormats"
import { dt } from "@scandic-hotels/common/dt"
import { useMyStayStore } from "@/stores/my-stay"
import { hasModifiableRate } from "@/components/HotelReservation/MyStay/utils"
import useLang from "@/hooks/useLang"
import Row from "./Row"
@@ -14,14 +14,19 @@ export default function ModifyBy() {
const intl = useIntl()
const lang = useLang()
const { checkInDate, isModifyable } = useMyStayStore((state) => ({
checkInDate: state.bookedRoom.checkInDate,
isModifyable: hasModifiableRate(
state.bookedRoom.rateDefinition.cancellationRule
),
}))
const { checkInDate, isFlexBooking, isChangeBooking } = useMyStayStore(
(state) => ({
checkInDate: state.bookedRoom.checkInDate,
isFlexBooking:
state.bookedRoom.rateDefinition.cancellationRule ===
CancellationRuleEnum.CancellableBefore6PM,
isChangeBooking:
state.bookedRoom.rateDefinition.cancellationRule ===
CancellationRuleEnum.Changeable,
})
)
if (!isModifyable) {
if (!isFlexBooking && !isChangeBooking) {
return null
}
@@ -38,14 +43,15 @@ export default function ModifyBy() {
}
)
return (
<Row
icon="refresh"
text={text}
title={intl.formatMessage({
const title = isChangeBooking
? intl.formatMessage({
id: "booking.changeTitle",
defaultMessage: "Change",
})
: intl.formatMessage({
id: "booking.changeOrCancel",
defaultMessage: "Change or cancel",
})}
/>
)
})
return <Row icon="refresh" text={text} title={title} />
}

View File

@@ -198,10 +198,15 @@ export function Room({
{isFlexBooking || isChangeBooking ? (
<li className={styles.listItem}>
<p className={styles.label}>
{intl.formatMessage({
id: "booking.changeOrCancel",
defaultMessage: "Change or cancel",
})}
{isChangeBooking
? intl.formatMessage({
id: "booking.changeTitle",
defaultMessage: "Change",
})
: intl.formatMessage({
id: "booking.changeOrCancel",
defaultMessage: "Change or cancel",
})}
</p>
<p>
{intl.formatMessage(