2023-07-31 19:06:46 +02:00
|
|
|
import { cookies } from 'next/headers'
|
2021-04-18 18:02:55 +02:00
|
|
|
import Link from 'next/link'
|
|
|
|
import Image from 'next/image'
|
2021-04-18 01:56:23 +02:00
|
|
|
|
2023-07-31 19:06:46 +02:00
|
|
|
import { getI18n } from '@/i18n/i18n.server'
|
|
|
|
|
|
|
|
import { Locales } from './Locales'
|
2021-05-08 19:52:04 +02:00
|
|
|
import { SwitchTheme } from './SwitchTheme'
|
2021-04-18 01:56:23 +02:00
|
|
|
|
2022-07-28 23:01:19 +02:00
|
|
|
export interface HeaderProps {
|
2023-07-31 19:06:46 +02:00
|
|
|
showLocale?: boolean
|
2022-07-28 23:01:19 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export const Header: React.FC<HeaderProps> = (props) => {
|
2023-07-31 19:06:46 +02:00
|
|
|
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'>
|
2021-05-08 19:52:04 +02:00
|
|
|
<Link href='/'>
|
2022-10-27 19:13:29 +02:00
|
|
|
<div className='flex items-center justify-center'>
|
|
|
|
<Image
|
|
|
|
quality={100}
|
|
|
|
width={60}
|
|
|
|
height={60}
|
2023-05-31 20:09:08 +02:00
|
|
|
src='/images/icon_small.png'
|
2023-05-30 21:51:27 +02:00
|
|
|
alt='Théo LUDWIG'
|
2023-05-21 18:21:46 +02:00
|
|
|
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'>
|
2023-05-30 21:51:27 +02:00
|
|
|
Théo LUDWIG
|
2022-10-27 19:13:29 +02:00
|
|
|
</strong>
|
|
|
|
</div>
|
2021-05-08 19:52:04 +02:00
|
|
|
</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>
|
2023-07-31 19:06:46 +02:00
|
|
|
{showLocale ? (
|
|
|
|
<Locales
|
|
|
|
currentLocale={i18n.locale}
|
|
|
|
cookiesStore={cookiesStore.toString()}
|
|
|
|
/>
|
|
|
|
) : null}
|
2023-08-01 14:11:46 +02:00
|
|
|
<SwitchTheme cookiesStore={cookiesStore.toString()} />
|
2021-05-08 19:52:04 +02:00
|
|
|
</div>
|
|
|
|
</header>
|
2021-04-18 01:56:23 +02:00
|
|
|
)
|
|
|
|
}
|