From 575420ca0a0a2b506fa2fd1692b579da065b2bb6 Mon Sep 17 00:00:00 2001 From: Pontus Dreij Date: Fri, 7 Feb 2025 08:48:45 +0100 Subject: [PATCH] feat(SW-717) use of combineRoomAvailabilities in RoomsContainer --- .../SelectRate/HotelInfoCard/NoRoomsAlert.tsx | 2 +- .../SelectRate/Rooms/RoomsContainer.tsx | 21 ++++--------------- .../SelectRate/{HotelInfoCard => }/utils.ts | 0 3 files changed, 5 insertions(+), 18 deletions(-) rename components/HotelReservation/SelectRate/{HotelInfoCard => }/utils.ts (100%) diff --git a/components/HotelReservation/SelectRate/HotelInfoCard/NoRoomsAlert.tsx b/components/HotelReservation/SelectRate/HotelInfoCard/NoRoomsAlert.tsx index 81ff62b02..3aee40107 100644 --- a/components/HotelReservation/SelectRate/HotelInfoCard/NoRoomsAlert.tsx +++ b/components/HotelReservation/SelectRate/HotelInfoCard/NoRoomsAlert.tsx @@ -6,7 +6,7 @@ import { getIntl } from "@/i18n" import { safeTry } from "@/utils/safeTry" import { generateChildrenString } from "../../utils" -import { combineRoomAvailabilities } from "./utils" +import { combineRoomAvailabilities } from "../utils" import styles from "./NoRoomsAlert.module.css" diff --git a/components/HotelReservation/SelectRate/Rooms/RoomsContainer.tsx b/components/HotelReservation/SelectRate/Rooms/RoomsContainer.tsx index 23e426b65..322361f79 100644 --- a/components/HotelReservation/SelectRate/Rooms/RoomsContainer.tsx +++ b/components/HotelReservation/SelectRate/Rooms/RoomsContainer.tsx @@ -10,6 +10,7 @@ import { safeTry } from "@/utils/safeTry" import { isValidSession } from "@/utils/session" import { generateChildrenString } from "../../utils" +import { combineRoomAvailabilities } from "../utils" import Rooms from "." import { RoomPackageCodeEnum } from "@/types/components/hotelReservation/selectRate/roomFilter" @@ -72,23 +73,9 @@ export async function RoomsContainer({ const [packages, packagesError] = await packagesPromise const roomsAvailabilityResults = await Promise.all(roomsAvailabilityPromises) - const roomsAvailability = roomsAvailabilityResults.reduce< - (typeof roomsAvailabilityResults)[0][0] - >((acc, [result, error]) => { - if (error) { - console.error("[RoomsContainer] unable to fetch room availability") - return acc - } - if (!acc) return result - if (!result) return acc - return { - ...result, - roomConfigurations: [ - ...acc.roomConfigurations, - ...result.roomConfigurations, - ], - } - }, null) + const roomsAvailability = combineRoomAvailabilities({ + availabilityResults: roomsAvailabilityResults, + }) if (packagesError) { // TODO: Log packages error diff --git a/components/HotelReservation/SelectRate/HotelInfoCard/utils.ts b/components/HotelReservation/SelectRate/utils.ts similarity index 100% rename from components/HotelReservation/SelectRate/HotelInfoCard/utils.ts rename to components/HotelReservation/SelectRate/utils.ts