forked from Somnia/SomniaRoomsApp
State Management & RoomPrices
- Added zustand for global state management. - New Component - NumberSelector. - Implement Prices API.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { fetcherUnwraperWithFilter } from "./backend";
|
||||
import useSWR from 'swr';
|
||||
import { AvailabilityFilter, AvailabilityRequest, RoomAvailabity } from "@/model/RoomSearch";
|
||||
import { AvailabilityFilter, AvailabilityRequest, FareFilter, FareRequest, RoomAvailabity, RoomPrice } from "@/model/RoomSearch";
|
||||
|
||||
export function useAPIRoomAvailability(filter: AvailabilityFilter | null) {
|
||||
|
||||
@@ -15,4 +15,19 @@ export function useAPIRoomAvailability(filter: AvailabilityFilter | null) {
|
||||
isLoading,
|
||||
isError: error
|
||||
}
|
||||
}
|
||||
|
||||
export function useAPIRoomPrices(filter: FareFilter | null) {
|
||||
|
||||
const request: FareRequest | null = filter ? {
|
||||
filter: filter
|
||||
} : null;
|
||||
|
||||
const { data, isLoading, error } = useSWR(request ? ['/api/search/fares', request] : null, ([url, request]) => fetcherUnwraperWithFilter<RoomPrice[]>(url, request))
|
||||
|
||||
return {
|
||||
roomPriceList: data,
|
||||
isLoading,
|
||||
isError: error
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user