// Main App: hash routing, page switcher, modal state const App = () => { const initial = (window.location.hash || "#home").slice(1) || "home"; const [page, setPageRaw] = React.useState(NAV.find(n => n.key === initial) ? initial : "home"); const [openP, setOpenP] = React.useState(null); const setPage = (k) => { setPageRaw(k); if (window.location.hash !== "#" + k) { history.replaceState(null, "", "#" + k); } }; React.useEffect(() => { const on = () => { const k = (window.location.hash || "#home").slice(1) || "home"; if (NAV.find(n => n.key === k)) setPageRaw(k); }; window.addEventListener("hashchange", on); return () => window.removeEventListener("hashchange", on); }, []); const props = { setPage, openProduct: setOpenP }; let Page; switch (page) { case "designer": Page = ; break; case "bridal": Page = ; break; case "couture": Page = ; break; case "shop": Page = ; break; case "jewellery": Page = ; break; case "appointments": Page = ; break; case "visit": Page = ; break; case "contact": Page = ; break; default: Page = ; } return (
{Page}