feat: SW-1588 Optimized review comments

This commit is contained in:
Hrishikesh Vaipurkar
2025-02-24 18:54:31 +01:00
parent 2a51107500
commit 7fe217826d
4 changed files with 29 additions and 26 deletions

View File

@@ -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">

View File

@@ -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;
}

View File

@@ -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
} }

View File

@@ -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}
/>
)
}