From 32618ad318c3611b953bb197854ad380172e4093 Mon Sep 17 00:00:00 2001 From: Bianca Widstam Date: Wed, 14 May 2025 08:12:45 +0000 Subject: [PATCH] Merged in fix/add-breakfast-wrong-quantity (pull request #2086) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix: check if breakfast and refill modal with correct confirmation if cancelled/error payment * fix: check if breakfast and refill modal with correct confirmation if cancelled/error payment * fix: only include packages with quantity Approved-by: Linus Flood Approved-by: Matilda Landström --- .../AddAncillaryFlow/AddAncillaryFlowModal/index.tsx | 5 ++++- .../HotelReservation/MyStay/utils/ancillaries.ts | 12 ++++++++++-- apps/scandic-web/providers/AddAncillaryProvider.tsx | 1 + 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/apps/scandic-web/components/HotelReservation/MyStay/Ancillaries/AddAncillaryFlow/AddAncillaryFlowModal/index.tsx b/apps/scandic-web/components/HotelReservation/MyStay/Ancillaries/AddAncillaryFlow/AddAncillaryFlowModal/index.tsx index 4f4f797fd..bfedf19ba 100644 --- a/apps/scandic-web/components/HotelReservation/MyStay/Ancillaries/AddAncillaryFlow/AddAncillaryFlowModal/index.tsx +++ b/apps/scandic-web/components/HotelReservation/MyStay/Ancillaries/AddAncillaryFlow/AddAncillaryFlowModal/index.tsx @@ -226,7 +226,7 @@ export default function AddAncillaryFlowModal({ data: AncillaryFormData, breakfastData: BreakfastData ) { - return [ + const packages = [ { code: BreakfastPackageEnum.ANCILLARY_REGULAR_BREAKFAST, quantity: breakfastData.nrOfAdults, @@ -243,6 +243,8 @@ export default function AddAncillaryFlowModal({ comment: data.optionalText || undefined, }, ] + + return packages.filter((pkg) => pkg.quantity > 0) } const onSubmit = (data: AncillaryFormData) => { @@ -266,6 +268,7 @@ export default function AddAncillaryFlowModal({ formData: data, selectedAncillary, packages: packagesToAdd, + isBreakfast, }) const shouldSkipGuarantee = booking.guaranteeInfo || (data.quantityWithCard ?? 0) <= 0 diff --git a/apps/scandic-web/components/HotelReservation/MyStay/utils/ancillaries.ts b/apps/scandic-web/components/HotelReservation/MyStay/utils/ancillaries.ts index 07442f21b..6f1d33037 100644 --- a/apps/scandic-web/components/HotelReservation/MyStay/utils/ancillaries.ts +++ b/apps/scandic-web/components/HotelReservation/MyStay/utils/ancillaries.ts @@ -48,6 +48,7 @@ export const getAncillarySessionData = (): quantity: number comment: string | undefined }[] + isBreakfast: boolean } | undefined => { if (typeof window === "undefined") return undefined @@ -65,6 +66,7 @@ export function setAncillarySessionData({ formData, selectedAncillary, packages, + isBreakfast, }: { formData?: AncillaryFormData selectedAncillary?: Ancillary["ancillaryContent"][number] | null @@ -73,14 +75,20 @@ export function setAncillarySessionData({ quantity: number comment: string | undefined }[] + isBreakfast: boolean }) { if (typeof window === "undefined") return - try { const currentData = getAncillarySessionData() || {} sessionStorage.setItem( ancillarySessionKey, - JSON.stringify({ ...currentData, formData, selectedAncillary, packages }) + JSON.stringify({ + ...currentData, + formData, + selectedAncillary, + packages, + isBreakfast, + }) ) } catch (error) { console.error("Error writing to session storage:", error) diff --git a/apps/scandic-web/providers/AddAncillaryProvider.tsx b/apps/scandic-web/providers/AddAncillaryProvider.tsx index 58645ea46..be07981ff 100644 --- a/apps/scandic-web/providers/AddAncillaryProvider.tsx +++ b/apps/scandic-web/providers/AddAncillaryProvider.tsx @@ -33,6 +33,7 @@ export function AddAncillaryProvider({ storeRef.current?.setState({ selectedAncillary: savedData.selectedAncillary, currentStep: AncillaryStepEnum.confirmation, + isBreakfast: savedData.isBreakfast, isOpen: true, }) }