From b90d60bb728c1ba28fba247fcf667600c0e20854 Mon Sep 17 00:00:00 2001 From: Bianca Widstam Date: Mon, 27 Oct 2025 14:44:19 +0000 Subject: [PATCH] Merged in feat/BOOK-81-enable-multiroom-arb-rate (pull request #3010) feat(BOOK-81): enable multiroom for arb rates * feat(BOOK-81): enable multiroom for arb rates Approved-by: Erik Tiekstra --- .../booking-flow/lib/pages/SelectRatePage.tsx | 24 ++++--------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/packages/booking-flow/lib/pages/SelectRatePage.tsx b/packages/booking-flow/lib/pages/SelectRatePage.tsx index a419fb586..c5671300a 100644 --- a/packages/booking-flow/lib/pages/SelectRatePage.tsx +++ b/packages/booking-flow/lib/pages/SelectRatePage.tsx @@ -16,16 +16,6 @@ import type { NextSearchParams } from "../types" export { SelectRateSkeleton as SelectRatePageSkeleton } from "../components/SelectRate" -const rateTypeRegex = { - ARB: /(^B[a-z]{3}\d{6}$)/, - VOUCHER: /(^VO[0-9a-z]*$)/, -} - -const singleRoomRateTypes = combineRegExps( - [rateTypeRegex.ARB, rateTypeRegex.VOUCHER], - "i" -) - export async function SelectRatePage({ lang, searchParams, @@ -41,17 +31,17 @@ export async function SelectRatePage({ logger.debug("Invalid search params", searchParams) notFound() } - const isMultiRoom = booking.rooms.length > 1 const isRedemption = booking.searchType === SEARCH_TYPE_REDEMPTION - const isArbOrVoucher = booking.bookingCode - ? singleRoomRateTypes.test(booking.bookingCode) + const voucherPattern = /^VO[0-9a-z]*$/i + const isVoucher = booking.bookingCode + ? voucherPattern.test(booking.bookingCode) : false - if ((isMultiRoom && isRedemption) || (isMultiRoom && isArbOrVoucher)) { + if ((isMultiRoom && isRedemption) || (isMultiRoom && isVoucher)) { logger.debug( "Invalid search params, can't have multiroom and redemption/voucher", - { isMultiRoom, isRedemption, isArbOrVoucher } + { isMultiRoom, isRedemption, isVoucher } ) notFound() } @@ -82,7 +72,3 @@ export async function SelectRatePage({ ) } - -function combineRegExps(regexps: RegExp[], flags = "") { - return new RegExp(regexps.map((r) => r.source).join("|"), flags) -}