import React, { useMemo } from 'react'; import { FeedingEvent } from '../../types'; interface DailyEventsListProps { selectedDate: Date; events: FeedingEvent[]; onEditEvent: (event: FeedingEvent) => void; } const eventConfig = { completed: { icon: 'fa-check-circle', color: 'text-green-500' }, upcoming: { icon: 'fa-clock', color: 'text-blue-500' }, skipped: { icon: 'fa-ban', color: 'text-gray-500' }, }; const typeConfig = { 'AI Recommended': { icon: 'fa-robot', color: 'text-purple-600' }, Manual: { icon: 'fa-user', color: 'text-gray-600' }, Skipped: { icon: 'fa-forward', color: 'text-gray-500' }, }; const DailyEventsList: React.FC = ({ selectedDate, events, onEditEvent }) => { const dailyEvents = useMemo(() => { return events .filter( (event) => event.time.getFullYear() === selectedDate.getFullYear() && event.time.getMonth() === selectedDate.getMonth() && event.time.getDate() === selectedDate.getDate() ) .sort((a, b) => a.time.getTime() - b.time.getTime()); }, [selectedDate, events]); return (

Jadwal untuk{' '} {selectedDate.toLocaleDateString('id-ID', { day: 'numeric', month: 'long' })}

{dailyEvents.length > 0 ? (
{dailyEvents.map((event) => { const statusInfo = eventConfig[event.status]; const typeInfo = typeConfig[event.type]; return (

Pukul{' '} {event.time.toLocaleTimeString('id-ID', { hour: '2-digit', minute: '2-digit' })}

{event.type}

); })}
) : (

Tidak ada jadwal pakan

Tidak ada jadwal pemberian pakan untuk tanggal ini.

)}
); }; export default DailyEventsList;