import React , { useRef } from 'react' ; import { useDayRender } from 'hooks/useDayRender' ; import { Button } from '../Button' ; /** Represent the props used by the [[Day]] component. */ export interface DayProps { /** The month where the date is displayed. */ displayMonth : Date ; /** The date to render. */ date : Date ; } /**
 * The content of a day cell – as a button or span element according to its
 * modifiers.
 */ export function Day ( props ) { const buttonRef = useRef < HTMLButtonElement > ( null ) ; const dayRender = useDayRender ( props . date , props . displayMonth , buttonRef ) ; if ( dayRender . isHidden ) { return < > < />; } if ( ! dayRender . isButton ) { return < div { ... dayRender . divProps } / > ; } return < Button ref = { buttonRef } { ... dayRender . buttonProps } />; }