// Hooks import { useContext } from 'react' import { useTranslation } from 'next-i18next' // Context import { ModalContext } from 'shared/context/modal-context.mjs' // Components import { I18nIcon, SearchIcon, ThemeIcon, MenuIcon, DesignIcon, CodeIcon, DocsIcon, WrenchIcon, FreeSewingIcon, HeartIcon, } from 'shared/components/icons.mjs' import { HeaderWrapper } from 'shared/components/wrappers/header.mjs' import { ModalThemePicker, ns as themeNs } from 'shared/components/modal/theme-picker.mjs' import { ModalMenu } from 'site/components/navigation/modal-menu.mjs' import { NavButton, NavSpacer, colors } from 'shared/components/header.mjs' export const ns = ['common', 'header', 'sections', ...themeNs] const NavIcons = ({ setModal, slug }) => { const { t } = useTranslation(['header']) const iconSize = 'h-6 w-6 lg:h-12 lg:w-12' return ( <> setModal()} label={t('header:menu')} color={colors[0]} > setModal()} label={t('header:theme')} color={colors[8]} > > ) } export const Header = ({ show = true, // Whether or not to show the header slug, // Slug of the current page }) => { const { setModal } = useContext(ModalContext) || {} const headerIcons = return show ? ( {/* Non-mobile content */} {headerIcons} {/* Mobile content */} {headerIcons} ) : null }