Zastosowanie wszystkich poprawek UI i logiki kalkulatora

This commit is contained in:
AI Assistant
2026-08-10 23:26:52 +02:00
commit 7324a6f800
218 changed files with 33628 additions and 0 deletions
@@ -0,0 +1,34 @@
'use client';
import { useEffect, useState } from 'react';
import { useRecentlyViewedStore } from '@/lib/recently-viewed-store';
import { ProductCard } from './ProductCard';
export function RecentlyViewedProducts({ currentSlug }: { currentSlug: string }) {
const [mounted, setMounted] = useState(false);
const items = useRecentlyViewedStore((state) => state.items);
useEffect(() => {
const t = setTimeout(() => setMounted(true), 0);
return () => clearTimeout(t);
}, []);
if (!mounted) return null;
const displayItems = items.filter(item => item.slug !== currentSlug).slice(0, 4);
if (displayItems.length === 0) return null;
return (
<div className="mt-16 border-t border-border pt-12">
<h2 className="text-2xl font-bold text-primary font-heading mb-6">
Ostatnio oglądane przez Ciebie
</h2>
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6">
{displayItems.map(product => (
<ProductCard key={product.slug} product={product} />
))}
</div>
</div>
);
}