)}
{rank === undefined && mmr === undefined && (
-
-
+
diff --git a/src/components/header.tsx b/src/components/header.tsx
new file mode 100644
index 0000000..4cb1dc0
--- /dev/null
+++ b/src/components/header.tsx
@@ -0,0 +1,206 @@
+'use client'
+
+import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'
+import { Button } from '@/components/ui/button'
+import {
+ DropdownMenu,
+ DropdownMenuContent,
+ DropdownMenuItem,
+ DropdownMenuTrigger,
+} from '@/components/ui/dropdown-menu'
+import { LogIn, LogOut, Menu, Moon, Settings, Sun, User, X } from 'lucide-react'
+import { useTheme } from 'next-themes'
+import Link from 'next/link'
+import { useState } from 'react'
+
+export function MainHeader() {
+ const { setTheme, theme } = useTheme()
+ const [mobileMenuOpen, setMobileMenuOpen] = useState(false)
+
+ // Mock authentication state - replace with your actual auth logic
+ const [isAuthenticated, setIsAuthenticated] = useState(false)
+
+ // Mock user data - replace with your actual user data
+ const userData = {
+ name: 'Player123',
+ avatar: '/placeholder.svg?height=40&width=40',
+ }
+
+ // Toggle authentication for demo purposes
+ const toggleAuth = () => {
+ setIsAuthenticated(!isAuthenticated)
+ }
+
+ return (
+
+ )
+}
diff --git a/src/components/mode-toggle.tsx b/src/components/mode-toggle.tsx
new file mode 100644
index 0000000..34ae2fa
--- /dev/null
+++ b/src/components/mode-toggle.tsx
@@ -0,0 +1,40 @@
+'use client'
+
+import { Moon, Sun } from 'lucide-react'
+import { useTheme } from 'next-themes'
+import * as React from 'react'
+
+import { Button } from '@/components/ui/button'
+import {
+ DropdownMenu,
+ DropdownMenuContent,
+ DropdownMenuItem,
+ DropdownMenuTrigger,
+} from '@/components/ui/dropdown-menu'
+
+export function ModeToggle() {
+ const { setTheme } = useTheme()
+
+ return (
+
+
+
+
+
+ setTheme('light')}>
+ Light
+
+ setTheme('dark')}>
+ Dark
+
+ setTheme('system')}>
+ System
+
+
+
+ )
+}
diff --git a/src/components/theme-provider.tsx b/src/components/theme-provider.tsx
new file mode 100644
index 0000000..0253d2a
--- /dev/null
+++ b/src/components/theme-provider.tsx
@@ -0,0 +1,11 @@
+'use client'
+
+import { ThemeProvider as NextThemesProvider } from 'next-themes'
+import type * as React from 'react'
+
+export function ThemeProvider({
+ children,
+ ...props
+}: React.ComponentProps
) {
+ return {children}
+}