import { Navigate, useRoutes, type Location } from 'react-router-dom';
import { DashboardPage } from '@/pages/DashboardPage';
import { AiProvidersPage } from '@/pages/AiProvidersPage';
import { AiProvidersAmpcodeEditPage } from '@/pages/AiProvidersAmpcodeEditPage';
import { AiProvidersClaudeEditLayout } from '@/pages/AiProvidersClaudeEditLayout';
import { AiProvidersClaudeEditPage } from '@/pages/AiProvidersClaudeEditPage';
import { AiProvidersClaudeModelsPage } from '@/pages/AiProvidersClaudeModelsPage';
import { AiProvidersCodexEditPage } from '@/pages/AiProvidersCodexEditPage';
import { AiProvidersGeminiEditPage } from '@/pages/AiProvidersGeminiEditPage';
import { AiProvidersOpenAIEditLayout } from '@/pages/AiProvidersOpenAIEditLayout';
import { AiProvidersOpenAIEditPage } from '@/pages/AiProvidersOpenAIEditPage';
import { AiProvidersOpenAIModelsPage } from '@/pages/AiProvidersOpenAIModelsPage';
import { AiProvidersVertexEditPage } from '@/pages/AiProvidersVertexEditPage';
import { AuthFilesPage } from '@/pages/AuthFilesPage';
import { AuthFilesOAuthExcludedEditPage } from '@/pages/AuthFilesOAuthExcludedEditPage';
import { AuthFilesOAuthModelAliasEditPage } from '@/pages/AuthFilesOAuthModelAliasEditPage';
import { OAuthPage } from '@/pages/OAuthPage';
import { QuotaPage } from '@/pages/QuotaPage';
import { UsagePage } from '@/pages/UsagePage';
import { ConfigPage } from '@/pages/ConfigPage';
import { LogsPage } from '@/pages/LogsPage';
import { SystemPage } from '@/pages/SystemPage';
const mainRoutes = [
{ path: '/', element: },
{ path: '/dashboard', element: },
{ path: '/settings', element: },
{ path: '/api-keys', element: },
{ path: '/ai-providers/gemini/new', element: },
{ path: '/ai-providers/gemini/:index', element: },
{ path: '/ai-providers/codex/new', element: },
{ path: '/ai-providers/codex/:index', element: },
{
path: '/ai-providers/claude/new',
element: ,
children: [
{ index: true, element: },
{ path: 'models', element: },
],
},
{
path: '/ai-providers/claude/:index',
element: ,
children: [
{ index: true, element: },
{ path: 'models', element: },
],
},
{ path: '/ai-providers/vertex/new', element: },
{ path: '/ai-providers/vertex/:index', element: },
{
path: '/ai-providers/openai/new',
element: ,
children: [
{ index: true, element: },
{ path: 'models', element: },
],
},
{
path: '/ai-providers/openai/:index',
element: ,
children: [
{ index: true, element: },
{ path: 'models', element: },
],
},
{ path: '/ai-providers/ampcode', element: },
{ path: '/ai-providers', element: },
{ path: '/ai-providers/*', element: },
{ path: '/auth-files', element: },
{ path: '/auth-files/oauth-excluded', element: },
{ path: '/auth-files/oauth-model-alias', element: },
{ path: '/oauth', element: },
{ path: '/quota', element: },
{ path: '/usage', element: },
{ path: '/config', element: },
{ path: '/logs', element: },
{ path: '/system', element: },
{ path: '*', element: },
];
export function MainRoutes({ location }: { location?: Location }) {
return useRoutes(mainRoutes, location);
}