import React, { useEffect, useState, useMemo } from 'react';
import { Helmet } from 'react-helmet';
import { useNavigate } from 'react-router-dom';
import { useProductStore } from '@/store/productStore';
import { useCategoryStore } from '@/store/categoryStore';
import ProductCard from '@/components/ProductCard';
import { Button } from '@/components/ui/button';
import { Input } from '@/components/ui/input';
import { Skeleton } from '@/components/ui/skeleton';
import { Search, Filter, PackageX } from 'lucide-react';
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from "@/components/ui/select";
import { trackPageView } from '@/lib/facebookPixel';
const ProductsPage = () => {
const { products, fetchProducts, isLoading } = useProductStore();
const { categories, fetchCategories } = useCategoryStore();
const [searchQuery, setSearchQuery] = useState('');
const [selectedCategory, setSelectedCategory] = useState('all');
useEffect(() => {
trackPageView();
fetchProducts({ itemsPerPage: 50 });
fetchCategories();
}, []);
// Performance Optimization: Memoize filtering logic
const filteredProducts = useMemo(() => {
return products.filter(product => {
const matchesSearch = product.name.toLowerCase().includes(searchQuery.toLowerCase());
const matchesCategory = selectedCategory === 'all' || product.category_id === selectedCategory;
return matchesSearch && matchesCategory;
});
}, [products, searchQuery, selectedCategory]);
return (
<>
সেরা মানের খেলনা এবং শিক্ষামূলক সামগ্রী
আপনার অনুসন্ধানের সাথে মেলে এমন কোনো পণ্য নেই। অনুগ্রহ করে অন্য কীওয়ার্ড দিয়ে চেষ্টা করুন বা ক্যাটাগরি পরিবর্তন করুন।