From fe03e0affdc396870079795d28c8c4e5c5c9c456 Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 6 Mar 2026 19:41:57 +0000 Subject: [PATCH] Update src/app/brands/page.tsx --- src/app/brands/page.tsx | 127 ++++++++++++++++++++-------------------- 1 file changed, 65 insertions(+), 62 deletions(-) diff --git a/src/app/brands/page.tsx b/src/app/brands/page.tsx index 1f38cc3..2292035 100644 --- a/src/app/brands/page.tsx +++ b/src/app/brands/page.tsx @@ -1,31 +1,40 @@ 'use client'; -import { ThemeProvider } from '@/components/ThemeProvider'; -import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; +import { ThemeProvider } from '@/components/theme/ThemeProvider'; +import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; +import HeroOverlay from '@/components/sections/hero/HeroOverlay'; +import ProductCardOne from '@/components/sections/product/ProductCardOne'; +import BlurBottomBackground from '@/components/background/BlurBottomBackground'; import { useState } from 'react'; +const navItems = [ + { name: 'Home', id: '/' }, + { name: 'Brands', id: '/brands' }, + { name: 'Search', id: '/search' }, + { name: 'Browse', id: '/browse' }, +]; + const brands = [ - { id: '1', name: 'TechFlow', category: 'Technology', description: 'Leading technology solutions provider' }, - { id: '2', name: 'Innovate Inc', category: 'Innovation', description: 'Pioneering innovation and design' }, - { id: '3', name: 'CloudSync', category: 'Cloud Services', description: 'Enterprise cloud infrastructure' }, - { id: '4', name: 'Design Studio', category: 'Design', description: 'Premium design services' }, - { id: '5', name: 'Acme Corp', category: 'General', description: 'Comprehensive business solutions' }, - { id: '6', name: 'Digital Wave', category: 'Digital Marketing', description: 'Digital transformation experts' }, + { id: '1', name: 'Premium Essentials Co', price: 'Featured', imageSrc: '/placeholders/placeholder.jpg', imageAlt: 'Premium Essentials Co' }, + { id: '2', name: 'Luxury Design Studio', price: 'Featured', imageSrc: '/placeholders/placeholder.jpg', imageAlt: 'Luxury Design Studio' }, + { id: '3', name: 'TechFlow Innovations', price: 'Featured', imageSrc: '/placeholders/placeholder.jpg', imageAlt: 'TechFlow Innovations' }, + { id: '4', name: 'Fashion Forward Collective', price: 'Featured', imageSrc: '/placeholders/placeholder.jpg', imageAlt: 'Fashion Forward Collective' }, + { id: '5', name: 'Eco Conscious Brand', price: 'Featured', imageSrc: '/placeholders/placeholder.jpg', imageAlt: 'Eco Conscious Brand' }, + { id: '6', name: 'Artisan Marketplace', price: 'Featured', imageSrc: '/placeholders/placeholder.jpg', imageAlt: 'Artisan Marketplace' }, ]; export default function BrandsPage() { - const [selectedCategory, setSelectedCategory] = useState('All'); + const [favorites, setFavorites] = useState>(new Set()); - const navItems = [ - { name: 'Home', id: '/' }, - { name: 'Brands', id: '/brands' }, - { name: 'Search', id: '/search' }, - { name: 'Browse', id: '/browse' }, - ]; - - const categories = ['All', ...new Set(brands.map((b) => b.category))]; - const filteredBrands = - selectedCategory === 'All' ? brands : brands.filter((b) => b.category === selectedCategory); + const handleFavorite = (id: string) => { + const newFavorites = new Set(favorites); + if (newFavorites.has(id)) { + newFavorites.delete(id); + } else { + newFavorites.add(id); + } + setFavorites(newFavorites); + }; return ( - -
-
-
-

Our Brands

-

Discover our collection of premium brands

-
+ - {/* Category Filter */} -
- {categories.map((category) => ( - - ))} -
+
+ +
- {/* Brands Grid */} -
- {filteredBrands.map((brand) => ( -
-

{brand.name}

-

{brand.category}

-

{brand.description}

- -
- ))} -
-
-
+
+ ({ + ...brand, + isFavorited: favorites.has(brand.id), + onFavorite: () => handleFavorite(brand.id), + onProductClick: () => console.log(`Clicked brand: ${brand.name}`), + }))} + title="All Brands" + description="Browse our complete collection of partner brands" + tag="Brands" + gridVariant="three-columns-all-equal-width" + animationType="slide-up" + textboxLayout="default" + useInvertedBackground={false} + /> +
+ +
); }