Switch to version 4: modified src/pages/HomePage/sections/Products.tsx
This commit is contained in:
@@ -63,108 +63,53 @@ const ProductsInline = () => {
|
||||
tag="p"
|
||||
className="md:max-w-7/10 text-lg md:text-xl leading-snug text-center text-balance"
|
||||
/>
|
||||
|
||||
{(undefined || undefined) && (
|
||||
<div className="flex flex-wrap justify-center gap-3 mt-2 md:mt-3">
|
||||
{undefined && <Button text={undefined.text} href={undefined.href} variant="primary"/>}
|
||||
{undefined && <Button text={undefined.text} href={undefined.href} variant="secondary" animationDelay={0.1} />}
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
|
||||
<div className="w-content-width mx-auto grid grid-cols-1 md:grid-cols-6 gap-3">
|
||||
{[
|
||||
{
|
||||
description: "Buttery, golden, and perfect with your morning coffee.",
|
||||
href: "#",
|
||||
buttonText: "Buy Now",
|
||||
title: "Flaky Croissants ⭐⭐⭐⭐⭐",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/freshly-baked-croissant-white-plate-with-black-coffee_181624-60129.jpg"
|
||||
},
|
||||
{
|
||||
description: "Slow-fermented for a rich flavor and perfect crust.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/loaf-bread-tied-with-rope-wooden-board_114579-72178.jpg",
|
||||
buttonText: "Buy Now",
|
||||
title: "Artisan Sourdough ⭐⭐⭐⭐⭐"
|
||||
},
|
||||
{
|
||||
description: "Beautifully decorated and bursting with flavor.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/delicious-rainbow-cupcake-still-life_23-2150423807.jpg",
|
||||
buttonText: "Buy Now",
|
||||
title: "Gourmet Cupcakes ⭐⭐⭐⭐⭐"
|
||||
},
|
||||
{
|
||||
description: "Classic recipes with a homemade taste you'll love.",
|
||||
href: "#",
|
||||
buttonText: "Buy Now",
|
||||
title: "Signature Cookies ⭐⭐⭐⭐⭐",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/bunch-cookies-bundled-together-marble-background_114579-25950.jpg"
|
||||
},
|
||||
{
|
||||
buttonText: "Buy Now",
|
||||
title: "Seasonal Fruit Pies ⭐⭐⭐⭐⭐",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/top-view-fruit-pie-arrangement_23-2148531646.jpg",
|
||||
href: "#",
|
||||
description: "Made with the freshest fruit and a flaky, buttery crust."
|
||||
},
|
||||
{
|
||||
buttonText: "Buy Now",
|
||||
title: "Decadent Brownies ⭐⭐⭐⭐⭐",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/chocolate-brownie-cake-piece-with-walnuts-wooden-table_114579-33519.jpg",
|
||||
href: "#",
|
||||
description: "Fudgy, rich, and packed with premium chocolate chunks."
|
||||
},
|
||||
{
|
||||
buttonText: "Buy Now",
|
||||
title: "Red Velvet Cake ⭐⭐⭐⭐⭐",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/slice-red-velvet-cake-with-cream-cheese-frosting_114579-33520.jpg",
|
||||
href: "#",
|
||||
description: "Moist layers of vibrant red cake with decadent cream cheese frosting."
|
||||
}
|
||||
].map((item, index) => {
|
||||
const gridClasses = [
|
||||
"md:col-span-2",
|
||||
"md:col-span-4",
|
||||
"md:col-span-3",
|
||||
"md:col-span-3",
|
||||
"md:col-span-2",
|
||||
"md:col-span-2",
|
||||
"md:col-span-2",
|
||||
];
|
||||
const staggerDelays = [0, 0.1, 0, 0.1, 0, 0.1, 0.2];
|
||||
|
||||
return (
|
||||
<ScrollReveal
|
||||
key={index}
|
||||
variant="slide-up"
|
||||
delay={staggerDelays[index]}
|
||||
className={cls(
|
||||
"relative group overflow-hidden rounded-xl card flex flex-col min-h-[300px] md:min-h-[400px]",
|
||||
gridClasses[index]
|
||||
)}
|
||||
>
|
||||
<div className="absolute inset-0 w-full h-full">
|
||||
{[{"description":"Buttery, golden, and perfect with your morning coffee.","href":"#","buttonText":"Buy Now","title":"Flaky Croissants ⭐⭐⭐⭐⭐","imageSrc":"http://img.b2bpic.net/free-photo/freshly-baked-croissant-white-plate-with-black-coffee_181624-60129.jpg"},{"description":"Slow-fermented for a rich flavor and perfect crust.","href":"#","imageSrc":"http://img.b2bpic.net/free-photo/loaf-bread-tied-with-rope-wooden-board_114579-72178.jpg","buttonText":"Buy Now","title":"Artisan Sourdough ⭐⭐⭐⭐⭐"},{"description":"Beautifully decorated and bursting with flavor.","href":"#","imageSrc":"http://img.b2bpic.net/free-photo/delicious-rainbow-cupcake-still-life_23-2150423807.jpg","buttonText":"Buy Now","title":"Gourmet Cupcakes ⭐⭐⭐⭐⭐"},{"description":"Classic recipes with a homemade taste you'll love.","href":"#","buttonText":"Buy Now","title":"Signature Cookies ⭐⭐⭐⭐⭐","imageSrc":"http://img.b2bpic.net/free-photo/bunch-cookies-bundled-together-marble-background_114579-25950.jpg"},{"buttonText":"Buy Now","title":"Seasonal Fruit Pies ⭐⭐⭐⭐⭐","imageSrc":"http://img.b2bpic.net/free-photo/top-view-fruit-pie-arrangement_23-2148531646.jpg","href":"#","description":"Made with the freshest fruits of the season."},{"imageSrc":"http://img.b2bpic.net/free-photo/from-cake-table_23-2147783757.jpg","title":"Custom Celebration Cakes ⭐⭐⭐⭐⭐","buttonText":"Buy Now","description":"Designed to make your special moments unforgettable.","href":"#"},{"title":"Sweet Cinnamon Rolls ⭐⭐⭐⭐⭐","buttonText":"Buy Now","imageSrc":"http://img.b2bpic.net/free-photo/cinnamon-rolls-buns-wooden-table-kanelbulle-swedish-dessert_123827-22535.jpg","description":"Warm, gooey, and topped with decadent cream cheese frosting.","href":"#"}].map((item, index) => (
|
||||
<ScrollReveal key={item.title} variant="slide-up" delay={staggerDelays[index]} className={cls("col-span-1 group", gridClasses[index])}>
|
||||
<a href={item.href} className="block relative overflow-hidden rounded">
|
||||
<div className="h-80 xl:h-100 2xl:h-120 overflow-hidden">
|
||||
<ImageOrVideo
|
||||
imageSrc={item.imageSrc}
|
||||
className="w-full h-full object-cover transition-transform duration-700 group-hover:scale-105"
|
||||
/>
|
||||
<div className="absolute inset-0 bg-gradient-to-t from-black/80 via-black/20 to-transparent" />
|
||||
</div>
|
||||
|
||||
<div className="relative z-10 flex flex-col justify-end h-full p-6 md:p-8">
|
||||
<h3 className="text-2xl md:text-3xl font-semibold text-white mb-2">
|
||||
{item.title}
|
||||
</h3>
|
||||
<p className="text-white/80 text-base md:text-lg mb-4 max-w-md">
|
||||
{item.description}
|
||||
</p>
|
||||
<Button
|
||||
text={item.buttonText}
|
||||
href={item.href}
|
||||
variant="primary"
|
||||
className="w-fit"
|
||||
videoSrc={item.videoSrc}
|
||||
className="rounded group-hover:scale-105 transition-transform duration-500"
|
||||
/>
|
||||
</div>
|
||||
</ScrollReveal>
|
||||
);
|
||||
})}
|
||||
<div className="absolute -inset-x-px -bottom-px h-2/5 backdrop-blur-xl mask-fade-top-overlay" aria-hidden="true" />
|
||||
<div className="absolute inset-x-3 bottom-3 2xl:inset-x-4 2xl:bottom-4 z-10">
|
||||
<div className="relative flex flex-col gap-1 md:gap-0 md:group-hover:gap-1 p-3 2xl:p-4 transition-all duration-400">
|
||||
<div className="absolute inset-0 -z-10 card rounded translate-y-0 opacity-100 md:translate-y-full md:opacity-0 transition-all duration-400 ease-out md:group-hover:translate-y-0 md:group-hover:opacity-100" />
|
||||
<h3 className="text-2xl font-semibold leading-snug text-foreground md:text-white transition-colors duration-400 md:group-hover:text-foreground">
|
||||
{item.title}
|
||||
</h3>
|
||||
<div className="grid grid-rows-[1fr] md:grid-rows-[0fr] transition-all duration-400 ease-out md:group-hover:grid-rows-[1fr]">
|
||||
<p className="overflow-hidden text-base leading-snug text-foreground opacity-100 md:opacity-0 transition-opacity duration-400 md:group-hover:opacity-100">
|
||||
{item.description}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</ScrollReveal>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
};
|
||||
|
||||
export default function ProductsSection() {
|
||||
return (
|
||||
<div data-webild-section="products" id="products">
|
||||
<ProductsInline />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user