Skip to content

Commit

Permalink
fix: add forwardRef
Browse files Browse the repository at this point in the history
  • Loading branch information
asabotovich committed Aug 14, 2024
1 parent 6d85853 commit bff4730
Showing 1 changed file with 17 additions and 22 deletions.
39 changes: 17 additions & 22 deletions src/harmony/NavigationSidebar/NavigationItem.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import React, { forwardRef, HTMLAttributes } from 'react';
import React, { FC, HTMLAttributes } from 'react';
import cn from 'classnames';

import { ListViewItem } from '../ListView/ListView';
import { Link } from '../Link/Link';
import { MenuItem } from '../MenuItem/MenuItem';

import s from './NavigationSidebar.module.css';
Expand All @@ -12,24 +11,20 @@ interface NavigationItemProps extends HTMLAttributes<HTMLDivElement> {
selected?: boolean;
}

export const NavigationItem = forwardRef<HTMLAnchorElement, NavigationItemProps>(
({ selected, href, children, ...rest }, ref) => (
<ListViewItem
value={href}
renderItem={({ hovered, active, ...props }) => (
<Link view="primary" className={s.NavigationItemLink} href={href} ref={ref}>
<MenuItem
hovered={active || hovered}
className={cn({
[s.MenuItem_active]: selected,
})}
{...props}
{...rest}
>
{children}
</MenuItem>
</Link>
)}
/>
),
export const NavigationItem: FC<NavigationItemProps> = ({ selected, href, children, ...rest }) => (
<ListViewItem
value={href}
renderItem={({ hovered, active, ...props }) => (
<MenuItem
hovered={active || hovered}
className={cn({
[s.MenuItem_active]: selected,
})}
{...props}
{...rest}
>
{children}
</MenuItem>
)}
/>
);

0 comments on commit bff4730

Please sign in to comment.