Skip to content

Commit 4357fe1

Browse files
authored
Merge pull request #2977 from gets0ul/issue-2836
Fix for Issue #2836 - Read submenu link on hover
2 parents 9d5e4e0 + 033b225 commit 4357fe1

File tree

3 files changed

+10
-5
lines changed
  • __tests__/shared/components/TopcoderHeader/desktop/SubMenu
  • src/shared/components/TopcoderHeader/desktop/SubMenu/Item

3 files changed

+10
-5
lines changed

__tests__/shared/components/TopcoderHeader/desktop/SubMenu/Item.jsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ test('Matches shallow shapshot', () => {
88
renderer.render((
99
<Item
1010
currentSubMenuTitle="title"
11-
icon="icon url"
11+
icon={<div />}
1212
title="title"
1313
link="menu url"
1414
/>
@@ -18,7 +18,7 @@ test('Matches shallow shapshot', () => {
1818
renderer.render((
1919
<Item
2020
currentSubMenuTitle="another title"
21-
icon="icon url"
21+
icon={<div />}
2222
title="title"
2323
link="menu url"
2424
/>

__tests__/shared/components/TopcoderHeader/desktop/SubMenu/__snapshots__/Item.jsx.snap

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ exports[`Matches shallow shapshot 1`] = `
1111
openNewTab={false}
1212
to="menu url"
1313
>
14-
icon url
14+
<div
15+
aria-label="title"
16+
/>
1517
title
1618
</Link>
1719
</li>
@@ -28,7 +30,9 @@ exports[`Matches shallow shapshot 2`] = `
2830
openNewTab={false}
2931
to="menu url"
3032
>
31-
icon url
33+
<div
34+
aria-label="title"
35+
/>
3236
title
3337
</Link>
3438
</li>

src/shared/components/TopcoderHeader/desktop/SubMenu/Item/index.jsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ export default function Item({
1818
}) {
1919
let styleName = 'item';
2020
if (currentSubMenuTitle === title) styleName += ' current';
21+
const accessibleIcon = React.cloneElement(icon, { 'aria-label': `${title}` });
2122
return (
2223
/* TODO: Should be done in a clean way, witout disabling eslint rules. */
2324
/* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role */
@@ -29,7 +30,7 @@ export default function Item({
2930
tabIndex={0}
3031
>
3132
<Link enforceA={enforceA} openNewTab={openNewTab} to={link}>
32-
{icon}
33+
{accessibleIcon}
3334
{title}
3435
</Link>
3536
</li>

0 commit comments

Comments
 (0)