import React, { useEffect } from 'react'; import { BrowserRouter, Route, Routes, useLocation } from 'react-router-dom'; import { AnimatePresence, motion } from 'framer-motion'; import { Preloader } from './components/Preloader'; import { Header } from './components/Header'; import { Footer } from './components/Footer'; import { FloatingContact } from './components/FloatingContact'; import { Home } from './pages/Home'; import { About } from './pages/About'; import { ServicesPage } from './pages/ServicesPage'; import { Projects } from './pages/Projects'; import { ProjectDetail } from './pages/ProjectDetail'; import { Investment } from './pages/Investment'; import { Blog } from './pages/Blog'; import { ArticleDetail } from './pages/ArticleDetail'; import { FaqPage } from './pages/FaqPage'; import { ContactPage } from './pages/ContactPage'; import { SiteProvider, useSiteData } from './api'; function ScrollToTop() { const { pathname } = useLocation(); useEffect(() => { window.scrollTo({ top: 0, behavior: 'auto' }); }, [pathname]); return null; } function AnimatedRoutes() { const location = useLocation(); return ( } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> ); } function AppShell() { const { data, error, reload } = useSiteData(); return (
{error ? (

اتصال به سرور برقرار نشد

محتوای سایت از سرور بارگذاری می‌شود؛ لطفاً اتصال اینترنت یا وضعیت سرور را بررسی کنید.

) : data ? (
); } export function App() { useEffect(() => { document.documentElement.setAttribute('dir', 'rtl'); document.documentElement.setAttribute('lang', 'fa'); }, []); return ( ); }