"use client"; import { useState } from 'react'; import { format } from 'date-fns'; interface DateRange { from: Date; to: Date; } interface DateRangePickerProps { value: DateRange; onChange: (value: DateRange) => void; className?: string; } export function DateRangePicker({ value, onChange, className }: DateRangePickerProps) { // Internal date state for validation const [from, setFrom] = useState( value.from ? format(value.from, 'yyyy-MM-dd') : '' ); const [to, setTo] = useState( value.to ? format(value.to, 'yyyy-MM-dd') : '' ); const handleFromChange = (e: React.ChangeEvent) => { const newFrom = e.target.value; setFrom(newFrom); if (newFrom) { onChange({ from: new Date(newFrom), to: value.to }); } }; const handleToChange = (e: React.ChangeEvent) => { const newTo = e.target.value; setTo(newTo); if (newTo) { onChange({ from: value.from, to: new Date(newTo) }); } }; return (
); }