fix(SW-925): Don't throw error if api for packages throws error

This commit is contained in:
Pontus Dreij
2024-11-19 14:25:48 +01:00
parent eb5dd49981
commit a1f1531fc2
2 changed files with 21 additions and 20 deletions

View File

@@ -864,22 +864,24 @@ export const packagesSchema = z.object({
export const getRoomPackagesSchema = z
.object({
data: z.object({
attributes: z.object({
hotelId: z.number(),
packages: z.array(packagesSchema).optional().default([]),
}),
relationships: z
.object({
links: z.array(
z.object({
url: z.string(),
type: z.string(),
})
),
})
.optional(),
type: z.string(),
}),
data: z
.object({
attributes: z.object({
hotelId: z.number(),
packages: z.array(packagesSchema).optional().default([]),
}),
relationships: z
.object({
links: z.array(
z.object({
url: z.string(),
type: z.string(),
})
),
})
.optional(),
type: z.string(),
})
.optional(),
})
.transform((data) => data.data.attributes.packages)
.transform((data) => data.data?.attributes?.packages ?? [])

View File

@@ -939,12 +939,11 @@ export const hotelQueryRouter = router({
"api.hotels.packages error",
JSON.stringify({ query: { hotelId, params } })
)
throw serverErrorByStatus(apiResponse.status, apiResponse)
}
const apiJson = await apiResponse.json()
const validatedPackagesData = getRoomPackagesSchema.safeParse(apiJson)
console.log("validatedPackagesData", validatedPackagesData)
if (!validatedPackagesData.success) {
getHotelFailCounter.add(1, {
hotelId,