Files

73 lines
2.4 KiB
TypeScript
Raw Permalink Normal View History

2021-03-16 01:33:19 +01:00
import { FC } from "react";
import Head from "next/head";
import NextLink from "next/link";
import { Flex, HStack, IconButton, Link, Text, VStack, useColorModeValue } from "@chakra-ui/react";
2021-03-16 01:33:19 +01:00
import { FaGithub } from "react-icons/fa";
import { FiSettings } from "react-icons/fi";
2021-03-16 01:33:19 +01:00
import Image from "next/image";
import { ColorModeToggler } from ".";
2021-03-16 01:33:19 +01:00
type Props = {
[key: string]: any
};
const Header: FC<Props> = (props) => (
<>
<Head>
<link rel="prefetch" href="/banner_light.svg" />
<link rel="prefetch" href="/banner_dark.svg" />
</Head>
<Flex
as="header"
px={1}
py={3}
justify="space-around"
align="center"
w="full"
{...props}
>
<NextLink href="/" passHref={true}>
<Link display="flex" alignItems="center">
<VStack spacing={0} align="flex-start">
<Image
src={useColorModeValue("/banner_light.svg", "/banner_dark.svg")}
alt="Logo"
width={110}
height={64}
/>
<Text fontSize="xs" fontStyle="italic" opacity={0.7} ml={1}>
+ AI enhancements
</Text>
</VStack>
</Link>
</NextLink>
<HStack spacing={3}>
<ColorModeToggler
variant={useColorModeValue("outline", "solid")}
/>
<NextLink href="/admin" passHref={true}>
<IconButton
as={Link}
aria-label="Admin settings"
icon={<FiSettings />}
colorScheme="lingva"
variant={useColorModeValue("outline", "solid")}
/>
</NextLink>
<IconButton
as={Link}
href="https://github.com/thedaviddelta/lingva-translate"
isExternal={true}
aria-label="GitHub"
icon={<FaGithub />}
colorScheme="lingva"
variant={useColorModeValue("outline", "solid")}
/>
</HStack>
</Flex>
</>
2021-03-16 01:33:19 +01:00
);
export default Header;