import {FormControl, Grid, IconButton, MenuItem, Select, SelectChangeEvent} from '@mui/material'; import React from 'react'; import ChevronLeft from '@mui/icons-material/ChevronLeft'; import ChevronRight from '@mui/icons-material/ChevronRight'; import {getMonth, getYear, setMonth, setYear} from 'date-fns'; interface HeaderProps { date: Date; // eslint-disable-next-line no-unused-vars setDate: (date: Date) => void; nextDisabled: boolean; prevDisabled: boolean; onClickNext: () => void; onClickPrevious: () => void; locale?: Locale; } const generateYears = (relativeTo: Date, count: number) => { const half = Math.floor(count / 2); return Array(count) .fill(0) .map((_y, i) => relativeTo.getFullYear() - half + i); // TODO: make part of the state }; const Header: React.FunctionComponent = ({ date, setDate, nextDisabled, prevDisabled, onClickNext, onClickPrevious, locale }: HeaderProps) => { const MONTHS = typeof locale !== 'undefined' ? [...Array(12).keys()].map(d => locale.localize?.month(d, {width: 'abbreviated', context: 'standalone'})) : ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec']; const handleMonthChange = (event: SelectChangeEvent) => { setDate(setMonth(date, parseInt(event.target.value as string, 10))); }; const handleYearChange = (event: SelectChangeEvent) => { setDate(setYear(date, parseInt(event.target.value as string, 10))); }; return ( {/* {format(date, "MMMM YYYY")} */} ); }; export default Header;