feat(SW-718) Fixed filtering with multirooms

This commit is contained in:
Pontus Dreij
2025-01-21 14:40:39 +01:00
parent edcf146ce1
commit 328cbbe0e1
16 changed files with 326 additions and 151 deletions

View File

@@ -21,6 +21,7 @@ export type FlexibilityOptionProps = {
roomTypeCode: RoomConfiguration["roomTypeCode"]
petRoomPackage: RoomPackage | undefined
handleSelectRate: React.Dispatch<React.SetStateAction<RateCode | undefined>>
roomListIndex: number
}
export interface PriceListProps {

View File

@@ -3,7 +3,7 @@ import type { RoomPackageData } from "./roomFilter"
import type { Rate } from "./selectRate"
export interface RateSummaryProps {
rateSummary: Rate
rateSummary: Rate[]
isUserLoggedIn: boolean
packages: RoomPackageData | undefined
roomsAvailability: RoomsAvailability

View File

@@ -19,6 +19,7 @@ export type RoomCardProps = {
selectedPackages: RoomPackageCodes[]
packages: RoomPackageData | undefined
handleSelectRate: React.Dispatch<React.SetStateAction<RateCode | undefined>>
roomListIndex: number
}
type RoomPackagePriceSchema = z.output<typeof packagePriceSchema>

View File

@@ -1,6 +1,6 @@
import { z } from "zod"
import type { z } from "zod"
import { packagesSchema } from "@/server/routers/hotels/output"
import type { packagesSchema } from "@/server/routers/hotels/output"
export enum RoomPackageCodeEnum {
PET_ROOM = "PETR",
@@ -17,6 +17,7 @@ export interface RoomFilterProps {
numberOfRooms: number
onFilter: (filter: Record<string, boolean | undefined>) => void
filterOptions: DefaultFilterOptions[]
roomListIndex: number
}
export type RoomPackage = z.output<typeof packagesSchema>

View File

@@ -16,6 +16,7 @@ export interface RoomListProps {
selectedPackages: RoomPackageCodes[]
setRateCode: React.Dispatch<React.SetStateAction<RateCode | undefined>>
hotelType: string | undefined
roomListIndex: number
}
export interface SelectRateProps {
@@ -37,4 +38,5 @@ export interface RoomSelectionPanelProps {
filter: Record<RoomPackageCodeEnum, boolean | undefined>
) => void
defaultPackages: DefaultFilterOptions[]
roomListIndex: number
}

View File

@@ -32,6 +32,7 @@ export interface Rate {
public: Product["productType"]["public"]
member?: Product["productType"]["member"]
features: RoomConfiguration["features"]
roomRates?: Array<{ roomIndex: number; rate: Rate }>
}
export type RateCode = {