Router.tsx 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { HashRouter as Router, Routes, Route } from 'react-router-dom';
  2. import { useContext } from 'react';
  3. import { authContext } from '@/context';
  4. import Collection from '@/pages/collections/Collection';
  5. import Collections from '@/pages/collections/Collections';
  6. import Connect from '@/pages/connect/Connect';
  7. import Users from '@/pages/user/Users';
  8. import Database from '@/pages/database/Database';
  9. import Index from '@/pages/index';
  10. import Search from '@/pages/search/VectorSearch';
  11. import System from '@/pages/system/SystemView';
  12. import SystemHealthy from '@/pages/systemHealthy/SystemHealthyView';
  13. const RouterComponent = () => {
  14. const { isManaged } = useContext(authContext);
  15. return (
  16. <Router>
  17. <Routes>
  18. <Route path="/" element={<Index />}>
  19. <Route index element={<Database />} />
  20. <Route path="databases" element={<Database />} />
  21. <Route path="collections" element={<Collections />} />
  22. <Route path="collections/:collectionName" element={<Collection />} />
  23. <Route
  24. path="collections/:collectionName/:tab"
  25. element={<Collection />}
  26. />
  27. <Route path="search" element={<Search />} />
  28. <Route path="system_healthy" element={<SystemHealthy />} />
  29. {!isManaged && (
  30. <>
  31. <Route path="users" element={<Users />} />
  32. <Route path="roles" element={<Users />} />
  33. <Route path="system" element={<System />} />
  34. </>
  35. )}
  36. </Route>
  37. <Route path="connect" element={<Connect />} />
  38. </Routes>
  39. </Router>
  40. );
  41. };
  42. export default RouterComponent;