1
1
mirror of https://github.com/theoludwig/theoludwig.git synced 2024-09-19 22:15:53 +02:00
.profile/components/Header/index.tsx

58 lines
1.6 KiB
TypeScript
Raw Normal View History

import { cookies } from 'next/headers'
import Link from 'next/link'
import Image from 'next/image'
2021-04-18 01:56:23 +02:00
import { getI18n } from '@/i18n/i18n.server'
import { Locales } from './Locales'
import { SwitchTheme } from './SwitchTheme'
2021-04-18 01:56:23 +02:00
2022-07-28 23:01:19 +02:00
export interface HeaderProps {
showLocale?: boolean
2022-07-28 23:01:19 +02:00
}
export const Header: React.FC<HeaderProps> = (props) => {
const { showLocale = false } = props
const cookiesStore = cookies()
const i18n = getI18n()
2022-07-28 23:01:19 +02:00
2021-04-18 01:56:23 +02:00
return (
2021-12-04 15:52:51 +01:00
<header className='sticky top-0 z-50 flex w-full justify-between border-b-2 border-gray-600 bg-white px-6 py-2 dark:border-gray-400 dark:bg-black'>
<Link href='/'>
2022-10-27 19:13:29 +02:00
<div className='flex items-center justify-center'>
<Image
quality={100}
width={60}
height={60}
src='/images/icon_small.png'
alt='Théo LUDWIG'
priority
2022-10-27 19:13:29 +02:00
/>
<strong className='ml-1 hidden font-headline font-semibold text-yellow dark:text-yellow-dark xs:block'>
Théo LUDWIG
2022-10-27 19:13:29 +02:00
</strong>
</div>
</Link>
<div className='flex justify-between'>
2021-12-04 15:52:51 +01:00
<div className='flex flex-col items-center justify-center px-6'>
2022-10-27 19:13:29 +02:00
<Link
href='/blog'
data-cy='header-blog-link'
className='text-yellow hover:underline dark:text-yellow-dark'
>
Blog
2021-11-08 15:10:26 +01:00
</Link>
</div>
{showLocale ? (
<Locales
currentLocale={i18n.locale}
cookiesStore={cookiesStore.toString()}
/>
) : null}
<SwitchTheme />
</div>
</header>
2021-04-18 01:56:23 +02:00
)
}