Merged in fix/correct-booking-url-array-syntax (pull request #2294)
Fix correct array types in booking flow urls * Fix correct array types in booking flow urls Approved-by: Joakim Jäderberg
This commit is contained in:
@@ -49,6 +49,10 @@ const keyRenameMap = {
|
|||||||
child: "childrenInRoom",
|
child: "childrenInRoom",
|
||||||
searchtype: "searchType",
|
searchtype: "searchType",
|
||||||
}
|
}
|
||||||
|
const typeHints = {
|
||||||
|
filters: "COMMA_SEPARATED_ARRAY",
|
||||||
|
packages: "COMMA_SEPARATED_ARRAY",
|
||||||
|
} as const
|
||||||
const adultsSchema = z.coerce.number().min(1).max(6).catch(0)
|
const adultsSchema = z.coerce.number().min(1).max(6).catch(0)
|
||||||
const childAgeSchema = z.coerce.number().catch(-1)
|
const childAgeSchema = z.coerce.number().catch(-1)
|
||||||
const childBedSchema = z.coerce.number().catch(-1)
|
const childBedSchema = z.coerce.number().catch(-1)
|
||||||
@@ -60,6 +64,7 @@ export function parseBookingWidgetSearchParams(
|
|||||||
try {
|
try {
|
||||||
const result = parseSearchParams(searchParams, {
|
const result = parseSearchParams(searchParams, {
|
||||||
keyRenameMap,
|
keyRenameMap,
|
||||||
|
typeHints,
|
||||||
schema: z.object({
|
schema: z.object({
|
||||||
city: z.string().optional(),
|
city: z.string().optional(),
|
||||||
hotelId: z.string().optional(),
|
hotelId: z.string().optional(),
|
||||||
@@ -99,6 +104,7 @@ export function parseSelectHotelSearchParams(
|
|||||||
try {
|
try {
|
||||||
const result = parseSearchParams(searchParams, {
|
const result = parseSearchParams(searchParams, {
|
||||||
keyRenameMap,
|
keyRenameMap,
|
||||||
|
typeHints,
|
||||||
schema: z.object({
|
schema: z.object({
|
||||||
city: z.string(),
|
city: z.string(),
|
||||||
hotelId: z.string().optional(),
|
hotelId: z.string().optional(),
|
||||||
@@ -136,6 +142,7 @@ export function parseSelectRateSearchParams(
|
|||||||
try {
|
try {
|
||||||
const result = parseSearchParams(searchParams, {
|
const result = parseSearchParams(searchParams, {
|
||||||
keyRenameMap,
|
keyRenameMap,
|
||||||
|
typeHints,
|
||||||
schema: z.object({
|
schema: z.object({
|
||||||
city: z.string().optional(),
|
city: z.string().optional(),
|
||||||
hotelId: z.string(),
|
hotelId: z.string(),
|
||||||
@@ -190,6 +197,7 @@ export function parseDetailsSearchParams(
|
|||||||
try {
|
try {
|
||||||
const result = parseSearchParams(searchParams, {
|
const result = parseSearchParams(searchParams, {
|
||||||
keyRenameMap,
|
keyRenameMap,
|
||||||
|
typeHints,
|
||||||
schema: z.object({
|
schema: z.object({
|
||||||
city: z.string().optional(),
|
city: z.string().optional(),
|
||||||
hotelId: z.string(),
|
hotelId: z.string(),
|
||||||
@@ -236,6 +244,7 @@ export function serializeBookingSearchParams(
|
|||||||
return serializeSearchParams(obj, {
|
return serializeSearchParams(obj, {
|
||||||
keyRenameMap: reversedKeyRenameMap,
|
keyRenameMap: reversedKeyRenameMap,
|
||||||
initialSearchParams,
|
initialSearchParams,
|
||||||
|
typeHints,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user