| import { Switch, Route, useLocation } from "wouter"; |
| import { Home } from "@/pages/Home"; |
| import { Search } from "@/pages/Search"; |
| import { Card, CardContent } from "@/components/ui/card"; |
| import { AlertCircle } from "lucide-react"; |
| import { AnimatePresence } from "framer-motion"; |
|
|
| function App() { |
| const [location] = useLocation(); |
|
|
| return ( |
| <AnimatePresence mode="wait"> |
| <Switch location={location} key={location}> |
| <Route path="/" component={Home} /> |
| <Route path="/search" component={Search} /> |
| <Route component={NotFound} /> |
| </Switch> |
| </AnimatePresence> |
| ); |
| } |
|
|
| function NotFound() { |
| return ( |
| <div className="min-h-screen w-full flex items-center justify-center bg-background"> |
| <Card className="w-full max-w-md mx-4"> |
| <CardContent className="pt-6"> |
| <div className="flex mb-4 gap-2"> |
| <AlertCircle className="h-8 w-8 text-destructive" /> |
| <h1 className="text-2xl font-bold">404 Page Not Found</h1> |
| </div> |
| |
| <p className="mt-4 text-muted-foreground"> |
| The page you're looking for doesn't exist. |
| </p> |
| </CardContent> |
| </Card> |
| </div> |
| ); |
| } |
|
|
| export default App; |