From 84ea094d54c27d4b0a3c19bba19526edcd7c805f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Faleiros?= Date: Wed, 20 May 2026 14:44:47 -0300 Subject: [PATCH] feat: persist client sorting preference across page reloads using localStorage --- src/pages/Clients.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/pages/Clients.tsx b/src/pages/Clients.tsx index 38ea435..d119026 100644 --- a/src/pages/Clients.tsx +++ b/src/pages/Clients.tsx @@ -14,17 +14,25 @@ const Clients = () => { ordersData: OrderData[] }>(); const [searchTerm, setSearchTerm] = useState(''); - const [sortBy, setSortBy] = useState('recent'); + const [sortBy, setSortBy] = useState(() => { + 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);