import { Alert, AppShell, Avatar, Box, Flex, Footer, Group, Header, Menu, NavLink, Navbar, Paper, Text, TextInput, ThemeIcon, UnstyledButton, } from '@mantine/core'; import { IconAdjustmentsAlt, IconAlertTriangle, IconBook2, IconBrandDiscord, IconBrandGithub, IconDashboard, IconGitFork, IconHome, IconLogout, IconMailForward, IconQuestionMark, IconSun, IconUser, IconUserSearch, } from '@tabler/icons-react'; import { signOut } from 'next-auth/react'; import { useTranslation } from 'next-i18next'; import Image from 'next/image'; import Link from 'next/link'; import { ReactNode } from 'react'; import { usePackageAttributesStore } from '~/tools/client/zustands/usePackageAttributesStore'; import { Logo } from '../Logo'; interface MainLayoutProps { children: ReactNode; } export const MainLayout = ({ children }: MainLayoutProps) => { const { t } = useTranslation(); const { attributes } = usePackageAttributesStore(); return ( } label="Home" component={Link} href="/admin/users" /> } > } label="Manage" component={Link} href="/admin/users" /> } label="Invites" component={Link} href="/admin/users/invites" /> } > } label="Documentation" /> } label="Report an issue / bug" /> } label="Ask a question" /> } label="Contribute" /> } header={
}>Switch theme }>View Profile }>Default Dashboard } color="red" onClick={() => signOut()} > Logout
} footer={ } > {children}
); };