2026-04-14 13:59:23 +00:00
|
|
|
import AgentForm from "./components/agents/AgentForm";
|
|
|
|
|
import AgentList from "./components/agents/AgentList";
|
2026-04-13 08:00:48 +00:00
|
|
|
import { BrowserRouter, Routes, Route, Navigate } from "react-router-dom";
|
|
|
|
|
import AppLayout from "./components/layout/AppLayout";
|
2026-04-13 08:02:48 +00:00
|
|
|
import ProjectForm from "./components/projects/ProjectForm";
|
|
|
|
|
import ProjectDashboard from "./components/projects/ProjectDashboard";
|
2026-04-13 12:43:03 +00:00
|
|
|
import SettingsPage from "./components/settings/SettingsPage";
|
2026-04-14 07:18:11 +00:00
|
|
|
import TicketDetail from "./components/tickets/TicketDetail";
|
|
|
|
|
import TicketList from "./components/tickets/TicketList";
|
2026-04-13 12:45:17 +00:00
|
|
|
import TrackerConfig from "./components/trackers/TrackerConfig";
|
2026-04-13 08:00:48 +00:00
|
|
|
|
|
|
|
|
function EmptyState() {
|
2026-04-13 07:31:24 +00:00
|
|
|
return (
|
2026-04-13 08:00:48 +00:00
|
|
|
<div className="flex items-center justify-center h-full text-gray-400">
|
|
|
|
|
<p>Select a project or create a new one</p>
|
2026-04-13 07:37:19 +00:00
|
|
|
</div>
|
2026-04-13 07:31:24 +00:00
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-13 08:00:48 +00:00
|
|
|
function App() {
|
|
|
|
|
return (
|
|
|
|
|
<BrowserRouter>
|
|
|
|
|
<Routes>
|
|
|
|
|
<Route element={<AppLayout />}>
|
|
|
|
|
<Route index element={<EmptyState />} />
|
2026-04-13 08:02:48 +00:00
|
|
|
<Route path="/projects/new" element={<ProjectForm />} />
|
|
|
|
|
<Route path="/projects/:projectId" element={<ProjectDashboard />} />
|
2026-04-14 07:18:11 +00:00
|
|
|
<Route path="/projects/:projectId/tickets" element={<TicketList />} />
|
2026-04-13 08:02:48 +00:00
|
|
|
<Route path="/projects/:projectId/edit" element={<ProjectForm />} />
|
2026-04-13 12:45:17 +00:00
|
|
|
<Route path="/projects/:projectId/trackers/new" element={<TrackerConfig />} />
|
2026-04-14 09:36:32 +00:00
|
|
|
<Route path="/projects/:projectId/trackers/:trackerConfigId/edit" element={<TrackerConfig />} />
|
2026-04-14 13:59:23 +00:00
|
|
|
<Route path="/agents" element={<AgentList />} />
|
|
|
|
|
<Route path="/agents/new" element={<AgentForm />} />
|
|
|
|
|
<Route path="/agents/:agentId/edit" element={<AgentForm />} />
|
2026-04-14 07:18:11 +00:00
|
|
|
<Route path="/tickets/:ticketId" element={<TicketDetail />} />
|
2026-04-13 12:43:03 +00:00
|
|
|
<Route path="/settings" element={<SettingsPage />} />
|
2026-04-13 08:00:48 +00:00
|
|
|
<Route path="*" element={<Navigate to="/" replace />} />
|
|
|
|
|
</Route>
|
|
|
|
|
</Routes>
|
|
|
|
|
</BrowserRouter>
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-13 07:31:24 +00:00
|
|
|
export default App;
|