From 0a4f8ec4628c2f35311189db482f8f505233b891 Mon Sep 17 00:00:00 2001 From: Vula Builder Date: Mon, 27 Jul 2026 17:10:23 +0000 Subject: [PATCH] Deploy --- .../sections/NewArrivalsSection.tsx | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/components/sections/NewArrivalsSection.tsx diff --git a/src/components/sections/NewArrivalsSection.tsx b/src/components/sections/NewArrivalsSection.tsx new file mode 100644 index 0000000..10fa0e6 --- /dev/null +++ b/src/components/sections/NewArrivalsSection.tsx @@ -0,0 +1,48 @@ +'use client' +import { useVulaContent } from '@/hooks/useVulaContent' +import { Card, CardContent, CardFooter } from '@/components/ui/Card' +import Button from '@/components/ui/Button' +import Image from 'next/image' + +export default function NewArrivalsSection() { + const { items, loading } = useVulaContent('product_carousels') + + if (loading) return
+ if (items.length === 0) return null + + return ( +
+
+

+ FRESH DROPS +

+
+ {items.slice(0, 6).map((item) => { + const d = item.data as { title?: string; description?: string; price?: number; image?: string } + return ( + +
+ {d.image && ( + {d.title + )} +
+ + {d.title &&

{d.title}

} + {d.description &&

{d.description}

} + {d.price !== undefined && ( +

R{Number(d.price || 0).toFixed(2)}

+ )} +
+ + + +
+ ) + })} +
+
+
+ ) +} \ No newline at end of file