feat(sw-453): fixed pr comments and default filter

This commit is contained in:
Pontus Dreij
2024-10-28 17:04:24 +01:00
parent c14b413a34
commit 62cf5dab80
17 changed files with 87 additions and 55 deletions

View File

@@ -1,3 +1,4 @@
import { differenceInCalendarDays } from "date-fns"
import { useIntl } from "react-intl"
import Button from "@/components/TempDesignSystem/Button"
@@ -27,12 +28,12 @@ export default function RateSummary({
} = rateSummary
const priceToShow = isUserLoggedIn ? member : publicRate
const isPetRoomSelect = features.some(
(feature) => feature.code === RoomPackageCodeEnum.PETR
const isPetRoomSelected = features.some(
(feature) => feature.code === RoomPackageCodeEnum.PET_ROOM
)
const petRoomPackage = packages.find(
(pkg) => pkg.code === RoomPackageCodeEnum.PETR
(pkg) => pkg.code === RoomPackageCodeEnum.PET_ROOM
)
const petRoomPrice = petRoomPackage?.calculatedPrice ?? null
@@ -40,9 +41,7 @@ export default function RateSummary({
const checkInDate = new Date(roomsAvailability.checkInDate)
const checkOutDate = new Date(roomsAvailability.checkOutDate)
const nights = Math.ceil(
(checkOutDate.getTime() - checkInDate.getTime()) / (1000 * 60 * 60 * 24)
)
const nights = differenceInCalendarDays(checkOutDate, checkInDate)
return (
<div className={styles.summary}>
@@ -94,7 +93,7 @@ export default function RateSummary({
)}
</Footnote>
</div>
{isPetRoomSelect && (
{isPetRoomSelected && (
<div className={styles.petInfo}>
<Body color="uiTextHighContrast" textTransform="bold">
+ {petRoomPrice} {petRoomCurrency}

View File

@@ -27,20 +27,18 @@ export default function RoomCard({
}: RoomCardProps) {
const intl = useIntl()
// TODO: Update string when API has decided
const rateTypes = {
saveRate: "NonCancellable",
changeRate: "Modifiable",
flexRate: "CancellableBefore6PM",
const rates = {
saveRate: rateDefinitions.find(
(rate) => rate.cancellationRule === "NonCancellable"
),
changeRate: rateDefinitions.find(
(rate) => rate.cancellationRule === "Modifiable"
),
flexRate: rateDefinitions.find(
(rate) => rate.cancellationRule === "CancellableBefore6PM"
),
}
const rates = Object.fromEntries(
Object.entries(rateTypes).map(([key, rule]) => [
key,
rateDefinitions.find((rate) => rate.cancellationRule === rule),
])
)
function findProductForRate(rate: RateDefinition | undefined) {
return rate
? roomConfiguration.products.find(

View File

@@ -8,8 +8,8 @@ import getHotelReservationQueryParams from "./utils"
import styles from "./roomSelection.module.css"
import { RoomSelectionProps } from "@/types/components/hotelReservation/selectRate/roomSelection"
import { Rate } from "@/types/components/hotelReservation/selectRate/selectRate"
import type { RoomSelectionProps } from "@/types/components/hotelReservation/selectRate/roomSelection"
import type { Rate } from "@/types/components/hotelReservation/selectRate/selectRate"
export default function RoomSelection({
roomsAvailability,