返回 presentation-ai
LoadingState.tsx
根目录 / src / components / presentation / shared / LoadingState.tsx
1 "use client";
2
3
4 import { ThemeBackground } from "@/components/notebook/presentation/components/theme/ThemeBackground";
5 import { Spinner } from "@/components/ui/spinner";
6 import { usePresentationTheme } from "../providers/PresentationThemeProvider";
7
8 export function LoadingState() {
9 const { resolvedTheme } = usePresentationTheme();
10 return (
11 <ThemeBackground
12 themeOverride={resolvedTheme === "dark" ? "ebony" : "mystique"}
13 >
14 <div className="flex h-[calc(100vh-8rem)] flex-col items-center justify-center">
15 <div className="relative">
16 <Spinner className="size-10 text-primary" />
17 </div>
18 <div className="space-y-2 text-center">
19 <h2 className="text-2xl font-bold">
20 Loading Presentation
21 </h2>
22 <p className="text-muted-foreground">
23 Getting your slides ready…
24 </p>
25 </div>
26 </div>
27 </ThemeBackground>
28 );
29 }
30
30 lines Plain Text