"use client" import * as React from "react"; import { format } from "date-fns"; import { cn } from "@/lib/utils"; import { Button } from "@/components/ui/button"; import { Calendar } from "@/components/ui/calendar"; import { Popover, PopoverContent, PopoverTrigger, } from "@/components/ui/popover"; import { ScrollArea, ScrollBar } from "@/components/ui/scroll-area"; interface DateTimePickerProps { onDateSelectChange: (selectedDate: Date | undefined) => void; } export function DateTimePicker({ onDateSelectChange }: DateTimePickerProps) { const [date, setDate] = React.useState(); const [isOpen, setIsOpen] = React.useState(false); // TODO : this is buggy as hell const hours = Array.from({ length: 24 }, (_, i) => i); const handleDateSelect = (selectedDate: Date | undefined) => { if (selectedDate) { setDate(selectedDate); onDateSelectChange(selectedDate) } }; const handleTimeChange = ( type: "hour" | "minute", value: string ) => { if (date) { const newDate = new Date(date); if (type === "hour") { newDate.setHours(parseInt(value)); } else if (type === "minute") { newDate.setMinutes(parseInt(value)); } setDate(newDate); } }; return (
{hours.reverse().map((hour) => ( ))}
{Array.from({ length: 12 }, (_, i) => i * 5).map((minute) => ( ))}
); }