diff --git a/apps/scandic-web/components/HotelReservation/EnterDetails/BedType/index.tsx b/apps/scandic-web/components/HotelReservation/EnterDetails/BedType/index.tsx index ba4ac4679..033821971 100644 --- a/apps/scandic-web/components/HotelReservation/EnterDetails/BedType/index.tsx +++ b/apps/scandic-web/components/HotelReservation/EnterDetails/BedType/index.tsx @@ -1,7 +1,7 @@ "use client" import { zodResolver } from "@hookform/resolvers/zod" -import { useCallback, useEffect } from "react" +import { useCallback, useEffect, useState } from "react" import { FormProvider, useForm } from "react-hook-form" import { @@ -28,6 +28,7 @@ export default function BedType() { room: { bedType, bedTypes }, } = useRoomContext() const initialBedType = bedType?.roomTypeCode + const [previousBedType, setPreviousBedType] = useState("") const methods = useForm({ criteriaMode: "all", @@ -57,10 +58,17 @@ export default function BedType() { const selectedBedType = methods.watch("bedType") const handleSubmit = methods.handleSubmit useEffect(() => { - if (selectedBedType) { + if (selectedBedType && selectedBedType !== previousBedType) { handleSubmit(onSubmit)() + setPreviousBedType(selectedBedType) } - }, [selectedBedType, handleSubmit, onSubmit]) + }, [ + selectedBedType, + previousBedType, + handleSubmit, + onSubmit, + setPreviousBedType, + ]) return (