import React, { Suspense } from 'react'; import { Routes, Route, Navigate } from 'react-router-dom'; import { Box, CircularProgress } from '@mui/material'; import { motion } from 'framer-motion'; // Context import { AuthProvider } from './context/AuthContext'; // Layout Components import Header from './components/layout/Header'; import Footer from './components/layout/Footer'; import ScrollToTop from './components/common/ScrollToTop'; // Public Pages import Home from './pages/Home'; import About from './pages/About'; import Rooms from './pages/Rooms'; import CategoryGallery from './pages/CategoryGallery'; import RoomDetails from './pages/RoomDetails'; import Facilities from './pages/Facilities'; import Gallery from './pages/Gallery'; import GalleryCategory from './pages/GalleryCategory'; import Contact from './pages/Contact'; import Booking from './pages/Booking'; import BookingConfirmation from './pages/BookingConfirmation'; // Admin Pages import AdminLogin from './pages/admin/Login'; import AdminLayout from './components/admin/AdminLayout'; import ProtectedRoute from './components/admin/ProtectedRoute'; import DashboardMain from './pages/admin/DashboardMain'; import ContentManagement from './pages/admin/ContentManagement'; import RoomManagement from './pages/admin/RoomManagement'; import BookingManagement from './pages/admin/BookingManagement'; import MediaManagement from './pages/admin/MediaManagement'; import SettingsManagement from './pages/admin/SettingsManagement'; // Loading Component const Loading = () => ( ); // Public Layout Wrapper const PublicLayout = ({ children }) => (
{children}