diff --git a/components/PremiumButton.tsx b/components/PremiumButton.tsx index 2837093e..45e5d71f 100644 --- a/components/PremiumButton.tsx +++ b/components/PremiumButton.tsx @@ -10,9 +10,10 @@ import { User } from '@supabase/supabase-js'; interface PremiumButtonProps { user: User; className?: string; + compact?: boolean; } -export default function PremiumButton({ user, className = '' }: PremiumButtonProps) { +export default function PremiumButton({ user, className = '', compact = false }: PremiumButtonProps) { const [isPremium, setIsPremium] = useState(false); const [isLoading, setIsLoading] = useState(true); const supabase = createClient(); @@ -66,7 +67,7 @@ export default function PremiumButton({ user, className = '' }: PremiumButtonPro {isPremium ? ( ) : ( )} diff --git a/components/header.tsx b/components/header.tsx index b67e712a..ed9b2db3 100644 --- a/components/header.tsx +++ b/components/header.tsx @@ -65,137 +65,162 @@ export default function Header() { ] return ( -
-
- {/* logo section - left */} -
- - - -
- - {/* desktop nav - center */} - - {/* mobile menu button */} -
- {/* */} - {!loading && user && ( -
- - -
- )} - + {/* desktop auth & theme - right */} +
+ {/* */} + {loading ? ( +
Loading...
+ ) : user ? ( +
+ + + +
+ ) : ( + <> + + + + )} +
+ + {/* mobile menu button */} +
+ {/* */} + {!loading && user && ( +
+ + +
+ )} + +
-
+
- {/* mobile nav*/} + {/* mobile nav - slide from right (outside header for full page overlay) */} {isMenuOpen && ( -
- +
+ )} - + ) } \ No newline at end of file