// Modern Vet — main app / router const { useState: useStateA, useEffect: useEffectA } = React; const useHashRoute = () => { const [hash, setHash] = useStateA(window.location.hash || "#/"); useEffectA(() => { const onChange = () => { setHash(window.location.hash || "#/"); window.scrollTo({ top: 0, behavior: "instant" }); }; window.addEventListener("hashchange", onChange); return () => window.removeEventListener("hashchange", onChange); }, []); return hash; }; const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{ "accent": "#E5B595", "showEmergencyStrip": true }/*EDITMODE-END*/; function App() { const hash = useHashRoute(); const [bookOpen, setBookOpen] = useStateA(false); const [branch, setBranch] = useStateA("al-wasl"); const [bookService, setBookService] = useStateA(null); const [tweaks, setTweak] = useTweaks(TWEAK_DEFAULTS); // Apply accent tweak useEffectA(() => { const root = document.documentElement; const accentDarkMap = { "#E5B595": "#C8916B", // peach "#A6BCA6": "#6F8E6F", // sage "#7BAEB3": "#3E8088", // teal "#D8B26A": "#A8862F", // gold }; root.style.setProperty("--peach", tweaks.accent); root.style.setProperty("--peach-dark", accentDarkMap[tweaks.accent] || "#C8916B"); }, [tweaks.accent]); // Parse route const parts = hash.replace(/^#\/?/, "").split("/").filter(Boolean); let page = null; const openBook = (svc) => { if (svc) setBookService(svc); setBookOpen(true); }; if (parts.length === 0) { page = openBook()} branch={branch} setBranch={setBranch} />; } else if (parts[0] === "services" && parts[1]) { page = openBook()} setBookService={setBookService} />; } else if (parts[0] === "services") { page = openBook()} />; } else if (parts[0] === "branches" && parts[1]) { page = openBook()} setBookBranch={setBranch} />; } else if (parts[0] === "branches") { page = ; } else if (parts[0] === "vets" && parts[1]) { page = openBook()} />; } else if (parts[0] === "vets") { page = ; } else if (parts[0] === "prices") { page = openBook()} />; } else if (parts[0] === "emergency") { page = ; } else if (parts[0] === "about") { page = ; } else if (parts[0] === "contact") { page = openBook()} />; } else { page = openBook()} branch={branch} setBranch={setBranch} />; } return ( <> {tweaks.showEmergencyStrip && }