import { useEffect, useState, lazy, Suspense } from 'react'; import { Routes, Route, Navigate } from 'react-router-dom'; import { useAuthStore } from '@/stores/auth'; import { useAppStore } from '@/stores/app'; import { authApi } from '@/api/endpoints/auth'; import AppShell from '@/components/layout/AppShell'; import { Loader2, Lock } from 'lucide-react'; // Lazy-loaded pages (code splitting) const LoginPage = lazy(() => import('@/pages/LoginPage')); const ChatPage = lazy(() => import('@/pages/ChatPage')); const TerraformPage = lazy(() => import('@/pages/TerraformPage')); const PromptGeneratorPage = lazy(() => import('@/pages/PromptGeneratorPage')); const WorkspacesPage = lazy(() => import('@/pages/WorkspacesPage')); const ExplorerPage = lazy(() => import('@/pages/ExplorerPage')); const OciServicesPage = lazy(() => import('@/pages/OciServicesPage')); const ReportsPage = lazy(() => import('@/pages/ReportsPage')); const OciConfigPage = lazy(() => import('@/pages/config/OciConfigPage')); const GenAiConfigPage = lazy(() => import('@/pages/config/GenAiConfigPage')); const McpServersPage = lazy(() => import('@/pages/config/McpServersPage')); const AdbConfigPage = lazy(() => import('@/pages/config/AdbConfigPage')); const EmbeddingsPage = lazy(() => import('@/pages/config/EmbeddingsPage')); const EmbConsultPage = lazy(() => import('@/pages/config/EmbConsultPage')); const TerminalPage = lazy(() => import('@/pages/TerminalPage')); const UsersPage = lazy(() => import('@/pages/admin/UsersPage')); const MySettingsPage = lazy(() => import('@/pages/admin/MySettingsPage')); const OracleIamPage = lazy(() => import('@/pages/admin/OracleIamPage')); const AuditPage = lazy(() => import('@/pages/admin/AuditPage')); function PageLoader() { return (
Por seguranca, altere sua senha antes de continuar.