|
1 | 1 | "use client";
|
2 | 2 |
|
3 | 3 | import { Container } from "@/components/container";
|
4 |
| -import Link from "next/link"; |
5 |
| -import { PageTransitionWrapper } from "@/components/page-transition-wrapper"; |
6 | 4 | import { Suspense } from "react";
|
| 5 | +import Link from "next/link"; |
7 | 6 |
|
8 |
| -// Separate the content into a client component |
9 |
| -const NotFoundContent = () => { |
| 7 | +function NotFoundContent() { |
10 | 8 | return (
|
11 | 9 | <Container className="flex flex-col items-center justify-center text-center min-h-[calc(100vh-144px)]">
|
12 | 10 | <div className="mb-8 relative">
|
13 |
| - <div className="text-9xl font-bold opacity-10 absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-transparent bg-clip-text bg-gradient-to-r from-purple-800 via-cyan-800 to-green-800 select-none" style={{ fontSize: "240px" }}> |
| 11 | + <div |
| 12 | + className="text-9xl font-bold opacity-10 absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-transparent bg-clip-text bg-gradient-to-r from-purple-800 via-cyan-800 to-green-800 select-none" |
| 13 | + style={{ fontSize: "240px" }} |
| 14 | + > |
14 | 15 | 404
|
15 | 16 | </div>
|
16 |
| - |
17 |
| - <div className="mb-12 relative z-10"> |
18 |
| - <h1 className="text-4xl font-bold mb-4 bg-clip-text text-transparent bg-gradient-to-r from-purple-500 via-cyan-500 to-green-500 tracking-tight opacity-100 transition-none pointer-events-auto"> |
19 |
| - Page Not Found |
20 |
| - </h1> |
21 |
| - <p className="text-muted-foreground tracking-tight opacity-100 transition-none pointer-events-auto"> |
22 |
| - Sorry, the page you're looking for doesn't exist or has been moved. |
23 |
| - </p> |
24 |
| - </div> |
25 |
| - </div> |
26 |
| - |
27 |
| - <div className="relative mx-auto max-w-2xl p-6 rounded-2xl backdrop-blur-lg border dark:border-zinc-800/30 border-zinc-200/30 dark:bg-black/10 bg-white/10 group hover:shadow-lg hover:shadow-purple-500/10 transition-all duration-500 mb-10"> |
28 |
| - <div className="absolute inset-0 bg-gradient-to-br opacity-0 from-purple-500/10 via-cyan-500/5 transition-opacity duration-700 group-hover:opacity-100 rounded-2xl -z-10" /> |
29 |
| - |
30 |
| - <p className="text-lg text-muted-foreground leading-relaxed tracking-tight mb-6"> |
31 |
| - It seems like you've ventured into uncharted territory. Don't worry, you can easily navigate back to explore my portfolio. |
32 |
| - </p> |
33 |
| - |
34 |
| - <div className="flex flex-col sm:flex-row gap-4 justify-center"> |
35 |
| - <Link |
36 |
| - href="/" |
37 |
| - className="px-6 py-3 text-sm font-medium text-white rounded-md bg-gradient-to-r from-purple-500 via-cyan-500 to-green-500 hover:from-purple-600 hover:via-cyan-600 hover:to-green-600 transition-all duration-300 hover:shadow-lg hover:shadow-purple-500/20 tracking-tight" |
38 |
| - > |
39 |
| - Return Home |
40 |
| - </Link> |
41 |
| - <Link |
42 |
| - href="/contact" |
43 |
| - className="px-6 py-3 text-sm font-medium text-white rounded-md bg-gradient-to-r from-purple-500 via-cyan-400 to-green-400 hover:from-purple-600 hover:via-cyan-600 hover:to-green-600 transition-all duration-300 backdrop-blur-md tracking-tight hover:shadow-lg hover:shadow-purple-500/20 tracking-tight" |
44 |
| - > |
45 |
| - Contact Me |
46 |
| - </Link> |
| 17 | + <div> |
| 18 | + <h2 className="text-4xl font-bold mb-4 bg-clip-text text-transparent bg-gradient-to-r from-purple-500 via-cyan-500 to-green-500 tracking-tight"> |
| 19 | + Captain's Log, Supplement - Stardate 40400.0 |
| 20 | + </h2> |
| 21 | + <div className="space-y-6"> |
| 22 | + <p className="text-lg text-muted-foreground leading-relaxed tracking-tight"> |
| 23 | + Alert: You've entered an uncharted sector of the codebase. |
| 24 | + </p> |
| 25 | + <p className="text-lg text-muted-foreground leading-relaxed tracking-tight"> |
| 26 | + Sensors indicate this spatial anomaly corresponds to a 404 Error — no quantum signature detected. |
| 27 | + </p> |
| 28 | + <p className="text-lg text-muted-foreground leading-relaxed tracking-tight"> |
| 29 | + Starfleet Command is standing by to assist. |
| 30 | + </p> |
| 31 | + </div> |
| 32 | + <div className="mt-8 flex flex-col sm:flex-row gap-4 justify-center"> |
| 33 | + <Link |
| 34 | + href="/" |
| 35 | + replace |
| 36 | + className="px-6 py-3 text-sm font-medium text-white rounded-md bg-gradient-to-r from-purple-500 via-cyan-500 to-green-500 hover:from-purple-600 hover:via-cyan-600 hover:to-green-600 transition-all duration-300 hover:shadow-lg hover:shadow-purple-500/20 tracking-tight z-50 relative" |
| 37 | + > |
| 38 | + Return to Main Bridge |
| 39 | + </Link> |
| 40 | + </div> |
47 | 41 | </div>
|
48 | 42 | </div>
|
49 | 43 | </Container>
|
50 | 44 | );
|
51 |
| -}; |
| 45 | +} |
52 | 46 |
|
53 |
| -// Main component with Suspense wrapper |
54 |
| -export default function NotFoundPage() { |
| 47 | +export default function NotFound() { |
55 | 48 | return (
|
56 |
| - <PageTransitionWrapper> |
57 |
| - <Suspense fallback={null}> |
58 |
| - <NotFoundContent /> |
59 |
| - </Suspense> |
60 |
| - </PageTransitionWrapper> |
| 49 | + <Suspense fallback={<div className="min-h-screen flex items-center justify-center">Loading...</div>}> |
| 50 | + <NotFoundContent /> |
| 51 | + </Suspense> |
61 | 52 | );
|
62 | 53 | }
|
0 commit comments