1 import PropTypes from 'prop-types';
2 import React from 'react';
3 import { Navigate, Route, Routes } from 'react-router-dom';
5 import FullLayout from './FullLayout';
6 import AlttpSeed from '../pages/AlttpSeed';
7 import DiscordBot from '../pages/DiscordBot';
8 import DoorsTracker from '../pages/DoorsTracker';
9 import Event from '../pages/Event';
10 import Front from '../pages/Front';
11 import Map from '../pages/Map';
12 import Schedule from '../pages/Schedule';
13 import Technique from '../pages/Technique';
14 import Techniques from '../pages/Techniques';
15 import Tournament from '../pages/Tournament';
16 import TwitchBot from '../pages/TwitchBot';
17 import User from '../pages/User';
19 const AppRoutes = ({ doLogout }) => <Routes>
20 <Route element={<FullLayout doLogout={doLogout} />}>
23 element={<DiscordBot />}
27 element={<Techniques namespace="dungeons" type="dungeon" />}
31 element={<Technique basepath="dungeons" type="dungeon" />}
37 <Route path="h/:hash" element={<AlttpSeed />} />
40 element={<Techniques namespace="locations" type="location" />}
43 path="locations/:name"
44 element={<Technique basepath="locations" type="location" />}
47 <Route index element={<Navigate replace to="lw" />} />
48 <Route path=":activeMap" element={<Map />} />
52 element={<Techniques namespace="modes" type="mode" />}
56 element={<Technique basepath="modes" type="mode" />}
60 element={<Techniques namespace="rulesets" type="ruleset" />}
64 element={<Technique basepath="rulesets" type="ruleset" />}
66 <Route path="schedule" element={<Schedule />} />
69 element={<Techniques namespace="techniques" type="tech" />}
73 element={<Technique basepath="tech" type="tech" />}
75 <Route path="tournaments/:id" element={<Tournament />} />
78 element={<TwitchBot />}
80 <Route path="users/:id" element={<User />} />
81 <Route path="/" element={<Front />} />
82 <Route path="*" element={<Navigate to="/" />} />
86 element={<DoorsTracker />}
90 AppRoutes.propTypes = {
91 doLogout: PropTypes.func,
94 export default AppRoutes;