/
githubmirror
/
immutable-js
Обзор
Документация
Войти
/
githubmirror
/
immutable-js
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
website/src/sidebar/SidebarMainLink.tsx
47 строк
917 B
Julien Deniau
sort all imports via eslint
12 июн 2025, 01:23
12 июн 2025, 01:23
67a4fa9
Код
Авторство
О чём код?
import Link from 'next/link'; import { usePathname } from 'next/navigation'; import { JSX } from 'react'; import { ArrowDown } from '../ArrowDown'; type Props = { label: string; url: string; canBeFocused: boolean; isActive: boolean; onClick: () => void; }; export default function SidebarMainLink({ label, url, canBeFocused, isActive, onClick, }: Props): JSX.Element { const pathname = usePathname(); const isCurrent = pathname === url; return ( <div className={`sideBar__Link ${isActive ? 'sideBar__Link--active' : ''}`}> <Link href={url} onClick={(e) => { if (isCurrent) { e.preventDefault(); onClick(); } }} > {label} {isActive && canBeFocused && ( <> {' '} <ArrowDown isActive={isActive} /> </> )} </Link> </div> ); }