import { DefaultTooltip, KeenIcon, useDataGrid } from '@/components'; import { useTransactionContext } from '../hooks/useTransactionContext'; import { Button } from '@/components/ui/button'; import { useCallback, useState, useEffect } from 'react'; import { toast } from 'sonner'; const ListToolbar = () => { const { table, reload } = useDataGrid(); // Set the initial state for trxDate const [trxDate, settrxDate] = useState({ from: '', to: '' }); // Function to format date to YYYY-MM-DD const formatDate = (date: Date): string => { return date.toISOString().split('T')[0]; }; // useEffect to set the default date values useEffect(() => { const today = new Date(); const firstDayOfMonth = new Date(today.getFullYear(), today.getMonth(), 1); settrxDate({ from: formatDate(firstDayOfMonth), to: formatDate(today), }); }, []); const handleFilterData = useCallback(() => { try { table.getColumn('transaction_date')?.setFilterValue(trxDate); } catch (error) { toast.error('Error applying filter'); console.error('Error applying filter:', error); } }, [trxDate, table]); useEffect(() => { if (trxDate.from && trxDate.to) { handleFilterData(); } }, [trxDate]); return (
); }; export default ListToolbar;