import {useEffect, useRef, useState} from "react"; import {Badge, Col, Tag, Tooltip} from "antd"; import dayjs from "dayjs"; import PropTypes from "prop-types"; import {AppointmentPropType} from "../../Types/appointmentPropType.js"; import {ScheduledAppointmentPropType} from "../../Types/scheduledAppointmentPropType.js"; const CalendarCell = ({allAppointments, onCellClick, onItemClick}) => { const containerRef = useRef(null); const [isCompressed, setIsCompressed] = useState(false); const COMPRESSION_THRESHOLD = 70; useEffect(() => { if (!containerRef.current) return; const observer = new ResizeObserver((entries) => { const width = entries[0].contentRect.width; setIsCompressed(width < COMPRESSION_THRESHOLD); }); observer.observe(containerRef.current); return () => observer.disconnect(); }, []); return (