/* istanbul ignore file */ import * as React from "react"; import styles from "./BaseDateRangePickerCalendars.module.scss"; import { useOnClickOutside } from "../hooks/useOnClickOutside"; import { FocusTrap } from "../FocusTrap/FocusTrap"; import { TfiAngleLeft, TfiAngleRight, TfiAngleDoubleRight, TfiAngleDoubleLeft, } from "react-icons/tfi"; import { IconButton } from "../IconButton/IconButton"; //import { DateRangePickerContext } from "./DateRangePickerContext"; export interface BaseDateRangePickerCalendarsProps { /** * The callback fired when the DatePickerCalendar requests to close */ onClose: () => void; /** * The trigger ref for the DatePicker */ triggerRefs: React.RefObject[]; } /** * @private */ export const BaseDateRangePickerCalendars: React.FC = (props) => { const { onClose, triggerRefs } = props; // const { selectedDate, setSelectedDate } = React.useContext( // DateRangePickerContext // ); const [date, setDate] = React.useState(new Date()); const calendarsRef = React.useRef(null); useOnClickOutside([calendarsRef, ...triggerRefs], () => onClose() ); const increaseMonth = () => { setDate( new Date( date.getFullYear(), date.getMonth() + 1, date.getDate() ) ); }; const increaseYear = () => { setDate( new Date( date.getFullYear() + 1, date.getMonth(), date.getDate() ) ); }; const decreaseMonth = () => { setDate( new Date( date.getFullYear(), date.getMonth() - 1, date.getDate() ) ); }; const decreaseYear = () => { setDate( new Date( date.getFullYear() - 1, date.getMonth(), date.getDate() ) ); }; return (
} size="medium" onClick={decreaseYear} /> } size="medium" onClick={decreaseMonth} />
{`${date.toLocaleString("en-US", { month: "long", })} ${date.getFullYear()}`}
{`${date.toLocaleString("en-US", { month: "long", })} ${date.getFullYear()}`}
} size="medium" onClick={increaseMonth} /> } size="medium" onClick={increaseYear} />
); }; BaseDateRangePickerCalendars.displayName = "BaseDateRangePickerCalendars";