/* global React */
const { useState, useEffect, useMemo, useRef } = React;
// ─────────────────────────────────────────────────────────────────────────────
// Shared icons (drawn inline, simple geometry only)
// ─────────────────────────────────────────────────────────────────────────────
const Icon = {
arrow: (p) => (
),
chev: (p) => (
),
wa: (p) => (
),
phone: (p) => (
),
mail: (p) => (
),
pin: (p) => (
),
search: (p) => (
),
close: (p) => (
),
globe: (p) => (
)
};
// ─────────────────────────────────────────────────────────────────────────────
// CV Auto wordmark — recreated as SVG (raster logo is a known gap per brief)
// ─────────────────────────────────────────────────────────────────────────────
const Wordmark = ({ size = 22, tone = "var(--text)", sub = true }) => (
CVAUTO
{sub && (
Approved Luxury Vehicles
)}
);
// ─────────────────────────────────────────────────────────────────────────────
// Navbar
// ─────────────────────────────────────────────────────────────────────────────
const Navbar = ({ page, setPage, dark = false }) => {
const items = [
["inventory", "Inventory"],
["consignment", "Consignment"],
["sell", "Sell your car"],
["finance", "Finance"],
["about", "About"],
["contact", "Contact"]
];
return (
WhatsApp
);
};
// ─────────────────────────────────────────────────────────────────────────────
// Vehicle Card
// ─────────────────────────────────────────────────────────────────────────────
const VehicleCard = ({ v, onOpen, layout = "tile" }) => {
return (
onOpen(v)}
role="button"
tabIndex={0}
>

{v.badge &&
{v.badge}}
View vehicle
{v.year}
{v.tag}
{v.make} {v.model}
{v.body}
/
{v.transmission}
{v.price === "POA"
? Price on application
: v.price}
);
};
// ─────────────────────────────────────────────────────────────────────────────
// Trust strip (verifiable claims only)
// ─────────────────────────────────────────────────────────────────────────────
const TrustStrip = () => {
const items = [
["Since 2017", "Trading in Al Quoz"],
["Multi-brand", "Curated, independent"],
["Transparent", "Consignment with daily care"],
["Al Quoz", "Opp. Al Serkal Avenue"],
["Finance support", "Buyer assistance"]
];
return (
{items.map(([h, s], i) => (
))}
);
};
// ─────────────────────────────────────────────────────────────────────────────
// Footer
// ─────────────────────────────────────────────────────────────────────────────
const Footer = ({ setPage }) => (
);
// ─────────────────────────────────────────────────────────────────────────────
// Floating WhatsApp FAB
// ─────────────────────────────────────────────────────────────────────────────
const WhatsAppFab = () => (
);
// ─────────────────────────────────────────────────────────────────────────────
// Section header
// ─────────────────────────────────────────────────────────────────────────────
const SectionHead = ({ eyebrow, title, copy, action }) => (
{eyebrow}
{title}
{copy &&
{copy}
}
{action}
);
Object.assign(window, {
Icon, Wordmark, Navbar, VehicleCard, TrustStrip, Footer, WhatsAppFab, SectionHead
});