EverydayTech Platform - Developer Reference
Complete Source Code Documentation - All Applications
Loading...
Searching...
No Matches
App.jsx
Go to the documentation of this file.
1import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
2import Home from './pages/Home';
3import Login from './pages/Login';
4import ForgotPassword from './pages/ForgotPassword';
5import ResetPassword from './pages/ResetPassword';
6import VerifyEmail from './pages/VerifyEmail';
7import Documentation from './pages/Documentation';
8import DocsIndex from './pages/docs/DocsIndex';
9import DocPage from './pages/docs/DocPage';
10import About from './pages/About';
11import Privacy from './pages/Privacy';
12import Terms from './pages/Terms';
13import Security from './pages/Security';
14import KnowledgeBase from './pages/KnowledgeBase';
15import './styles/input.css';
16import './styles/dashboard.css';
17import Dashboard from './pages/Dashboard';
18import Tickets from './pages/Tickets';
19import TicketForm from './pages/TicketForm';
20import Products from './pages/Products';
21import ProductForm from './pages/ProductForm';
22import Customers from './pages/Customers';
23import CustomerForm from './pages/CustomerForm';
24import CustomerDetail from './pages/CustomerDetail';
25import DocumentForm from './pages/DocumentForm';
26import Monitoring from './pages/Monitoring';
27import Agent from './pages/Agent';
28import EditAgent from './pages/EditAgent';
29import RdsViewer from './pages/RdsViewer';
30import Invoices from './pages/Invoices';
31import InvoiceForm from './pages/InvoiceForm';
32import Reports from './pages/Reports';
33import Settings from './pages/Settings';
34import Contracts from './pages/Contracts';
35import ContractFormNew from './pages/ContractFormNew';
36import InvoiceDetail from './pages/InvoiceDetail';
37import PublicInvoicePayment from './pages/PublicInvoicePayment';
38import Tenants from './pages/Tenants';
39import TenantForm from './pages/TenantForm';
40import TenantDetail from './pages/TenantDetail';
41import TenantAudit from './pages/TenantAudit';
42import Orders from './pages/Orders';
43import PurchaseOrders from './pages/PurchaseOrders';
44import PurchaseOrderForm from './pages/PurchaseOrderForm';
45import PurchaseOrderDetail from './pages/PurchaseOrderDetail';
46import Integrations from './pages/Integrations';
47import Services from './pages/Services';
48import HostingAppDetail from './pages/HostingAppDetail';
49import DatabaseDetail from './pages/DatabaseDetail';
50import ServerDetail from './pages/ServerDetail';
51import DNSManagement from './pages/DNSManagement';
52import WordPressSite from './pages/WordPressSite';
53import PrivateRoute from './components/PrivateRoute';
54import DownloadStatus from './pages/DownloadStatus';
55import { apiFetch } from './lib/api';
56import DownloadAgentModal from "./components/DownloadAgentModal";
57import Notifications from './pages/Notifications';
58import AgentV3Download from './pages/AgentV3Download';
59// ...existing code...
60function App() {
61 return (
62 <Router>
63 <Routes>
64
65 {/* Public Routes */}
66 <Route path='/notifications' element={<Notifications />} />
67 <Route path='../components/DownloadAgentModal' element={<DownloadAgentModal />} />
68 <Route path='./lib/api' element={<apiFetch />} />
69 <Route path="/download-status/*" element={<DownloadStatus />} />
70 <Route path="/" element={<Home />} />
71 <Route path="/login" element={<Login />} />
72 <Route path="/forgot-password" element={<ForgotPassword />} />
73 <Route path="/reset-password" element={<ResetPassword />} />
74 <Route path="/verify-email" element={<VerifyEmail />} />
75 <Route path="/docs" element={<DocsIndex />} />
76 <Route path="/docs/:slug" element={<DocPage />} />
77 <Route path="/about" element={<About />} />
78 <Route path="/privacy" element={<Privacy />} />
79 <Route path="/terms" element={<Terms />} />
80 <Route path="/security" element={<Security />} />
81 <Route path="/pay/:token" element={<PublicInvoicePayment />} /> {/* Public invoice payment (no auth) */}
82
83 {/* Authenticated Routes */}
84 <Route path="/dashboard" element={<PrivateRoute><Dashboard /></PrivateRoute>} />
85
86 <Route path="/tickets" element={<PrivateRoute><Tickets /></PrivateRoute>} />
87 <Route path="/tickets/new" element={<PrivateRoute><TicketForm /></PrivateRoute>} />
88 <Route path="/tickets/:id/edit" element={<PrivateRoute><TicketForm /></PrivateRoute>} />
89
90 <Route path="/customers" element={<PrivateRoute><Customers /></PrivateRoute>} />
91 <Route path="/customers/new" element={<PrivateRoute><CustomerForm /></PrivateRoute>} />
92 <Route path="/customers/:id" element={<PrivateRoute><CustomerDetail /></PrivateRoute>} />
93 <Route path="/customers/:id/edit" element={<PrivateRoute><CustomerForm /></PrivateRoute>} />
94
95 <Route path="/knowledge-base" element={<PrivateRoute><KnowledgeBase /></PrivateRoute>} />
96 <Route path="/knowledge-base/new" element={<PrivateRoute><DocumentForm /></PrivateRoute>} />
97 <Route path="/knowledge-base/:id/edit" element={<PrivateRoute><DocumentForm /></PrivateRoute>} />
98
99 <Route path="/monitoring" element={<PrivateRoute><Monitoring /></PrivateRoute>} />
100 <Route path="/agents/:agentId" element={<PrivateRoute><Agent /></PrivateRoute>} />
101 <Route path="/agents/:agentId/rds" element={<PrivateRoute><RdsViewer /></PrivateRoute>} />
102 <Route path="/agents/:agentId/edit" element={<PrivateRoute><EditAgent /></PrivateRoute>} />
103 {/* Agent v3 Download Page */}
104 <Route path="/agent-v3" element={<PrivateRoute><AgentV3Download /></PrivateRoute>} />
105 {/* Agent dashboard tab routes direct to Agent */}
106 <Route path="/agents/:agentId/system" element={<PrivateRoute><Agent /></PrivateRoute>} />
107 <Route path="/agents/:agentId/metrics" element={<PrivateRoute><Agent /></PrivateRoute>} />
108 <Route path="/agents/:agentId/tasks" element={<PrivateRoute><Agent /></PrivateRoute>} />
109 <Route path="/agents/:agentId/terminal" element={<PrivateRoute><Agent /></PrivateRoute>} />
110 <Route path="/agents/:agentId/services" element={<PrivateRoute><Agent /></PrivateRoute>} />
111 <Route path="/agents/:agentId/events" element={<PrivateRoute><Agent /></PrivateRoute>} />
112 <Route path="/agents/:agentId/files" element={<PrivateRoute><Agent /></PrivateRoute>} />
113 <Route path="/agents/:agentId/rds-dashboard" element={<PrivateRoute><Agent /></PrivateRoute>} />
114 <Route path="/invoices" element={<PrivateRoute><Invoices /></PrivateRoute>} />
115 <Route path="/invoices/new" element={<PrivateRoute><InvoiceForm /></PrivateRoute>} />
116 <Route path="/invoices/:id" element={<PrivateRoute><InvoiceDetail /></PrivateRoute>} />
117 <Route path="/invoices/:id/edit" element={<PrivateRoute><InvoiceForm /></PrivateRoute>} />
118 <Route path="/products" element={<PrivateRoute><Products /></PrivateRoute>} />
119 <Route path="/products/new" element={<PrivateRoute><ProductForm /></PrivateRoute>} />
120 <Route path="/products/:id" element={<PrivateRoute><ProductForm /></PrivateRoute>} />
121 <Route path="/reports" element={<PrivateRoute><Reports /></PrivateRoute>} />
122 <Route path="/settings" element={<PrivateRoute><Settings /></PrivateRoute>} />
123 <Route path="/contracts" element={<PrivateRoute><Contracts /></PrivateRoute>} />
124 <Route path="/contracts/new" element={<PrivateRoute><ContractFormNew /></PrivateRoute>} />
125 <Route path="/contracts/:id" element={<PrivateRoute><ContractFormNew /></PrivateRoute>} />
126 <Route path="/contracts/:id/edit" element={<PrivateRoute><ContractFormNew /></PrivateRoute>} />
127
128 <Route path="/tenants" element={<PrivateRoute><Tenants /></PrivateRoute>} />
129 <Route path="/tenants/new" element={<PrivateRoute><TenantForm /></PrivateRoute>} />
130 <Route path="/tenants/:id" element={<PrivateRoute><TenantDetail /></PrivateRoute>} />
131 <Route path="/tenants/:id/audit" element={<PrivateRoute><TenantAudit /></PrivateRoute>} />
132 <Route path="/tenants/:id/edit" element={<PrivateRoute><TenantForm /></PrivateRoute>} />
133
134 <Route path="/orders" element={<PrivateRoute><Orders /></PrivateRoute>} />
135 <Route path="/purchase-orders" element={<PrivateRoute><PurchaseOrders /></PrivateRoute>} />
136 <Route path="/purchase-orders/new" element={<PrivateRoute><PurchaseOrderForm /></PrivateRoute>} />
137 <Route path="/purchase-orders/:id" element={<PrivateRoute><PurchaseOrderDetail /></PrivateRoute>} />
138 <Route path="/purchase-orders/:id/edit" element={<PrivateRoute><PurchaseOrderForm /></PrivateRoute>} />
139
140 <Route path="/integrations" element={<PrivateRoute><Integrations /></PrivateRoute>} />
141 <Route path="/services" element={<PrivateRoute><Services /></PrivateRoute>} />
142 <Route path="/wordpress/:domain" element={<PrivateRoute><WordPressSite /></PrivateRoute>} />
143 <Route path="/hosting/apps/:id" element={<PrivateRoute><HostingAppDetail /></PrivateRoute>} />
144 <Route path="/hosting/databases/:id" element={<PrivateRoute><DatabaseDetail /></PrivateRoute>} />
145 <Route path="/hosting/servers/:id" element={<PrivateRoute><ServerDetail /></PrivateRoute>} />
146 <Route path="/dns-management/:domain" element={<PrivateRoute><DNSManagement /></PrivateRoute>} />
147 </Routes>
148 </Router>
149 );
150}
151
152export default App;