feat: persist client sorting preference across page reloads using localStorage
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m28s

This commit is contained in:
Cauê Faleiros
2026-05-20 14:44:47 -03:00
parent 4a7ff31898
commit 84ea094d54

View File

@@ -14,17 +14,25 @@ const Clients = () => {
ordersData: OrderData[]
}>();
const [searchTerm, setSearchTerm] = useState('');
const [sortBy, setSortBy] = useState<SortOption>('recent');
const [sortBy, setSortBy] = useState<SortOption>(() => {
const saved = localStorage.getItem('nexstar_client_sort');
return (saved as SortOption) || 'recent';
});
// Pagination state
const [currentPage, setCurrentPage] = useState(1);
const [itemsPerPage, setItemsPerPage] = useState(10);
// Reset to first page when search, sort, or date changes
// Reset to first page when search or sort changes
useEffect(() => {
setCurrentPage(1);
}, [searchTerm, sortBy, dateRange]);
// Persist sort option
useEffect(() => {
localStorage.setItem('nexstar_client_sort', sortBy);
}, [sortBy]);
const clientsData = useMemo(() => {
const orders = ordersData.filter(order => {
const orderDate = parseOrderDate(order.Data_Pedido);