import React from 'react'; import { List, ListItem, ListItemText } from '@mui/material'; import { isSameDay } from 'date-fns'; import { DefinedRange, DateRange } from './types'; type DefinedRangesProps = { setRange: (range: DateRange) => void; selectedRange: DateRange; ranges: DefinedRange[]; validateRange: (range: DefinedRange) => boolean; }; const isSameRange = (first: DateRange, second: DateRange) => { const { startDate: fStart, endDate: fEnd } = first; const { startDate: sStart, endDate: sEnd } = second; if (fStart && sStart && fEnd && sEnd) { return isSameDay(fStart, sStart) && isSameDay(fEnd, sEnd); } return false; }; export const DefinedRanges: React.FunctionComponent = ({ ranges, setRange, selectedRange, validateRange }: DefinedRangesProps) => ( { ranges.map((range, idx) => ( setRange(range)} disabled={validateRange(range)}> {range.label} )) } )