Merged in fix/allow-single-rateCode (pull request #1438)
fix: allow rates that only have either of member or public to be selectable * fix: allow rates that only have either of member or public to be selectable Approved-by: Michael Zetterberg
This commit is contained in:
committed by
Linus Flood
parent
3f01266a75
commit
c3e3fa62ec
@@ -27,6 +27,6 @@ export type JoinScandicFriendsCardProps = {
|
||||
}
|
||||
|
||||
export type RoomRate = {
|
||||
publicRate: Product["productType"]["public"]
|
||||
memberRate?: Product["productType"]["member"]
|
||||
memberRate?: Product["member"]
|
||||
publicRate?: Product["public"]
|
||||
}
|
||||
|
||||
@@ -15,7 +15,6 @@ export type RoomPriceSchema = z.output<typeof priceSchema>
|
||||
|
||||
export type FlexibilityOptionProps = {
|
||||
features: RoomConfiguration["features"]
|
||||
isSelected: boolean
|
||||
paymentTerm: string
|
||||
petRoomPackage: RoomPackage | undefined
|
||||
priceInformation?: Array<string>
|
||||
|
||||
@@ -28,20 +28,36 @@ export interface SelectRateSearchParams {
|
||||
toDate: string
|
||||
}
|
||||
|
||||
export interface Rate {
|
||||
export type Rate = {
|
||||
features: RoomConfiguration["features"]
|
||||
member?: Product["productType"]["member"]
|
||||
package?: RoomPackageCodeEnum | undefined
|
||||
priceName?: string
|
||||
priceTerm?: string
|
||||
public: Product["productType"]["public"]
|
||||
rate: "change" | "flex" | "save"
|
||||
roomRates?: {
|
||||
rate: Rate
|
||||
roomIndex: number
|
||||
}[]
|
||||
roomType: RoomConfiguration["roomType"]
|
||||
roomTypeCode: RoomConfiguration["roomTypeCode"]
|
||||
}
|
||||
} & (
|
||||
| {
|
||||
member?: undefined
|
||||
public?: undefined
|
||||
}
|
||||
| {
|
||||
member?: never
|
||||
public: NonNullable<Product["public"]>
|
||||
}
|
||||
| {
|
||||
member: NonNullable<Product["member"]>
|
||||
public?: never
|
||||
}
|
||||
| {
|
||||
member: NonNullable<Product["member"]>
|
||||
public: NonNullable<Product["public"]>
|
||||
}
|
||||
)
|
||||
|
||||
export type RateCode = {
|
||||
publicRateCode: string
|
||||
|
||||
@@ -33,6 +33,11 @@ export interface InitialRoomData {
|
||||
roomTypeCode: string
|
||||
}
|
||||
|
||||
export type RoomStep = {
|
||||
step: StepEnum
|
||||
isValid: boolean
|
||||
}
|
||||
|
||||
export interface RoomState {
|
||||
currentStep: StepEnum | null
|
||||
isComplete: boolean
|
||||
@@ -89,19 +94,3 @@ export type PersistedState = {
|
||||
booking: SelectRateSearchParams
|
||||
rooms: RoomState[]
|
||||
}
|
||||
|
||||
export type RoomStep = {
|
||||
step: StepEnum
|
||||
isValid: boolean
|
||||
}
|
||||
|
||||
export type RoomStatus = {
|
||||
isComplete: boolean
|
||||
currentStep: StepEnum | null
|
||||
lastCompletedStep: StepEnum | undefined
|
||||
steps: {
|
||||
[StepEnum.selectBed]: RoomStep
|
||||
[StepEnum.breakfast]?: RoomStep
|
||||
[StepEnum.details]: RoomStep
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user