import React, { useEffect } from "react"; import Card from "@/components/ui/card/card"; import { Carousel } from "@/components/ui/carousel/carousel"; import ModalableItem from "@/components/widget/modalable-item/modalable-item"; import { RezervationSummaryTitle } from "@/components/widget/rezervation-summary/rezervation-summary"; import HotelSummarySkeleton from "@/features/hotel/components/hotel-summary/components/hotel-summary-skeleton"; import Room from "@/features/room"; import { GetCampaigns } from "@/features/room/components/reservation-summary/reservation-summary-campaigns"; import RoomInfoError from "@/features/room/components/room-info-error/room-info-error"; import { useBreakpoints } from "@/hooks/useBreakpoints"; import { useLocale } from "@/hooks/useLocale"; import { useHotelRoomSearchQuery } from "@/services/eva-display/hotel/hotel-room-search/hotel-room-search.services"; import type { IHotelRoomSearchRequest } from "@/services/eva-display/hotel/hotel-room-search/hotel-room-search-services.types"; import type { IHotelSearchResultSerializer } from "@/services/eva-display/hotel/hotel-search/hotel-search-services.serializer"; import { useLoaderStore } from "@/store/loader-store/use-loader-store"; interface HotelWidgetContentProps { parameters: IHotelRoomSearchRequest; } const HotelWidgetContent = (props: HotelWidgetContentProps) => { const hotelWidgetSearchQuery = useHotelRoomSearchQuery(props.parameters); const { t } = useLocale(); const { clearLoader } = useLoaderStore(); const { isDesktop } = useBreakpoints(); useEffect(() => { if (!hotelWidgetSearchQuery.isFetching) { clearLoader(); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [hotelWidgetSearchQuery.isFetching]); const campaigns = hotelWidgetSearchQuery?.data?.roomGroupResult ? GetCampaigns(hotelWidgetSearchQuery.data.roomGroupResult) : []; return (
{t("{{roomCount}} room types available", { roomCount: hotelWidgetSearchQuery.data.roomCollectionResult ?.length || 0, })}