feat(SW-936): fix merge conflict
This commit is contained in:
@@ -210,87 +210,6 @@ export const getHotelData = cache(
|
|||||||
)
|
)
|
||||||
|
|
||||||
export const hotelQueryRouter = router({
|
export const hotelQueryRouter = router({
|
||||||
get: contentStackUidWithServiceProcedure.query(async ({ ctx }) => {
|
|
||||||
const { lang, uid } = ctx
|
|
||||||
|
|
||||||
const contentstackData = await getContentstackData(lang, uid)
|
|
||||||
const hotelId = contentstackData?.hotel_page_id
|
|
||||||
|
|
||||||
if (!hotelId) {
|
|
||||||
throw notFound(`Hotel not found for uid: ${uid}`)
|
|
||||||
}
|
|
||||||
|
|
||||||
const hotelData = await getHotelData(
|
|
||||||
{
|
|
||||||
hotelId,
|
|
||||||
language: ctx.lang,
|
|
||||||
},
|
|
||||||
ctx.serviceToken
|
|
||||||
)
|
|
||||||
|
|
||||||
if (!hotelData) {
|
|
||||||
throw notFound()
|
|
||||||
}
|
|
||||||
|
|
||||||
const included = hotelData.included || []
|
|
||||||
|
|
||||||
const hotelAttributes = hotelData.data.attributes
|
|
||||||
const images = hotelAttributes.gallery?.smallerImages
|
|
||||||
const hotelAlerts = hotelAttributes.specialAlerts
|
|
||||||
|
|
||||||
const roomCategories = included
|
|
||||||
? included.filter((item) => item.type === "roomcategories")
|
|
||||||
: []
|
|
||||||
|
|
||||||
const activities = contentstackData?.content
|
|
||||||
? contentstackData?.content[0]
|
|
||||||
: null
|
|
||||||
|
|
||||||
const facilities: Facility[] = [
|
|
||||||
{
|
|
||||||
...hotelData.data.attributes.restaurantImages,
|
|
||||||
id: FacilityCardTypeEnum.restaurant,
|
|
||||||
headingText:
|
|
||||||
hotelData?.data.attributes.restaurantImages?.headingText ?? "",
|
|
||||||
heroImages:
|
|
||||||
hotelData?.data.attributes.restaurantImages?.heroImages ?? [],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
...hotelData.data.attributes.conferencesAndMeetings,
|
|
||||||
id: FacilityCardTypeEnum.conference,
|
|
||||||
headingText:
|
|
||||||
hotelData?.data.attributes.conferencesAndMeetings?.headingText ?? "",
|
|
||||||
heroImages:
|
|
||||||
hotelData?.data.attributes.conferencesAndMeetings?.heroImages ?? [],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
...hotelData.data.attributes.healthAndWellness,
|
|
||||||
id: FacilityCardTypeEnum.wellness,
|
|
||||||
headingText:
|
|
||||||
hotelData?.data.attributes.healthAndWellness?.headingText ?? "",
|
|
||||||
heroImages:
|
|
||||||
hotelData?.data.attributes.healthAndWellness?.heroImages ?? [],
|
|
||||||
},
|
|
||||||
]
|
|
||||||
|
|
||||||
return {
|
|
||||||
hotelId,
|
|
||||||
hotelName: hotelAttributes.name,
|
|
||||||
hotelDescription: hotelAttributes.hotelContent.texts.descriptions.short,
|
|
||||||
hotelLocation: hotelAttributes.location,
|
|
||||||
hotelAddress: hotelAttributes.address,
|
|
||||||
hotelRatings: hotelAttributes.ratings,
|
|
||||||
hotelDetailedFacilities: hotelAttributes.detailedFacilities,
|
|
||||||
hotelImages: images,
|
|
||||||
pointsOfInterest: hotelAttributes.pointsOfInterest,
|
|
||||||
roomCategories,
|
|
||||||
activitiesCard: activities?.upcoming_activities_card,
|
|
||||||
facilities,
|
|
||||||
alerts: hotelAlerts,
|
|
||||||
faq: contentstackData?.faq,
|
|
||||||
healthFacilities: hotelAttributes.healthFacilities,
|
|
||||||
}
|
|
||||||
}),
|
|
||||||
availability: router({
|
availability: router({
|
||||||
hotels: serviceProcedure
|
hotels: serviceProcedure
|
||||||
.input(getHotelsAvailabilityInputSchema)
|
.input(getHotelsAvailabilityInputSchema)
|
||||||
|
|||||||
Reference in New Issue
Block a user