@@ -8,12 +8,12 @@ import { Card, CardHeader, CardDescription, CardTitle, CardContent, CardFooter }
8
8
import { Button } from "@/components/ui/button"
9
9
import { ArrowLeft } from "lucide-react"
10
10
import { useRouter , useSearchParams } from "next/navigation"
11
- import { useCallback , useState } from "react"
11
+ import { useCallback , useState , Suspense } from "react"
12
12
import VerificationFailed from "./verificationFailed"
13
13
import { SourcebotLogo } from "@/app/components/sourcebotLogo"
14
14
import useCaptureEvent from "@/hooks/useCaptureEvent"
15
15
16
- export default function VerifyPage ( ) {
16
+ function VerifyPageContent ( ) {
17
17
const [ value , setValue ] = useState ( "" )
18
18
const searchParams = useSearchParams ( )
19
19
const email = searchParams . get ( "email" )
@@ -97,3 +97,28 @@ export default function VerifyPage() {
97
97
)
98
98
}
99
99
100
+ function LoadingVerifyPage ( ) {
101
+ return (
102
+ < div className = "min-h-screen flex flex-col items-center justify-center p-4 bg-gradient-to-b from-background to-muted/30" >
103
+ < div className = "w-full max-w-md" >
104
+ < div className = "flex justify-center mb-6" >
105
+ < SourcebotLogo className = "h-16" size = "large" />
106
+ </ div >
107
+ < Card className = "w-full shadow-lg border-muted/40" >
108
+ < CardHeader className = "space-y-1" >
109
+ < CardTitle className = "text-2xl font-bold text-center" > Loading...</ CardTitle >
110
+ </ CardHeader >
111
+ </ Card >
112
+ </ div >
113
+ </ div >
114
+ )
115
+ }
116
+
117
+ export default function VerifyPage ( ) {
118
+ return (
119
+ < Suspense fallback = { < LoadingVerifyPage /> } >
120
+ < VerifyPageContent />
121
+ </ Suspense >
122
+ )
123
+ }
124
+
0 commit comments