diff --git a/web/app/routes/logbook.flights.$id/route.tsx b/web/app/routes/logbook.flights.$id/route.tsx index a0d8563..28815e6 100644 --- a/web/app/routes/logbook.flights.$id/route.tsx +++ b/web/app/routes/logbook.flights.$id/route.tsx @@ -1,3 +1,4 @@ +import ErrorDisplay from "@/ui/error-display"; import { client } from "@/util/api"; import { Center, Container, List, Loader, Stack, Text } from "@mantine/core"; import { useParams } from "@remix-run/react"; @@ -17,12 +18,7 @@ export default function Flight() { {flight.isError ? ( - - - - - Error fetching flight - + ) : flight.isPending ? (
diff --git a/web/app/routes/logbook.me/route.tsx b/web/app/routes/logbook.me/route.tsx index 579d08f..8cc0a80 100644 --- a/web/app/routes/logbook.me/route.tsx +++ b/web/app/routes/logbook.me/route.tsx @@ -1,5 +1,6 @@ +import ErrorDisplay from "@/ui/error-display"; import { client } from "@/util/api"; -import { Container, Text, Title } from "@mantine/core"; +import { Center, Container, Loader, Text, Title } from "@mantine/core"; import { useQuery } from "@tanstack/react-query"; export default function Me() { @@ -10,8 +11,22 @@ export default function Me() { return ( - {user.data.username} - Level {user.data.level} + {user.isLoading ? ( +
+ +
+ ) : user.isError ? ( +
+ +
+ ) : user.data ? ( + <> + {user.data.username} + Level {user.data.level}{" "} + + ) : ( + Unknown Error + )}
); } diff --git a/web/app/ui/error-display.tsx b/web/app/ui/error-display.tsx new file mode 100644 index 0000000..01c13b0 --- /dev/null +++ b/web/app/ui/error-display.tsx @@ -0,0 +1,13 @@ +import { Stack, Text } from "@mantine/core"; +import { IconAlertTriangle } from "@tabler/icons-react"; + +export default function ErrorDisplay({ error }: { error: string }) { + return ( + + + + + {error} + + ); +}