"use client" import { useSearchParams } from "next/navigation" import { useRef } from "react" import { createHotelListingDataStore } from "@/stores/hotel-listing-data" import { HotelListingDataContext } from "@/contexts/HotelListingData" import HotelListingDataProviderContent from "./Content" import type { HotelListingDataStore } from "@/types/contexts/hotel-listing-data" import type { HotelListingDataProviderProps } from "@/types/providers/hotel-listing-data" export default function HotelListingDataProvider({ allHotels, allFilters, sortItems, children, }: HotelListingDataProviderProps) { const storeRef = useRef(undefined) const searchParams = useSearchParams() // eslint-disable-next-line react-hooks/refs if (!storeRef.current) { storeRef.current = createHotelListingDataStore({ allHotels, allFilters, sortItems, searchParams, }) } return ( // eslint-disable-next-line react-hooks/refs {children} ) }