import { Suspense, lazy } from 'react';
import { BrowserRouter, Navigate, Route, Routes, useLocation } from 'react-router-dom';
import { AnimatePresence } from 'motion/react';
import { useIsMobile } from './hooks/useIsMobile';
const Layout = lazy(() => import('./components/layout/Layout'));
const MobileLayout = lazy(() => import('./mobile-components/MobileLayout'));
const Login = lazy(() => import('./account/pages/LoginPage'));
const Overview = lazy(() => import('./workspace/pages/OverviewPage'));
const FilesPage = lazy(() => import('./workspace/pages/FilesPage'));
const RecycleBin = lazy(() => import('./workspace/pages/RecycleBinPage'));
const Shares = lazy(() => import('./sharing/pages/SharesPage'));
const FileShare = lazy(() => import('./sharing/pages/FileSharePage'));
const Tasks = lazy(() => import('./common/pages/TasksPage'));
const Transfer = lazy(() => import('./transfer/pages/TransferPage'));
const AdminLayout = lazy(() => import('./admin/AdminLayout'));
const AdminDashboard = lazy(() => import('./admin/dashboard'));
const AdminSettings = lazy(() => import('./admin/settings'));
const AdminFilesystem = lazy(() => import('./admin/filesystem'));
const AdminStoragePoliciesList = lazy(() => import('./admin/storage-policies-list'));
const AdminUsersList = lazy(() => import('./admin/users-list'));
const AdminFilesList = lazy(() => import('./admin/files-list'));
const AdminFileBlobs = lazy(() => import('./admin/fileblobs'));
const AdminShares = lazy(() => import('./admin/shares'));
const AdminTasks = lazy(() => import('./admin/tasks'));
const AdminOAuthApps = lazy(() => import('./admin/oauthapps'));
function AnimatedRoutes({ isMobile }: { isMobile: boolean }) {
const location = useLocation();
const AppLayout = isMobile ? MobileLayout : Layout;
return (