/
githubmirror
/
marktext
Обзор
Документация
Войти
/
githubmirror
/
marktext
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/website/src/components/Nav.tsx
49 строк
1 KB
Ran Luo
refactor(website): simplify landing page (helpers, types, data-driven blocks) (#4350)
02 июн 2026, 19:38
Не верифицирован
02 июн 2026, 19:38
1c7058a
Код
Авторство
О чём код?
'use client' import { useRef } from 'react' import Link from 'next/link' import { DOWNLOAD } from '@/lib/downloads' import { EXT_LINK } from '@/lib/links' import { SECTIONS, hash } from '@/lib/sections' import { useToggleTheme } from '@/hooks/useTheme' import { useNavShrink } from '@/hooks/useNavShrink' import Brand from './Brand' import { GitHubIcon, MoonIcon, SunIcon } from './Icons' export default function Nav() { const navRef = useRef<HTMLElement>(null) const toggle = useToggleTheme() useNavShrink(navRef) return ( <nav className="nav" id="nav" ref={navRef}> <Brand /> <div className="nav-links"> <a href={hash(SECTIONS.preview)}>Features</a> <a href={hash(SECTIONS.themes)}>Themes</a> <a href={hash(SECTIONS.extensions)}>Markdown</a> <Link href="/docs">Docs</Link> <a href={hash(SECTIONS.support)}>Support</a> </div> <div className="nav-right"> <button type="button" className="icon-btn" id="themeToggle" aria-label="Toggle theme" title="Toggle theme" onClick={toggle} > <MoonIcon className="theme-moon" /> <SunIcon className="theme-sun" /> </button> <a className="icon-btn" href={DOWNLOAD.repo} {...EXT_LINK} aria-label="GitHub"> <GitHubIcon /> </a> <a className="btn btn-primary" href={DOWNLOAD.releases} {...EXT_LINK}> Download </a> </div> </nav> ) }