feat: SW-1588 Optimized review comments
This commit is contained in:
@@ -139,8 +139,7 @@ export default function PriceList({
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{showOvertakingPrice && (
|
{showOvertakingPrice && (
|
||||||
<div className={styles.priceRow}>
|
<div className={`${styles.priceRow} ${styles.alignEnd}`}>
|
||||||
<dt></dt>
|
|
||||||
<dd>
|
<dd>
|
||||||
<div className={styles.priceStriked}>
|
<div className={styles.priceStriked}>
|
||||||
<Subtitle type="two" color="uiTextHighContrast">
|
<Subtitle type="two" color="uiTextHighContrast">
|
||||||
|
|||||||
@@ -27,3 +27,7 @@
|
|||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: var(--typography-Caption-Regular-fontSize);
|
font-size: var(--typography-Caption-Regular-fontSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.alignEnd {
|
||||||
|
justify-content: flex-end;
|
||||||
|
}
|
||||||
|
|||||||
@@ -146,7 +146,6 @@ export default function RoomCard({ roomConfiguration }: RoomCardProps) {
|
|||||||
const payLater = intl.formatMessage({ id: "Pay later" })
|
const payLater = intl.formatMessage({ id: "Pay later" })
|
||||||
const payNow = intl.formatMessage({ id: "Pay now" })
|
const payNow = intl.formatMessage({ id: "Pay now" })
|
||||||
|
|
||||||
// Possible undefined rate definition carried from roomsAvailability possibility of null
|
|
||||||
function getRate(rateCode: string) {
|
function getRate(rateCode: string) {
|
||||||
switch (rateCode) {
|
switch (rateCode) {
|
||||||
case "change":
|
case "change":
|
||||||
@@ -219,7 +218,7 @@ export default function RoomCard({ roomConfiguration }: RoomCardProps) {
|
|||||||
const isBookingCodeRate =
|
const isBookingCodeRate =
|
||||||
product.productType.public.rateType !== RateTypeEnum.Regular
|
product.productType.public.rateType !== RateTypeEnum.Regular
|
||||||
if (isBookingCodeRate) {
|
if (isBookingCodeRate) {
|
||||||
//@ts-ignore (publicRate || memberRate) types as `string | undefined` instead of just `string`
|
// @ts-expect-error: <(publicRate || memberRate) types as `string | undefined` instead of just `string`>
|
||||||
return getRate(publicRate || memberRate)
|
return getRate(publicRate || memberRate)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -358,7 +357,7 @@ export default function RoomCard({ roomConfiguration }: RoomCardProps) {
|
|||||||
product.productType.public.rateCode ||
|
product.productType.public.rateCode ||
|
||||||
(selectedRate?.product.productType.member?.rateCode ===
|
(selectedRate?.product.productType.member?.rateCode ===
|
||||||
product.productType.member?.rateCode &&
|
product.productType.member?.rateCode &&
|
||||||
// to handle undefined === undefined scenarios in booking code rates
|
// handle undefined === undefined scenarios in booking code rates
|
||||||
product.productType.member?.rateCode !== undefined)
|
product.productType.member?.rateCode !== undefined)
|
||||||
return (
|
return (
|
||||||
<FlexibilityOption
|
<FlexibilityOption
|
||||||
@@ -377,7 +376,7 @@ export default function RoomCard({ roomConfiguration }: RoomCardProps) {
|
|||||||
title={rate.title}
|
title={rate.title}
|
||||||
priceInformation={rateDefinition?.generalTerms}
|
priceInformation={rateDefinition?.generalTerms}
|
||||||
rateTitle={
|
rateTitle={
|
||||||
product.productType.public.rateCode !== RateTypeEnum.Regular
|
product.productType.public.rateType !== RateTypeEnum.Regular
|
||||||
? rateDefinition?.title
|
? rateDefinition?.title
|
||||||
: undefined
|
: undefined
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ import { AvailabilityEnum } from "@/types/components/hotelReservation/selectHote
|
|||||||
import { AlertTypeEnum } from "@/types/enums/alert"
|
import { AlertTypeEnum } from "@/types/enums/alert"
|
||||||
import { BookingCodeFilterEnum } from "@/types/enums/bookingCodeFilter"
|
import { BookingCodeFilterEnum } from "@/types/enums/bookingCodeFilter"
|
||||||
import { RateTypeEnum } from "@/types/enums/rateType"
|
import { RateTypeEnum } from "@/types/enums/rateType"
|
||||||
import type { RoomConfiguration } from "@/types/trpc/routers/hotel/roomAvailability"
|
|
||||||
|
|
||||||
export default function RoomSelectionPanel() {
|
export default function RoomSelectionPanel() {
|
||||||
const { rooms } = useRoomContext()
|
const { rooms } = useRoomContext()
|
||||||
@@ -118,26 +117,28 @@ export default function RoomSelectionPanel() {
|
|||||||
<RoomTypeFilter />
|
<RoomTypeFilter />
|
||||||
{showBookingCodeFilter ? <BookingCodeFilter /> : null}
|
{showBookingCodeFilter ? <BookingCodeFilter /> : null}
|
||||||
<ul className={styles.roomList}>
|
<ul className={styles.roomList}>
|
||||||
{/* Show either Booking code filtered rooms or all the rooms */}
|
{/* Show either Booking code filtered rooms or all the rooms */}
|
||||||
{showAllRooms
|
{showAllRooms
|
||||||
? rooms.map((roomConfiguration) => RoomCardWrap(roomConfiguration))
|
? rooms.map((roomConfiguration) => (
|
||||||
: activeCodeFilter === BookingCodeFilterEnum.Discounted
|
<RoomCard
|
||||||
? bookingCodeDiscountedRooms.map((roomConfiguration) =>
|
key={roomConfiguration.roomTypeCode}
|
||||||
RoomCardWrap(roomConfiguration)
|
roomConfiguration={roomConfiguration}
|
||||||
)
|
/>
|
||||||
: regularRateRooms.map((roomConfiguration) =>
|
))
|
||||||
RoomCardWrap(roomConfiguration)
|
: activeCodeFilter === BookingCodeFilterEnum.Discounted
|
||||||
)}
|
? bookingCodeDiscountedRooms.map((roomConfiguration) => (
|
||||||
|
<RoomCard
|
||||||
|
key={roomConfiguration.roomTypeCode}
|
||||||
|
roomConfiguration={roomConfiguration}
|
||||||
|
/>
|
||||||
|
))
|
||||||
|
: regularRateRooms.map((roomConfiguration) => (
|
||||||
|
<RoomCard
|
||||||
|
key={roomConfiguration.roomTypeCode}
|
||||||
|
roomConfiguration={roomConfiguration}
|
||||||
|
/>
|
||||||
|
))}
|
||||||
</ul>
|
</ul>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
function RoomCardWrap(roomConfiguration: RoomConfiguration) {
|
|
||||||
return (
|
|
||||||
<RoomCard
|
|
||||||
key={roomConfiguration.roomTypeCode}
|
|
||||||
roomConfiguration={roomConfiguration}
|
|
||||||
/>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user