/* === ROAR app: router + mount === */
const { useState: useStateA, useEffect: useEffectA } = React;
function App() {
const [route, setRoute] = useStateA({ page: 'home' });
const [lang, setLang] = useStateA('EN');
const [drawerOpen, setDrawerOpen] = useStateA(false);
// RTL toggle
useEffectA(() => {
document.documentElement.setAttribute('dir', lang === 'AR' ? 'rtl' : 'ltr');
document.documentElement.setAttribute('lang', lang.toLowerCase());
}, [lang]);
// Scroll to top on route change (except home stays)
useEffectA(() => {
if (route.page !== 'project') window.scrollTo({ top: 0, behavior: 'instant' });
}, [route.page, route.sector]);
const openEnquiry = () => setDrawerOpen(true);
const closeEnquiry = () => setDrawerOpen(false);
let page;
switch (route.page) {
case 'projects':
page = ;
break;
case 'project':
page = ;
break;
case 'sectors':
page = ;
break;
case 'studio':
page = ;
break;
case 'awards':
page = ;
break;
case 'contact':
page = ;
break;
default:
page = ;
}
return (
<>
{page}
>
);
}
ReactDOM.createRoot(document.getElementById('root')).render();