diff --git a/src/components/robotics/BrandShowcase.tsx b/src/components/robotics/BrandShowcase.tsx index dd019f9..4b3c25d 100644 --- a/src/components/robotics/BrandShowcase.tsx +++ b/src/components/robotics/BrandShowcase.tsx @@ -1,96 +1,426 @@ 'use client'; +import Image from 'next/image'; import Link from 'next/link'; +import { ArrowRight } from 'lucide-react'; import { BRANDS, ROBOTS, type RobotBrand } from '@/data/robots'; +type BrandVisual = { + description: string; + chips: string[]; + primary: { src: string; alt: string }; + secondary?: { src: string; alt: string }; +}; + +const BRAND_VISUALS: Record = { + unitree: { + description: + 'Quadruped and humanoid robotics platforms — available exclusively in the UAE through YS Lootah Robotics.', + chips: ['Quadruped', 'Humanoid', 'Inspection', 'Research'], + primary: { src: '/images/robots/unitree-g1.png', alt: 'Unitree G1 humanoid robot' }, + secondary: { src: '/images/robots/unitree-go2.png', alt: 'Unitree Go2 quadruped robot' }, + }, + pudu: { + description: + 'Service, delivery, cleaning, and hospitality robotics — available exclusively in the UAE through YS Lootah Robotics.', + chips: ['Service', 'Delivery', 'Cleaning', 'Hospitality'], + primary: { src: '/images/robots/pudu-bellabot.svg', alt: 'Pudu BellaBot delivery robot' }, + secondary: { src: '/images/robots/pudu-kettybot.svg', alt: 'Pudu KettyBot service robot' }, + }, +}; + export function BrandShowcase() { const brandIds = Object.keys(BRANDS) as RobotBrand[]; return (
{brandIds.map((id) => { const brand = BRANDS[id]; const count = ROBOTS.filter((r) => r.brand === id).length; - return ( - -
-
-
- {brand.name.split(' ')[0]} - - {brand.name.split(' ').slice(1).join(' ')} - -
- - {count} model{count === 1 ? '' : 's'} - -
-

- {brand.tagline} -

-
- Explore {brand.name.split(' ')[0]} - -
- - ); + const visual = BRAND_VISUALS[id]; + return ; })}
); } + +function BrandCard({ + id, + brand, + count, + visual, +}: { + id: RobotBrand; + brand: { name: string; tagline: string; description: string; url: string; accent: string }; + count: number; + visual: BrandVisual; +}) { + const brandWord = brand.name.split(' ')[0]; + const brandRest = brand.name.split(' ').slice(1).join(' '); + const accent = brand.accent; + return ( + + {/* metallic edge */} +
+ {/* subtle grid */} +
+ {/* hover glow */} + + + {/* LEFT — copy */} +
+
+ + Available exclusively in UAE + + + {count} {count === 1 ? 'model' : 'models'} + +
+ +

+ {brandWord} + {brandRest && ( + + {brandRest} + + )} +

+ +

+ {visual.description} +

+ +
    + {visual.chips.map((chip) => ( +
  • + {chip} +
  • + ))} +
+ + + Explore {brandWord} {brandRest && brandRest.replace(/^(.)/, (m) => m.toLowerCase())} + + +
+ + {/* RIGHT — product visual */} +
+ {/* inner grid */} +
+ {/* spotlight */} +
+ {/* secondary product (back-left, smaller) */} + {visual.secondary && ( +
+ {visual.secondary.alt} +
+ )} + {/* primary product (front-right, large) */} +
+ {visual.primary.alt} +
+ {/* floor reflection (faded) */} +
+ +
+ {/* floor line */} +
+ {/* UAE badge */} + + UAE Exclusive + +
+ + + + ); +}