import { useState } from "react"; import useFetchHosting from "../utils/fetchHosting"; interface ReserveButtonProps { update: (name: string, id: number) => void, reservedBy: string, id: number, } const ReserveButton: React.FC = (props) => { const { reservedBy, update, id } = props; const [name, setName] = useState(reservedBy); const isReserved = reservedBy !== ''; const handleReserve = async () => { if (name.trim()) { await update(name, id); // Call the update function from props with the name and id } }; return ( <> setName(e.target.value)} placeholder="Введите ваше имя" disabled={isReserved} // Disable if already reserved /> ); }; function Hosting() { const { data, error, loading, update } = useFetchHosting(); return ( <>

Поселение

Мы готовы вас приютить в наших 150 квадратах. Хоть дом и кажется большим, но больше 5 гостей уместить будет сложно (но возможно!). При этом, если вы не хотите тесниться, то рядом с нами есть отель, а так же кэмпинг-виллы (Лучше бронировать заранее если есть надобность. Оба в 1-1,5км от нашего дома).
На данный момент мы можем вместить 5 гостей без лишних усилий. Это подразумевает:

{loading &&
Loading...
} {error &&
Error
} {data && (
{Object.entries(data).map(([id, item]) => ( ))}
Размещение Вместительность Бронирование
{item.name} {item.capacity} {}
)} ); } export default Hosting;