diff --git a/components/headerComponents/GitHubButton.tsx b/components/headerComponents/GitHubButton.tsx new file mode 100644 index 0000000..23785ac --- /dev/null +++ b/components/headerComponents/GitHubButton.tsx @@ -0,0 +1,20 @@ +"use client" + +import { Button } from "@/components/ui/button" +import { Github } from "lucide-react" +import Link from "next/link" + +interface GitHubButtonProps { + repoUrl?: string +} + +export default function GitHubButton({ repoUrl = "https://github.com/lumina-rocks/lumina" }: GitHubButtonProps) { + return ( + + + + ) +} + diff --git a/components/headerComponents/TopNavigation.tsx b/components/headerComponents/TopNavigation.tsx index 74fcc26..74d2c9f 100644 --- a/components/headerComponents/TopNavigation.tsx +++ b/components/headerComponents/TopNavigation.tsx @@ -1,22 +1,22 @@ -"use client"; +"use client" -import { siteConfig } from "@/config/site"; -import { useEffect, useState } from "react"; -import { TopNavigationItems } from "./TopNavigationItems"; -import { DropdownThemeMode } from "./DropdownThemeMode"; -import LoginButton from "./LoginButton"; -import { Button } from "../ui/button"; -import { AvatarDropdown } from "./AvatarDropdown"; -import RegisterButton from "./RegisterButton"; +import { siteConfig } from "@/config/site" +import { useEffect, useState } from "react" +import { TopNavigationItems } from "./TopNavigationItems" +import { DropdownThemeMode } from "./DropdownThemeMode" +import LoginButton from "./LoginButton" +import { AvatarDropdown } from "./AvatarDropdown" +import RegisterButton from "./RegisterButton" +import GitHubButton from "@/components/headerComponents/GitHubButton" export function TopNavigation() { - const [pubkey, setPubkey] = useState(null); - const [mounted, setMounted] = useState(false); + const [pubkey, setPubkey] = useState(null) + const [mounted, setMounted] = useState(false) useEffect(() => { - setMounted(true); - setPubkey(window.localStorage.getItem('pubkey')); - }, []); + setMounted(true) + setPubkey(window.localStorage.getItem("pubkey")) + }, []) // Prevent hydration mismatch by not rendering auth-dependent content until mounted if (!mounted) { @@ -26,12 +26,13 @@ export function TopNavigation() {
- ); + ) } return ( @@ -40,6 +41,7 @@ export function TopNavigation() {
) -} \ No newline at end of file +} +