Skip to content

Commit

Permalink
LoadingScreen component
Browse files Browse the repository at this point in the history
  • Loading branch information
fjsj committed Jan 28, 2025
1 parent 6280db8 commit 736080a
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 19 deletions.
9 changes: 2 additions & 7 deletions app/(app)/_layout.tsx
Original file line number Diff line number Diff line change
@@ -1,21 +1,16 @@
import { useMedplumContext } from "@medplum/react-hooks";
import { Redirect, Slot } from "expo-router";
import { View } from "react-native";

import { LoadingScreen } from "@/components/LoadingScreen";
import { PractitionerBanner } from "@/components/PractitionerBanner";
import { Spinner } from "@/components/ui/spinner";
import { ChatProvider } from "@/contexts/ChatContext";

export default function AppLayout() {
const { medplum, profile } = useMedplumContext();
const isPractitioner = profile?.resourceType === "Practitioner";

if (medplum.isLoading()) {
return (
<View className="flex-1 items-center justify-center bg-background-50">
<Spinner size="large" />
</View>
);
return <LoadingScreen />;
}
if (!medplum.getActiveLogin()) {
return <Redirect href="/sign-in" />;
Expand Down
8 changes: 2 additions & 6 deletions app/(app)/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import { useCallback, useMemo, useState } from "react";
import { View } from "react-native";

import { CreateThreadModal } from "@/components/CreateThreadModal";
import { LoadingScreen } from "@/components/LoadingScreen";
import { ThreadList } from "@/components/ThreadList";
import { ThreadListHeader } from "@/components/ThreadListHeader";
import { Spinner } from "@/components/ui/spinner";
import { useAvatars } from "@/hooks/useAvatars";
import { useThreads } from "@/hooks/useThreads";

Expand All @@ -27,11 +27,7 @@ export default function Index() {
}, [medplum, router]);

if (isLoading || isAvatarsLoading) {
return (
<View className="flex-1 items-center justify-center bg-background-50">
<Spinner size="large" />
</View>
);
return <LoadingScreen />;
}

return (
Expand Down
8 changes: 2 additions & 6 deletions app/(app)/thread/[id].tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { Alert, View } from "react-native";
import { ChatHeader } from "@/components/ChatHeader";
import { ChatMessageInput } from "@/components/ChatMessageInput";
import { ChatMessageList } from "@/components/ChatMessageList";
import { Spinner } from "@/components/ui/spinner";
import { LoadingScreen } from "@/components/LoadingScreen";
import { useAvatars } from "@/hooks/useAvatars";
import { useSingleThread } from "@/hooks/useSingleThread";

Expand Down Expand Up @@ -103,11 +103,7 @@ export default function ThreadPage() {
}, [thread, handleSendMessage]);

if (!thread || isAvatarsLoading) {
return (
<View className="flex-1 items-center justify-center bg-background-50">
<Spinner size="large" />
</View>
);
return <LoadingScreen />;
}

return (
Expand Down
11 changes: 11 additions & 0 deletions components/LoadingScreen.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { View } from "react-native";

import { Spinner } from "@/components/ui/spinner";

export function LoadingScreen() {
return (
<View className="flex-1 items-center justify-center bg-background-50">
<Spinner size="large" />
</View>
);
}

0 comments on commit 736080a

Please sign in to comment.