Spaces:
Build error
Build error
Upload src/components/FeaturedVendors.tsx
Browse files
src/components/FeaturedVendors.tsx
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
const vendors = [
|
| 2 |
+
{ id: '1', name: 'The Grand Atrium', category: 'Venue', district: 'Colombo 7', price: '₨ 350K', rating: 4.9, reviews: 127, image: '🏛️', tag: 'Premium' },
|
| 3 |
+
{ id: '2', name: 'Lens & Light Studio', category: 'Photography', district: 'Colombo 3', price: '₨ 150K', rating: 4.8, reviews: 94, image: '📸', tag: 'Top Rated' },
|
| 4 |
+
{ id: '3', name: 'Bloom & Petal', category: 'Florist', district: 'Colombo 5', price: '₨ 80K', rating: 4.9, reviews: 68, image: '💐', tag: 'Popular' },
|
| 5 |
+
{ id: '4', name: 'Silver Spoon Catering', category: 'Catering', district: 'Colombo 4', price: '₨ 250K', rating: 4.7, reviews: 112, image: '🍽️', tag: 'Best Value' },
|
| 6 |
+
]
|
| 7 |
+
|
| 8 |
+
export default function FeaturedVendors() {
|
| 9 |
+
return (
|
| 10 |
+
<section className="py-20 bg-ivory-50">
|
| 11 |
+
<div className="wedding-section">
|
| 12 |
+
<div className="text-center mb-12">
|
| 13 |
+
<p className="text-gold-400 font-heading text-sm tracking-[0.2em] uppercase mb-3">Curated for you</p>
|
| 14 |
+
<h2 className="font-heading text-3xl md:text-4xl font-semibold text-charcoal-700">Featured vendors</h2>
|
| 15 |
+
<div className="wedding-divider mt-6" />
|
| 16 |
+
</div>
|
| 17 |
+
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6">
|
| 18 |
+
{vendors.map((v) => (
|
| 19 |
+
<a key={v.id} href={"/vendor/" + v.id} className="wedding-card-hover overflow-hidden group">
|
| 20 |
+
<div className="h-48 bg-gradient-to-br from-ivory-200 to-rose-100 flex items-center justify-center text-6xl">{v.image}</div>
|
| 21 |
+
<div className="p-5">
|
| 22 |
+
<div className="flex items-center justify-between mb-2">
|
| 23 |
+
<span className="wedding-badge bg-gold-50 text-gold-500">{v.tag}</span>
|
| 24 |
+
<span className="wedding-badge bg-ivory-100 text-charcoal-400">{v.category}</span>
|
| 25 |
+
</div>
|
| 26 |
+
<h3 className="font-heading text-lg font-semibold text-charcoal-700 mb-1">{v.name}</h3>
|
| 27 |
+
<p className="text-sm text-charcoal-400 mb-3">{v.district}</p>
|
| 28 |
+
<div className="flex items-center justify-between">
|
| 29 |
+
<div className="flex items-center gap-1">
|
| 30 |
+
<span className="text-gold-400">★</span>
|
| 31 |
+
<span className="text-sm font-medium text-charcoal-600">{v.rating}</span>
|
| 32 |
+
<span className="text-xs text-charcoal-300">({v.reviews})</span>
|
| 33 |
+
</div>
|
| 34 |
+
<span className="text-sm font-semibold text-charcoal-700">{v.price}</span>
|
| 35 |
+
</div>
|
| 36 |
+
</div>
|
| 37 |
+
</a>
|
| 38 |
+
))}
|
| 39 |
+
</div>
|
| 40 |
+
</div>
|
| 41 |
+
</section>
|
| 42 |
+
)
|
| 43 |
+
}
|