Merged in fix/STAY-17-find-my-booking-errors (pull request #3181)

fix: improve error messages in find my booking flow

* fix: improve error messages in find my booking flow


Approved-by: Linus Flood
Approved-by: Erik Tiekstra
This commit is contained in:
Christel Westerberg
2025-11-24 14:46:39 +00:00
parent 2346daec25
commit 2ae3fcb609
9 changed files with 213 additions and 120 deletions

View File

@@ -1,3 +1,5 @@
import { cookies } from "next/headers"
import { TrackingSDK } from "@scandic-hotels/tracking/TrackingSDK"
import {
TrackingChannelEnum,
@@ -9,8 +11,11 @@ import { getIntl } from "@/i18n"
import styles from "./page.module.css"
import type { AdditionalInfoCookieValue } from "@scandic-hotels/booking-flow/types/components/findMyBooking/additionalInfoCookieValue"
import type { Lang } from "@scandic-hotels/common/constants/language"
import type { FindMyBookingErrorEnum } from "@/components/HotelReservation/FindMyBooking/utils"
export default async function GetBookingPage(
props: PageProps<"/[lang]/hotelreservation/get-booking">
) {
@@ -27,11 +32,23 @@ export default async function GetBookingPage(
siteVersion: "new-web",
}
const searchParams = await props.searchParams
const error = searchParams.error as FindMyBookingErrorEnum | undefined
const cookieStore = await cookies()
const previousValuesCookie = cookieStore.get("bv")?.value
let defaultValues: AdditionalInfoCookieValue | undefined
// Only prepopulate previous values if there is an error
if (previousValuesCookie && error) {
defaultValues = JSON.parse(previousValuesCookie)
}
return (
<main className={styles.main}>
<TrackingSDK pageData={pageTrackingData} />
<div className={styles.form}>
<FindMyBooking />
<FindMyBooking error={error} defaultValues={defaultValues} />
</div>
</main>
)