diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx index 34adef22..7b8029fc 100644 --- a/src/components/Navbar.tsx +++ b/src/components/Navbar.tsx @@ -26,7 +26,7 @@ import { Unauthenticated, AuthLoading, } from '~/components/AuthComponents' -import { libraries } from '~/libraries' +import { libraries, findLibrary } from '~/libraries' import { useCapabilities } from '~/hooks/useCapabilities' import { GithubIcon } from '~/components/icons/GithubIcon' import { DiscordIcon } from '~/components/icons/DiscordIcon' @@ -39,9 +39,15 @@ export function Navbar({ children }: { children: React.ReactNode }) { const matches = useMatches() const capabilities = useCapabilities() - const Title = - [...matches].reverse().find((m) => m.staticData.Title)?.staticData.Title ?? - null + const { Title, library } = React.useMemo(() => { + const match = [...matches].reverse().find((m) => m.staticData.Title) + const libraryId = match?.params?.libraryId + + return { + Title: match?.staticData.Title ?? null, + library: libraryId ? findLibrary(libraryId) : null, + } + }, [matches]) const canAdmin = capabilities.includes('admin') @@ -143,34 +149,30 @@ export function Navbar({ children }: { children: React.ReactNode }) { ) const socialLinks = ( -
+
- + + + + - + - + - - + +
)