mirror of
https://github.com/Radarr/Radarr.git
synced 2026-04-18 21:35:51 -04:00
(cherry picked from commit 824ed0a36931ce7aae9aa544a7baf0738dae568c) Closes #10230 Closes #10390 Closes #10247
164 lines
5.2 KiB
TypeScript
164 lines
5.2 KiB
TypeScript
import React from 'react';
|
|
import { Redirect, Route } from 'react-router-dom';
|
|
import Blocklist from 'Activity/Blocklist/Blocklist';
|
|
import History from 'Activity/History/History';
|
|
import Queue from 'Activity/Queue/Queue';
|
|
import AddNewMovieConnector from 'AddMovie/AddNewMovie/AddNewMovieConnector';
|
|
import ImportMovies from 'AddMovie/ImportMovie/ImportMovies';
|
|
import CalendarPageConnector from 'Calendar/CalendarPageConnector';
|
|
import CollectionConnector from 'Collection/CollectionConnector';
|
|
import NotFound from 'Components/NotFound';
|
|
import Switch from 'Components/Router/Switch';
|
|
import DiscoverMovieConnector from 'DiscoverMovie/DiscoverMovieConnector';
|
|
import MovieDetailsPageConnector from 'Movie/Details/MovieDetailsPageConnector';
|
|
import MovieIndex from 'Movie/Index/MovieIndex';
|
|
import CustomFormatSettingsPage from 'Settings/CustomFormats/CustomFormatSettingsPage';
|
|
import DownloadClientSettingsConnector from 'Settings/DownloadClients/DownloadClientSettingsConnector';
|
|
import GeneralSettingsConnector from 'Settings/General/GeneralSettingsConnector';
|
|
import ImportListSettingsConnector from 'Settings/ImportLists/ImportListSettingsConnector';
|
|
import IndexerSettingsConnector from 'Settings/Indexers/IndexerSettingsConnector';
|
|
import MediaManagementConnector from 'Settings/MediaManagement/MediaManagementConnector';
|
|
import MetadataSettings from 'Settings/Metadata/MetadataSettings';
|
|
import NotificationSettings from 'Settings/Notifications/NotificationSettings';
|
|
import Profiles from 'Settings/Profiles/Profiles';
|
|
import QualityConnector from 'Settings/Quality/QualityConnector';
|
|
import Settings from 'Settings/Settings';
|
|
import TagSettings from 'Settings/Tags/TagSettings';
|
|
import UISettingsConnector from 'Settings/UI/UISettingsConnector';
|
|
import BackupsConnector from 'System/Backup/BackupsConnector';
|
|
import LogsTableConnector from 'System/Events/LogsTableConnector';
|
|
import Logs from 'System/Logs/Logs';
|
|
import Status from 'System/Status/Status';
|
|
import Tasks from 'System/Tasks/Tasks';
|
|
import Updates from 'System/Updates/Updates';
|
|
import getPathWithUrlBase from 'Utilities/getPathWithUrlBase';
|
|
import CutoffUnmetConnector from 'Wanted/CutoffUnmet/CutoffUnmetConnector';
|
|
import MissingConnector from 'Wanted/Missing/MissingConnector';
|
|
|
|
function RedirectWithUrlBase() {
|
|
return <Redirect to={getPathWithUrlBase('/')} />;
|
|
}
|
|
|
|
function AppRoutes() {
|
|
return (
|
|
<Switch>
|
|
{/*
|
|
Movies
|
|
*/}
|
|
|
|
<Route exact={true} path="/" component={MovieIndex} />
|
|
|
|
{window.Radarr.urlBase && (
|
|
<Route
|
|
exact={true}
|
|
path="/"
|
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
// @ts-ignore
|
|
addUrlBase={false}
|
|
render={RedirectWithUrlBase}
|
|
/>
|
|
)}
|
|
|
|
<Route path="/add/new" component={AddNewMovieConnector} />
|
|
|
|
<Route path="/collections" component={CollectionConnector} />
|
|
|
|
<Route path="/add/import" component={ImportMovies} />
|
|
|
|
<Route path="/add/discover" component={DiscoverMovieConnector} />
|
|
|
|
<Route path="/movie/:titleSlug" component={MovieDetailsPageConnector} />
|
|
|
|
{/*
|
|
Calendar
|
|
*/}
|
|
|
|
<Route path="/calendar" component={CalendarPageConnector} />
|
|
|
|
{/*
|
|
Activity
|
|
*/}
|
|
|
|
<Route path="/activity/history" component={History} />
|
|
|
|
<Route path="/activity/queue" component={Queue} />
|
|
|
|
<Route path="/activity/blocklist" component={Blocklist} />
|
|
|
|
{/*
|
|
Wanted
|
|
*/}
|
|
|
|
<Route path="/wanted/missing" component={MissingConnector} />
|
|
|
|
<Route path="/wanted/cutoffunmet" component={CutoffUnmetConnector} />
|
|
|
|
{/*
|
|
Settings
|
|
*/}
|
|
|
|
<Route exact={true} path="/settings" component={Settings} />
|
|
|
|
<Route
|
|
path="/settings/mediamanagement"
|
|
component={MediaManagementConnector}
|
|
/>
|
|
|
|
<Route path="/settings/profiles" component={Profiles} />
|
|
|
|
<Route path="/settings/quality" component={QualityConnector} />
|
|
|
|
<Route
|
|
path="/settings/customformats"
|
|
component={CustomFormatSettingsPage}
|
|
/>
|
|
|
|
<Route path="/settings/indexers" component={IndexerSettingsConnector} />
|
|
|
|
<Route
|
|
path="/settings/downloadclients"
|
|
component={DownloadClientSettingsConnector}
|
|
/>
|
|
|
|
<Route
|
|
path="/settings/importlists"
|
|
component={ImportListSettingsConnector}
|
|
/>
|
|
|
|
<Route path="/settings/connect" component={NotificationSettings} />
|
|
|
|
<Route path="/settings/metadata" component={MetadataSettings} />
|
|
|
|
<Route path="/settings/tags" component={TagSettings} />
|
|
|
|
<Route path="/settings/general" component={GeneralSettingsConnector} />
|
|
|
|
<Route path="/settings/ui" component={UISettingsConnector} />
|
|
|
|
{/*
|
|
System
|
|
*/}
|
|
|
|
<Route path="/system/status" component={Status} />
|
|
|
|
<Route path="/system/tasks" component={Tasks} />
|
|
|
|
<Route path="/system/backup" component={BackupsConnector} />
|
|
|
|
<Route path="/system/updates" component={Updates} />
|
|
|
|
<Route path="/system/events" component={LogsTableConnector} />
|
|
|
|
<Route path="/system/logs/files" component={Logs} />
|
|
|
|
{/*
|
|
Not Found
|
|
*/}
|
|
|
|
<Route path="*" component={NotFound} />
|
|
</Switch>
|
|
);
|
|
}
|
|
|
|
export default AppRoutes;
|