Merged in fix/SW-3208-webviews-change-dates-on-my- (pull request #2638)

fix(SW-3208): Fixed webview for change date in MyStay

* fix(SW-3208): Fixed webview for change date in MyStay


Approved-by: Linus Flood
This commit is contained in:
Hrishikesh Vaipurkar
2025-08-13 12:37:04 +00:00
parent ddaa2a0e20
commit 706f2d8dfe
5 changed files with 12 additions and 9 deletions

View File

@@ -1,5 +1,4 @@
"use client" "use client"
import { useSession } from "next-auth/react"
import { useState } from "react" import { useState } from "react"
import { useIntl } from "react-intl" import { useIntl } from "react-intl"
@@ -11,7 +10,6 @@ import { useMyStayStore } from "@/stores/my-stay"
import { sumPackages } from "@/components/HotelReservation/utils" import { sumPackages } from "@/components/HotelReservation/utils"
import useLang from "@/hooks/useLang" import useLang from "@/hooks/useLang"
import { isValidClientSession } from "@/utils/clientSession"
import Confirmation from "./Confirmation" import Confirmation from "./Confirmation"
import Form from "./Form" import Form from "./Form"
@@ -24,8 +22,6 @@ interface Dates {
} }
export default function Steps({ closeModal }: ChangeDatesStepsProps) { export default function Steps({ closeModal }: ChangeDatesStepsProps) {
const { data: session } = useSession()
const isLoggedIn = isValidClientSession(session)
const intl = useIntl() const intl = useIntl()
const lang = useLang() const lang = useLang()
const utils = trpc.useUtils() const utils = trpc.useUtils()
@@ -33,8 +29,8 @@ export default function Steps({ closeModal }: ChangeDatesStepsProps) {
const [newPrice, setNewPrice] = useState<string | null>(null) const [newPrice, setNewPrice] = useState<string | null>(null)
const [noAvailability, setNoAvailability] = useState(false) const [noAvailability, setNoAvailability] = useState(false)
const { breakfast, currencyCode, hotelId, packages, room } = useMyStayStore( const { breakfast, currencyCode, hotelId, packages, room, isLoggedIn } =
(state) => ({ useMyStayStore((state) => ({
breakfast: state.bookedRoom.breakfast, breakfast: state.bookedRoom.breakfast,
currencyCode: state.bookedRoom.currencyCode, currencyCode: state.bookedRoom.currencyCode,
hotelId: state.bookedRoom.hotelId, hotelId: state.bookedRoom.hotelId,
@@ -46,8 +42,8 @@ export default function Steps({ closeModal }: ChangeDatesStepsProps) {
rateCode: state.bookedRoom.rateDefinition.rateCode, rateCode: state.bookedRoom.rateDefinition.rateCode,
roomTypeCode: state.bookedRoom.roomTypeCode, roomTypeCode: state.bookedRoom.roomTypeCode,
}, },
}) isLoggedIn: state.isLoggedIn,
) }))
async function checkAvailability(fromDate: string, toDate: string) { async function checkAvailability(fromDate: string, toDate: string) {
setNoAvailability(false) setNoAvailability(false)

View File

@@ -218,6 +218,7 @@ export default async function MyStay(props: {
refId={booking.refId} refId={booking.refId}
roomCategories={roomCategories} roomCategories={roomCategories}
savedCreditCards={savedCreditCards} savedCreditCards={savedCreditCards}
isLoggedIn={isLoggedIn}
> >
<main className={styles.main}> <main className={styles.main}>
<div className={styles.imageContainer}> <div className={styles.imageContainer}>

View File

@@ -24,6 +24,7 @@ import type { MyStayStore } from "@/types/contexts/my-stay"
interface MyStayProviderProps { interface MyStayProviderProps {
bookingConfirmation: BookingConfirmation bookingConfirmation: BookingConfirmation
breakfastPackages: Packages | null breakfastPackages: Packages | null
isLoggedIn?: boolean
lang: Lang lang: Lang
linkedReservationsPromise: Promise<BookingConfirmationSchema[]> linkedReservationsPromise: Promise<BookingConfirmationSchema[]>
refId: string refId: string
@@ -40,6 +41,7 @@ export default function MyStayProvider({
refId, refId,
roomCategories, roomCategories,
savedCreditCards, savedCreditCards,
isLoggedIn,
}: React.PropsWithChildren<MyStayProviderProps>) { }: React.PropsWithChildren<MyStayProviderProps>) {
const storeRef = useRef<MyStayStore>(undefined) const storeRef = useRef<MyStayStore>(undefined)
const intl = useIntl() const intl = useIntl()
@@ -101,6 +103,7 @@ export default function MyStayProvider({
roomCategories, roomCategories,
rooms, rooms,
savedCreditCards, savedCreditCards,
isLoggedIn,
}) })
} }

View File

@@ -24,6 +24,7 @@ export function createMyStayStore({
roomCategories, roomCategories,
rooms, rooms,
savedCreditCards, savedCreditCards,
isLoggedIn,
}: InitialState) { }: InitialState) {
const rates = { const rates = {
change: intl.formatMessage({ change: intl.formatMessage({
@@ -67,6 +68,7 @@ export function createMyStayStore({
bookedRoom, bookedRoom,
breakfastPackages, breakfastPackages,
hotel, hotel,
isLoggedIn,
mainRoom, mainRoom,
manageStay: false, manageStay: false,
refId, refId,

View File

@@ -49,6 +49,7 @@ export interface MyStayState {
bookedRoom: Room bookedRoom: Room
breakfastPackages: Packages | null breakfastPackages: Packages | null
hotel: Hotel hotel: Hotel
isLoggedIn?: boolean
mainRoom: Room mainRoom: Room
manageStay: boolean manageStay: boolean
refId: string refId: string
@@ -61,7 +62,7 @@ export interface MyStayState {
export interface InitialState export interface InitialState
extends Pick< extends Pick<
MyStayState, MyStayState,
"breakfastPackages" | "hotel" | "refId" | "savedCreditCards" "breakfastPackages" | "hotel" | "refId" | "savedCreditCards" | "isLoggedIn"
> { > {
intl: IntlShape intl: IntlShape
roomCategories: RoomCategories roomCategories: RoomCategories