feat: save search params from select-rate to store

This commit is contained in:
Christel Westerberg
2024-10-22 16:19:15 +02:00
parent b5dce01fd3
commit 85fdefb5ac
28 changed files with 332 additions and 195 deletions
@@ -0,0 +1,5 @@
import { z } from "zod"
import { bedTypeSchema } from "@/components/HotelReservation/EnterDetails/BedType/schema"
export interface BedTypeSchema extends z.output<typeof bedTypeSchema> {}
@@ -0,0 +1,27 @@
interface Child {
bed: string
age: number
}
interface Room {
adults: number
roomtypecode: string
ratecode: string
child: Child[]
}
export interface BookingData {
hotel: string
fromdate: string
todate: string
room: Room[]
}
export type RoomsData = {
roomType: string
memberPrice: string | undefined
publicPrice: string | undefined
adults: number
children: Child[]
cancellationText: string | undefined
}
@@ -0,0 +1,21 @@
import { z } from "zod"
import {
breakfastPackageSchema,
breakfastPackagesSchema,
} from "@/server/routers/hotels/output"
import { breakfastFormSchema } from "@/components/HotelReservation/EnterDetails/Breakfast/schema"
export interface BreakfastFormSchema
extends z.output<typeof breakfastFormSchema> {}
export interface BreakfastPackages
extends z.output<typeof breakfastPackagesSchema> {}
export interface BreakfastPackage
extends z.output<typeof breakfastPackageSchema> {}
export interface BreakfastProps {
packages: BreakfastPackages | null
}
@@ -0,0 +1,11 @@
import { z } from "zod"
import { detailsSchema } from "@/components/HotelReservation/EnterDetails/Details/schema"
import type { SafeUser } from "@/types/user"
export type DetailsSchema = z.output<typeof detailsSchema>
export interface DetailsProps {
user: SafeUser
}
@@ -0,0 +1,9 @@
import { Hotel } from "@/types/hotel"
export enum SidePeekEnum {
hotelDetails = "hotel-detail-side-peek",
}
export type SidePeekProps = {
hotel: Hotel
}
@@ -0,0 +1,6 @@
export enum StepEnum {
selectBed = "select-bed",
breakfast = "breakfast",
details = "details",
payment = "payment",
}
@@ -1,4 +1,4 @@
import { StepEnum } from "../../enterDetails/step"
import { StepEnum } from "../enterDetails/step"
export interface SectionAccordionProps {
header: string