/* QuadrAngle — main App */ /* global React, ReactDOM */ const { useState, useEffect, useCallback } = React; function App() { const [lang, setLang] = useState('en'); const [modal, setModal] = useState(null); // { product, mode } useEffect(() => { document.documentElement.lang = lang; document.body.dir = lang === 'ar' ? 'rtl' : 'ltr'; }, [lang]); const openProduct = (p) => setModal({ product: p, mode: 'product' }); const openEnquire = (p, mode = 'enquire') => setModal({ product: p, mode }); const closeModal = () => setModal(null); const scrollTo = useCallback((id) => { if (id === 'top') return window.scrollTo({ top: 0, behavior: 'smooth' }); const el = document.getElementById(id); if (el) { const top = el.getBoundingClientRect().top + window.scrollY - 72; window.scrollTo({ top, behavior: 'smooth' }); } }, []); return ( <>