2020-05-02 03:03:19 +02:00
|
|
|
import React from "react";
|
2022-06-11 21:04:39 +02:00
|
|
|
import { Route, Routes } from "react-router-dom";
|
2021-05-24 18:54:34 +02:00
|
|
|
import { Footer } from "./components/Footer";
|
2020-05-02 21:46:05 +02:00
|
|
|
import { LoginFailure } from "./components/LoginFailure";
|
2022-06-25 18:26:28 +02:00
|
|
|
import { LoginLoading } from "./components/LoginLoading";
|
2020-05-13 21:22:56 +02:00
|
|
|
import { LoginSuccess } from "./components/LoginSuccess";
|
2020-05-02 03:03:19 +02:00
|
|
|
import { NavBar } from "./components/NavBar";
|
2020-05-09 19:22:43 +02:00
|
|
|
import { RecentListens } from "./components/RecentListens";
|
|
|
|
|
import { ReportListens } from "./components/ReportListens";
|
2020-11-15 02:43:23 +01:00
|
|
|
import { ReportTopAlbums } from "./components/ReportTopAlbums";
|
|
|
|
|
import { ReportTopArtists } from "./components/ReportTopArtists";
|
2021-10-26 20:09:52 +02:00
|
|
|
import { ReportTopGenres } from "./components/ReportTopGenres";
|
2021-05-22 14:57:28 +02:00
|
|
|
import { ReportTopTracks } from "./components/ReportTopTracks";
|
2020-05-02 03:03:19 +02:00
|
|
|
import { useAuth } from "./hooks/use-auth";
|
|
|
|
|
|
|
|
|
|
export function App() {
|
|
|
|
|
const { isLoaded } = useAuth();
|
|
|
|
|
|
|
|
|
|
if (!isLoaded) {
|
2022-06-25 18:26:28 +02:00
|
|
|
return <LoginLoading />;
|
2020-05-02 03:03:19 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return (
|
2022-07-24 17:45:29 +02:00
|
|
|
<div className="flex flex-col min-h-screen justify-between dark:bg-gray-900">
|
2020-05-02 03:03:19 +02:00
|
|
|
<header>
|
|
|
|
|
<NavBar />
|
|
|
|
|
</header>
|
2021-05-24 18:54:34 +02:00
|
|
|
<main className="mb-auto" /* mb-auto is for sticky footer */>
|
2022-06-11 21:04:39 +02:00
|
|
|
<Routes>
|
|
|
|
|
<Route path="/" />
|
|
|
|
|
<Route path="/login/success" element={<LoginSuccess />} />
|
|
|
|
|
<Route path="/login/failure" element={<LoginFailure />} />
|
|
|
|
|
<Route path="/listens" element={<RecentListens />} />
|
|
|
|
|
<Route path="/reports/listens" element={<ReportListens />} />
|
|
|
|
|
<Route path="/reports/top-artists" element={<ReportTopArtists />} />
|
|
|
|
|
<Route path="/reports/top-albums" element={<ReportTopAlbums />} />
|
|
|
|
|
<Route path="/reports/top-tracks" element={<ReportTopTracks />} />
|
|
|
|
|
<Route path="/reports/top-genres" element={<ReportTopGenres />} />
|
|
|
|
|
</Routes>
|
2021-05-24 18:54:34 +02:00
|
|
|
</main>
|
|
|
|
|
<footer>
|
|
|
|
|
<Footer />
|
|
|
|
|
</footer>
|
2020-05-02 03:03:19 +02:00
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
}
|