fix: add wrapper function for caching

This commit is contained in:
Christel Westerberg
2024-11-25 13:47:25 +01:00
parent 503b0bf186
commit 8bfc4065ed
7 changed files with 55 additions and 53 deletions

View File

@@ -1,11 +1,12 @@
import { cache } from "react"
import { Lang } from "@/constants/languages"
import {
GetRoomsAvailabilityInput,
GetSelectedRoomAvailabilityInput,
HotelDataInput,
} from "@/server/routers/hotels/input"
import { cache } from "@/utils/cache"
import { serverClient } from "../server"
import type {
@@ -59,46 +60,20 @@ export const getUserTracking = cache(async function getMemoizedUserTracking() {
return serverClient().user.tracking()
})
export const getHotelData = cache(async function getMemoizedHotelData({
hotelId,
language,
isCardOnlyPayment,
}: {
hotelId: string
language: string
isCardOnlyPayment?: boolean
}) {
return serverClient().hotel.hotelData.get({
hotelId,
language,
isCardOnlyPayment,
})
export const getHotelData = cache(function getMemoizedHotelData(
props: HotelDataInput
) {
return serverClient().hotel.hotelData.get(props)
})
export const getRoomAvailability = cache(
async function getMemoizedRoomAvailability({
hotelId,
adults,
roomStayStartDate,
roomStayEndDate,
children,
bookingCode,
rateCode,
}: GetRoomsAvailabilityInput) {
return serverClient().hotel.availability.rooms({
hotelId,
adults,
roomStayStartDate,
roomStayEndDate,
children,
bookingCode,
rateCode,
})
}
)
export const getRoomsAvailability = cache(function getMemoizedRoomAvailability(
args: GetRoomsAvailabilityInput
) {
return serverClient().hotel.availability.rooms(args)
})
export const getSelectedRoomAvailability = cache(
async function getMemoizedRoomAvailability(
function getMemoizedSelectedRoomAvailability(
args: GetSelectedRoomAvailabilityInput
) {
return serverClient().hotel.availability.room(args)
@@ -141,13 +116,13 @@ export const getSiteConfig = cache(async function getMemoizedSiteConfig() {
return serverClient().contentstack.base.siteConfig()
})
export const getBreakfastPackages = cache(async function getMemoizedPackages(
export const getBreakfastPackages = cache(function getMemoizedBreakfastPackages(
input: BreackfastPackagesInput
) {
return serverClient().hotel.packages.breakfast(input)
})
export const getPackages = cache(async function getMemoizedPackages(
export const getPackages = cache(function getMemoizedPackages(
input: PackagesInput
) {
return serverClient().hotel.packages.get(input)