/* global React, ReactDOM, useTweaks, TweaksPanel, TweakSection, TweakRadio, TweakColor, TweakToggle, TweakSelect */ const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{ "navMode": "auto", "heroTreatment": "cinematic", "accent": "#C7AE7E", "density": "luxe", "showAccolade": true }/*EDITMODE-END*/; const ROUTES = ["home", "inventory", "brands", "vehicle", "sell", "export", "about", "contact"]; function App() { const [route, setRoute] = React.useState("home"); const [currentVehicle, setCurrentVehicle] = React.useState(null); const [modalOpen, setModalOpen] = React.useState(false); const [modalMode, setModalMode] = React.useState("enquire"); const [modalVehicle, setModalVehicle] = React.useState(null); const tweaksHook = (typeof useTweaks === "function") ? useTweaks(TWEAK_DEFAULTS) : [TWEAK_DEFAULTS, () => {}]; const t = tweaksHook[0]; const setTweak = tweaksHook[1]; // Apply accent via CSS variable React.useEffect(() => { document.documentElement.style.setProperty("--champagne-deep", t.accent || "#B08D4F"); }, [t.accent]); const navigate = (r) => { setRoute(r); window.scrollTo({ top: 0, behavior: "instant" }); }; const openVehicle = (v) => { setCurrentVehicle(v); setRoute("vehicle"); window.scrollTo({ top: 0, behavior: "instant" }); }; const openEnquire = (mode = "enquire", vehicle = null) => { setModalMode(mode); setModalVehicle(vehicle); setModalOpen(true); }; // Dark nav on hero-heavy pages const navDark = t.navMode === "always-dark" || (t.navMode === "auto" && (route === "home" || route === "vehicle" || route === "sell" || route === "export" || route === "about" || route === "contact")); let screen; if (route === "home") screen = ; else if (route === "inventory") screen = ; else if (route === "brands") screen = ; else if (route === "vehicle") screen = ; else if (route === "sell") screen = ; else if (route === "export") screen = ; else if (route === "about") screen = ; else if (route === "contact") screen = ; return ( <>