import { lazy, Suspense } from 'react'; import { Route, HashRouter, Routes } from 'react-router-dom'; import { AppRoute } from './routes'; import { DefaultLayout } from '/@/renderer/layouts'; import { AppOutlet } from '/@/renderer/router/app-outlet'; import { TitlebarOutlet } from '/@/renderer/router/titlebar-outlet'; import { ModalsProvider } from '@mantine/modals'; import { BaseContextModal } from '/@/renderer/components'; import { AddToPlaylistContextModal } from '/@/renderer/features/playlists'; import { ShareItemContextModal } from '/@/renderer/features/sharing'; const NowPlayingRoute = lazy( () => import('/@/renderer/features/now-playing/routes/now-playing-route'), ); const AlbumListRoute = lazy(() => import('/@/renderer/features/albums/routes/album-list-route')); const SongListRoute = lazy(() => import('/@/renderer/features/songs/routes/song-list-route')); const PlaylistDetailRoute = lazy( () => import('/@/renderer/features/playlists/routes/playlist-detail-route'), ); const PlaylistDetailSongListRoute = lazy( () => import('/@/renderer/features/playlists/routes/playlist-detail-song-list-route'), ); const PlaylistListRoute = lazy( () => import('/@/renderer/features/playlists/routes/playlist-list-route'), ); const ActionRequiredRoute = lazy( () => import('/@/renderer/features/action-required/routes/action-required-route'), ); const InvalidRoute = lazy( () => import('/@/renderer/features/action-required/routes/invalid-route'), ); const HomeRoute = lazy(() => import('/@/renderer/features/home/routes/home-route')); const AlbumArtistListRoute = lazy( () => import('/@/renderer/features/artists/routes/album-artist-list-route'), ); const AlbumArtistDetailRoute = lazy( () => import('/@/renderer/features/artists/routes/album-artist-detail-route'), ); const AlbumArtistDetailTopSongsListRoute = lazy( () => import('../features/artists/routes/album-artist-detail-top-songs-list-route'), ); const AlbumDetailRoute = lazy( () => import('/@/renderer/features/albums/routes/album-detail-route'), ); const DummyAlbumDetailRoute = lazy( () => import('/@/renderer/features/albums/routes/dummy-album-detail-route'), ); const GenreListRoute = lazy(() => import('/@/renderer/features/genres/routes/genre-list-route')); const SettingsRoute = lazy(() => import('/@/renderer/features/settings/routes/settings-route')); const SearchRoute = lazy(() => import('/@/renderer/features/search/routes/search-route')); const RouteErrorBoundary = lazy( () => import('/@/renderer/features/action-required/components/route-error-boundary'), ); export const AppRouter = () => { const router = ( }> } errorElement={} > }> } errorElement={} /> } errorElement={} path={AppRoute.HOME} /> } errorElement={} path={AppRoute.SEARCH} /> } errorElement={} path={AppRoute.SETTINGS} /> } errorElement={} path={AppRoute.NOW_PLAYING} /> } errorElement={} /> } path={AppRoute.LIBRARY_GENRES_ALBUMS} /> } path={AppRoute.LIBRARY_GENRES_SONGS} /> } errorElement={} path={AppRoute.LIBRARY_ALBUMS} /> } errorElement={} path={AppRoute.LIBRARY_ALBUMS_DETAIL} /> } errorElement={} path={AppRoute.FAKE_LIBRARY_ALBUM_DETAILS} /> } errorElement={} path={AppRoute.LIBRARY_SONGS} /> } errorElement={} path={AppRoute.PLAYLISTS} /> } errorElement={} path={AppRoute.PLAYLISTS_DETAIL} /> } errorElement={} path={AppRoute.PLAYLISTS_DETAIL_SONGS} /> } path={AppRoute.LIBRARY_ALBUM_ARTISTS} > } /> } /> } path={AppRoute.LIBRARY_ALBUM_ARTISTS_DETAIL_DISCOGRAPHY} /> } path={AppRoute.LIBRARY_ALBUM_ARTISTS_DETAIL_SONGS} /> } path={AppRoute.LIBRARY_ALBUM_ARTISTS_DETAIL_TOP_SONGS} /> } path="*" /> }> }> } path={AppRoute.ACTION_REQUIRED} /> ); return }>{router}; };